Azure Service Fabric CLI'sı

Azure Service Fabric komut satırı arabirimi (CLI) Service Fabric varlıklarıyla etkileşimde bulunmak ve bunları yönetmek için kullanılan bir komut satırı yardımcı programıdır. Service Fabric CLI'sı, Windows veya Linux kümeleriyle kullanılabilir. Service Fabric CLI'sı Python'ın desteklendiği tüm platformlarda çalışır.

Önemli

Service Fabric ile etkileşim kurmak için kullanılan iki CLI yardımcı programı vardır. Azure CLI, Azure'da barındırılan Service Fabric kümesi gibi Azure kaynaklarını yönetmek için kullanılır. Service Fabric CLI, Service Fabric kümesine (barındırıldığı yerden bağımsız olarak) doğrudan bağlanarak kümeyi, uygulamaları ve hizmetleri yönetmek için kullanılır.

Önkoşullar

Yüklemeden önce ortamınızda Python ve pip uygulamalarının yüklü olduğundan emin olun. Daha fazla bilgi için pip hızlı başlangıç belgelerine ve resmi Python yükleme belgelerine bakın.

CLI, Python 2.7 ve 3.6+ sürümlerini destekler ve Python 3.x önerilir.

Service Fabric hedef çalışma zamanı

Service Fabric CLI, Service Fabric SDK'sının en son çalışma zamanı sürümünü destekleyecek şekilde tasarlanmıştır. Yüklemeniz gereken CLI sürümünü belirlemek için aşağıdaki tabloyu kullanın:

CLI sürümü desteklenen çalışma zamanı sürümü
En Son (~=10) En Son (~=7.1)
9.0.0 7.1
8.0.0 6.5
7.1.0 6.4
6.0.0 6.3
5.0.0 6.2
4.0.0 6.1
3.0.0 6,0
1.1.0 5.6, 5.7

İsteğe bağlı olarak pip install komutuna ==<version> ekleyerek yüklenecek hedef CLI sürümünü belirtebilirsiniz. Örneğin 1.1.0 sürümü için söz dizimi şu şekilde olacaktır:

pip install -I sfctl==1.1.0

Gerekli olduğunda aşağıdaki pip install komutunu önceden verilen komutla değiştirin.

Service Fabric CLI sürümleri hakkında daha fazla bilgi için bkz. GitHub belgeleri.

pip, Python ve Service Fabric CLI'sını yükleme

pip ve Python'u platformunuza yüklemek için kullanabileceğiniz birçok yol vardır. Çok kullanılan işletim sistemlerinde Python 3 ve pip uygulamalarını hızlıca kurmak için aşağıdaki adımlardan faydalanabilirsiniz.

Windows

Windows 10, Windows Server 2016 ve Windows Server 2012 R2 için standart resmi yükleme talimatlarını kullanın. Python yükleyici pip'i de varsayılan olarak yükler.

  1. Resmi Python indirmeleri sayfasına gidin ve Python 3.x'in en son sürümünü indirin.

  2. Yükleyiciyi başlatın.

  3. İstemin en altında Python 3.x'i PATH'e ekle'yi seçin.

  4. Şimdi Yükle'yi seçin ve yüklemeyi tamamlayın.

Şimdi yeni bir komut penceresi açıp hem Python hem de pip sürümünü öğrenebilirsiniz.

python --version
pip --version

Ardından aşağıdaki komutu çalıştırarak Azure Service Fabric CLI'sını (sfctl) yükleyin ve CLI yardım sayfasını görüntüleyin:

pip install sfctl
sfctl -h

Linux için Ubuntu ve Windows alt sistemi

Service Fabric CLI'sını yüklemek için aşağıdaki komutları çalıştırın:

sudo apt-get install python3
sudo apt-get install python3-pip
pip3 install sfctl

Ardından yükleme işlemini şu şekilde test edebilirsiniz:

sfctl -h

Aşağıdakine benzer bir komut bulunamadı hatası alırsanız:

sfctl: command not found

~/.local/bin öğesine $PATH kaynağından erişim sağlandığına emin olun:

export PATH=$PATH:~/.local/bin
echo "export PATH=$PATH:~/.local/bin" >> .shellrc

Linux için Windows alt sisteminin yüklemesi hatalı klasör izinleri nedeniyle başarısız olursa yükseltilmiş izinlerle tekrar denemeniz gerekebilir:

sudo pip3 install sfctl

Red Hat Enterprise Linux 7.4 (Service Fabric önizleme desteği)

Red Hat'e Service Fabric CLI yüklemek için aşağıdaki komutları çalıştırın:

sudo yum install -y python38
sudo yum install python38-setuptools
sudo easy_install-3.4 pip
sudo pip3 install sfctl

Yüklemeyi test etmek için Linux için Ubuntu ve Windows alt sisteminde belirtilen adımlara başvurabilirsiniz

macOS

MacOS için HomeBrew paket yöneticisini kullanmanızı öneririz. HomeBrew yüklü değilse aşağıdaki komutu çalıştırarak yükleyin:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Ardından terminalden aşağıdaki komutları çalıştırarak en son Python 3.x, pip ve Service Fabric CLI'yi yükleyin:

brew install python3
pip3 install sfctl
sfctl -h

CLI söz dizimi

Komutlarda her zaman sfctl ön eki bulunur. Kullanabileceğiniz tüm komutlarla ilgili genel bilgi için sfctl -h kullanın. Tek bir komutla ilgili yardım için, sfctl <command> -h kullanın.

Komutlar, komut hedefinin fiilin veya eylemin öncesinde olduğu yinelenebilir bir yapıya sahiptir.

sfctl <object> <action>

Bu örnekte, <action> için <object> hedeftir.

Küme seçme

Herhangi bir işlem gerçekleştirmeden önce bağlantı kurulacak bir küme seçmeniz gerekir. Örneğin, testcluster.com adına sahip bir kümeyi seçip bu kümeye bağlanmak için aşağıdaki komutu çalıştırın:

Uyarı

Üretim ortamında güvenli olmayan Service Fabric kümelerini kullanmayın.

sfctl cluster select --endpoint http://testcluster.com:19080

Küme uç noktasının http veya https ön eki olmalıdır. HTTP ağ geçidi için bağlantı noktasını içermelidir. Bağlantı noktası ve adres, Service Fabric Explorer URL'si ile aynıdır.

Güvenliği bir sertifika ile sağlanan kümeler için PEM kodlu bir sertifika belirtebilirsiniz. Sertifika, tek bir dosya veya sertifika ve anahtar çifti olarak belirtilebilir. CA imzalı olmayan bir otomatik olarak imzalanan sertifika ise, CA doğrulamasını atlamak için --no-verify seçeneğini geçebilirsiniz.

sfctl cluster select --endpoint https://testsecurecluster.com:19080 --pem ./client.pem --no-verify

Daha fazla bilgi için bkz. Güvenli Azure Service Fabric kümesine bağlanma.

Temel işlemler

Küme bağlantı bilgileri birden çok Service Fabric CLI'sı oturumu arasında kalıcıdır. Service Fabric kümesini seçtikten sonra, kümede tüm Service Fabric komutlarını çalıştırabilirsiniz.

Örneğin, Service Fabric kümesinin sistem durumunu almak için aşağıdaki komutu kullanın:

sfctl cluster health

Komut şu çıktıyı verir:

{
  "aggregatedHealthState": "Ok",
  "applicationHealthStates": [
    {
      "aggregatedHealthState": "Ok",
      "name": "fabric:/System"
    }
  ],
  "healthEvents": [],
  "nodeHealthStates": [
    {
      "aggregatedHealthState": "Ok",
      "id": {
        "id": "66aa824a642124089ee474b398d06a57"
      },
      "name": "_Test_0"
    }
  ],
  "unhealthyEvaluations": []
}

İpuçları ve sorun giderme

Aşağıda bazı öneriler ve sık karşılaşılan sorunları çözmek için ipuçları verilmiştir.

Sertifikayı PFX’ten PEM biçimine dönüştürme

Service Fabric CLI’sı de PEM (.pem uzantısı) dosyaları gibi istemci tarafı sertifikalarını destekler. Windows'dan PFX dosyalarını kullanıyorsanız, söz konusu sertifikaları PEM biçimine dönüştürmelisiniz. PFX dosyasını PEM dosyasına dönüştürmek için aşağıdaki komutu kullanın:

openssl pkcs12 -in certificate.pfx -out mycert.pem -nodes

Benzer şekilde, PEM dosyasından PFX dosyasına dönüştürmek için de aşağıdaki komutu kullanabilirsiniz (burada parola sağlanmaz):

openssl  pkcs12 -export -out Certificates.pfx -inkey Certificates.pem -in Certificates.pem -passout pass:'' 

Daha fazla bilgi için bkz. OpenSSL belgeleri.

Bağlantı sorunları

Bazı işlemler aşağıdaki iletiyi oluşturabilir:

Failed to establish a new connection

Belirtilen küme uç noktasının kullanılabilir olduğunu ve dinlediğini doğrulayın. Ayrıca söz konusu konakta ve bağlantı noktasında Service Fabric Explorer Kullanıcı Arabiriminin kullanılabilir olduğunu da doğrulayın. Uç noktayı güncelleştirmek için sfctl cluster select kullanın.

Ayrıntılı günlükler

Hata ayıkladığınız veya sorun bildirdiğiniz sırada ayrıntılı günlükler çoğunlukla yararlı olur. --debug bayrağı, çıkışın ayrıntı düzeyini artırır.

Komut yardımı ve söz dizimi

Belirli bir komut veya komut grubuyla ilgili yardım almak için -h bayrağını kullanın.

sfctl application -h

Bir örnek daha:

sfctl application create -h

Service Fabric CLI’sını güncelleştirme

Service Fabric CLI’yı güncelleştirmek için aşağıdaki komutları çalıştırın (özgün yüklemenizde belirlediğiniz seçeneklere bağlı olarak pip öğesini pip3 olarak değiştirin):

pip uninstall sfctl
pip install sfctl

Sonraki adımlar