Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Kümenin her düğümünde Jetpack gerekir. Azure CycleCloud, bir kümede düğüm olmak için sağladığınız her sanal makineye jetpack'i otomatik olarak yükler. Jetpack üç ana işlev sağlar:
- Düğüm Yapılandırması - CycleCloud, sağlanan vm'nin çalışma kümesi düğümünde yapılandırmasını otomatikleştirmek için betikleri ve Chef'i kullanır. Chef istemcisi ve VM yapılandırması için gerekli kaynaklar Jetpack'e eklenir.
- Dağıtılmış Eşitleme - Jetpack, düğüm ile CycleCloud uygulama sunucusu arasındaki iletişimi yönetir. Bu yönetim, CycleCloud'un sağlama VM'lerinin durumunu izlemesine ve kümedeki birden çok düğümün düzenlemesini eşitlemesine olanak tanır.
- HealthCheck - Jetpack, iyi durumda olmayan VM'leri sonlandırabilmesi için VM'lerin sistem durumunu belirlemek için HealthCheck kullanır.
Jetpack Yüklemesi
CycleCloud kullanarak bir kümeyi ilk kez başlattığınızda Jetpack yükleyicisi Azure Depolama Hesabınızda önbelleğe alınır. Küme VM'leri hazırlandıkça, önyükleme işlemi sırasında özel bir betik uzantısı yürütülür. Bu uzantı, Jetpack yükleyicisini Azure Depolama önbelleğinizden indirir ve vm'ye yükler.
Jetpack yükleyicisi:
- Jetpack dosyalarını tek bir dizin ağacına çıkarır.
- Windows: C:\cycle\jetpack
- Linux: /opt/cycle/Jetpack
- Sistemi VM'yi küme düğümü olarak yapılandıran başlangıç betikleri oluşturur.
- HealthCheck hizmetini yükler
-
Jetpack Komut Satırı Aracı'nı şu şekilde yükler:
- Windows: C:\cycle\jetpack\bin\jetpack
- Linux: /opt/cycle/jetpack/bin/jetpack
- Linux'ta udev kuralları oluşturur
- Ortam değişkenini ayarlar
CYCLECLOUD_HOME
Uyarı
Jetpack görüntüye önceden yüklenmişse özel betik uzantısı Jetpack'i yeniden yüklemez . Bunun yerine, düğümün CycleCloud bağlantısını doğrulayan bir başlatma adımı çalıştırır ve önce healthcheck
ve jetpackd
hizmetlerini başlatır, sonra düğümü yapılandırmaya devam eder.
Jetpack Alt Dizinleri
Dizin | Açıklama |
---|---|
bin |
Yararlı ikili dosyalar ve betikler. |
config |
Kullanıcı tanımlı ve küme tanımlı yapılandırma dosyaları ve betikleri. |
logs |
Bir kümeye katılarak ve düğümü birleştirerek oluşturulan günlükler. Özellikle ilgi çeken, Chef tariflerinin birleştirilme sonuçlarını içeren chef-client.log dosyasıdır. |
run |
Sistem tarafından oluşturulan çalışma zamanı dosyaları. Bu dosyalara doğrudan erişmenizi önermeyiz. |
system |
İç dosyalar. Bu dizindeki hiçbir dosyayı doğrudan kullanmanızı önermiyoruz çünkü bunlar sürümden sürüme önemli ölçüde değişebilir. |
Sağlık Kontrolü
HealthCheck hizmeti, bir VM'nin küme düğümü olarak geçerli kullanılabilirliğini belirlemek için kullanıcı tanımlı betikleri yürütür. Daha fazla bilgi için HealthCheck belgelerine bakın.
Jetpack Komut Satırı Aracı
Jetpack komut satırı aracı, geçerli VM'yi işlemek ve Azure CycleCloud ile etkileşim kurmak için kullanışlı bir alt komut kümesi sağlar.
Komut | Açıklama |
---|---|
jetpack autoscale |
Bu düğümün ait olduğu kümeyi otomatik olarak ölçekleyin. |
jetpack config |
Bir yapılandırma değeri alın. |
jetpack converge |
Chef ile sistem yakınsaması gerçekleştirin. |
jetpack download |
Azure Depolama'daki bir projeden blob kaynağı indirin. |
jetpack keepalive |
HealthCheck Hizmeti tarafından sistem sonlandırmayı geciktirme. |
jetpack log |
CycleCloud kümesi kullanıcı arabiriminde bir ileti günlüğe kaydetme. |
jetpack run_on_shutdown |
Düğüm sonlandırmadan önce çağrılacak bir betik ekleyin. |
jetpack send |
CycleCloud sunucusuna rastgele bir AMQP iletisi gönderin. |
jetpack shutdown |
CycleCloud tarafından VM'nin kapatılmasını isteyin. |
jetpack test |
VM'ye atanan projelerle ilişkili testleri çalıştırın. |
jetpack users |
CycleCloud'un bu VM'de yönettiği kullanıcıları listeleyin. |
jetpack report_issue |
VM'deki log dosyalarını Azure Depolama'ya arşivler |
jetpack otomatik ölçeklendirme
Düğümün ait olduğu küme için otomatik ölçeklendirme hedeflerini ayarlamak için kullanın jetpack autoscale
. Kümeleri çekirdeklere, örnek sayısına veya özel tanımlara göre ölçeklendikleyebilirsiniz.
100 çekirdeğe ölçeklendirmek için:
jetpack autoscale --corecount=100
'gpu' nodearray'sini beş düğüme ölçeklendirmek için:
jetpack autoscale --instancecount 5 --name=gpu
Otomatik ölçeklendirmeyi özelleştirmek için, diske ölçeklendirmek istediğiniz nodearray tanımını içeren bir JSON dosyası yazın. 100 çekirdeğe göre ölçeklendirmek için:
[
{
"Name": "execute",
"TargetCoreCount": 100
}
]
jetpack autoscale --file=custom-autoscale.json
jetpack yapılandırması
CycleCloud'un vm'ye geçirdiği bilgileri getirmek için kullanın jetpack config
. Şu durum ortaya çıkar:
- Ohai aracılığıyla sağlanan tüm sistem özellikleri
- VM'nin Azure meta verilerinin bir alt kümesi
- ana CycleCloud kümesi hakkında bilgi.
jetpack birleşme
jetpack converge
komutu düğümle ilişkili tüm CycleCloud projelerini indirir ve düğüm için tüm Chef tariflerini ve cluster-init betiklerini çalıştıran bir Chef yakınsama işlemi başlatır.
jetpack indirme
jetpack download
komutu, bir projeyle düğüme yüklediğiniz blobu indirir. Blob'un ait olduğu projeyi belirtmeniz gerekir.
example-project
projesinin bir parçası olarak yüklediğiniz blob big-file.zip'ı geçerli dizine indirmek için:
jetpack download --project example-project big-file.zip .
jetpack devamlı bağlantı
jetpack keepalive
komutu, başarısız bir HealthCheck nedeniyle VM'nin sonlandırılmasına gecikmek için HealthCheck hizmetiyle etkileşim kurar. Gecikmeyi sabit bir süreye veya süresiz olarak ayarlayabilirsiniz. Varsayılan olarak, komut sonlandırmayı bir saat geciktirmektedir.
Sistem sonlandırmayı bir saat geciktirmek için:
jetpack keepalive
Sistem sonlandırmayı altı saat geciktirmek için:
jetpack keepalive 6h
HealthCheck hizmetini tamamen devre dışı bırakmak, yani sonlandırmayı süresiz olarak geciktirmek için:
jetpack keepalive forever
Uyarı
Windows VM'lerinde forever
HealthCheck için yalnızca bu seçenek kullanılabilir.
jetpack günlüğü
jetpack log
CycleCloud'a geri bir günlük iletisi gönderir. İleti, uygulama sunucusu günlüğünde (genellikle /opt/cycle_server/cycle_server.log), ana olay günlüğünde ve Küme kullanıcı arabirimi sayfasında görünür.
Her iletinin iki özelliği vardır: level
ve priority
.
level
özelliği ileti türünü gösterir. Geçerli düzeyler : info
, warn
ve error
. Düzey, belirli bir iletinin önemini göstermez. Örneğin, bazı hatalar önemsizdir ve bazı bilgilendirme iletileri kritik önem taşır.
Öncelik, iletinin önemini gösterir. Geçerli öncelik değerleri 'düşük', 'orta' ve 'yüksek' değerleridir. Sayfayı düşük öncelikli iletilerle dolup taşmasını önlemek için Küme Kullanıcı Arabirimi sayfasında yalnızca orta veya daha yüksek önceliğe sahip iletiler görüntülenir.
Küme kullanıcı arabirimi sayfasında görünen bir bilgi günlüğü iletisi göndermek için:
jetpack log 'system is now ready'
Küme kullanıcı arabirimi sayfasında görünmesini istemediğiniz düşük öncelikli bir günlük iletisi göndermek için:
jetpack log 'system is now ready' --priority low
Varsayılan olarak, hata düzeyine sahip iletiler yüksek önceliğe sahiptir. Hata iletisi göndermek için:
jetpack log 'the machine cannot process jobs' --level error
Önemsiz bir hata iletisi göndermek için:
jetpack log 'the machine cannot process jobs' --level error --priority low
jetpack çalıştır_kapanışta
Komut, jetpack run_on_shutdown
düğüm sonlandırmadan önce çağrı yapmak için bir bash betiği kaydeder.
komutu betiğin mutlak yolunu bağımsız değişken olarak alır.
Azure düğümü sonlandırdığında ve Sonlandırma Bildirimleri etkinleştirildiğinde Jetpack sonlandırma bildirimi alır. Düğüm kapanmadan önce betiği çalıştırmayı dener.
Düğümlerin,Sonlandırma Bildirimleri'ni etkinleştirmesirun_on_shutdown
etkinleştirmek için gerekir.
jetpack run_on_shutdown /tmp/example.sh
Bu komut Windows düğümleri için desteklenmez.
jetpack gönder
jetpack send
CycleCloud'a bir AMQP iletisi gönderir. CycleCloud için eklenti geliştirmediğiniz sürece önermediğimiz gelişmiş bir komut.
Belirtilen AMQP yönlendirme anahtarlarıyla rastgele dizeler veya dosyalar gönderebilirsiniz.
jetpack kapatma işlemi
CycleCloud'un düğümü sonlandırmasını istemek için kullanın jetpack shutdown
. Kapatma isteğinin nedenini (boşta veya sağlıksız) ve düğümün nasıl sonlandırılacağını (sonlandırma veya serbest bırakma) belirtmek için komuta seçenekleri geçirebilirsiniz.
İyi durumda olmayan bir düğümü kapatmak için aşağıdaki komutu kullanın:
jetpack shutdown --unhealthy
Düğümü serbest bırakmak için:
jetpack shutdown --deallocate
jetpack testi
jetpack test
kullanın, düğüme atanan projelere dahil edilen herhangi bir testi çalıştırmak için. komutu sonuçları stdout'a yazdırır.
jetpack kullanıcıları
jetpack users
CycleCloud'un düğümde yönettiği kullanıcıları listeler. Kullanıcılar kümeye atanıp kaldırıldıkçe bu liste zaman içinde değişebilir.
Düğüme atanan kullanıcıların kullanıcı dostu bir çıktısını almak için:
$ jetpack users
Username: test-user
Full Name: Test User
UID: 10201
Is Admin: True
Is Owner: True
Betik kullanımı kolay JSON çıktısı almak için:
$ jetpack users --json
[
{
"fullName": "Test User",
"isAdmin": true,
"isOwner": true,
"name": "test-user",
"publicKeys": [
"ssh-rsa public-key-goes-here\n"
],
"uid": 10201
}
]
jetpack sorun bildir
jetpack report_issue
günlük dizinlerini VM'den arşivleyerek isteğe bağlı olarak Azure Depolama'ya yükler ve dış erişim için imzalı bir URL oluşturur. Komut, düğümdeki Locker tarafından başvurulan Azure Depolama hesabına günlükleri yükler. Azure Depolama'da bir arşiv imzaladığınızda, sonuçta elde edilen SAS belirtecinin 30 gün boyunca salt okunur erişimi olur.
Kullanım:
$ jetpack report_issue [LOG_PATH] [--upload/--no-upload] [--sign/--no-sign]
Varsayılan Jetpack günlüklerini ($JETPACK_HOME/logs) arşivleyip karşıya yüklemek ve imzalamak için:
$ jetpack report_issue
Logs can be found at: https://testaccount.blob.core.windows.net/cyclecloud/issues/TestCluster-execute-1-77777964-8b74-420d-ad44-094edf7695f2.zip?sv=2017-11-09&rsct=binary&sig=jBJUlYo10lRq0eW94I%2B6syzYVmgo1qcTFUc35D/q0Tg%3D&se=2020-12-04T15%3A15%3A00Z&spr=https&rscd=disposition%3Dfile%3B%20attachment&sp=r&sr=b
Signed URL will expire on: 2020-12-04T15:15:00Z
Varsayılan olmayan bir günlük dizinini arşivlemek ve karşıya yüklemek, ancak imzalamamak için:
$ jetpack report_issue /var/log/azure --no-sign
Logs can be found at: https://testaccount.blob.core.windows.net/cyclecloud/issues/TestCluster-execute-1-d67fe991-1dac-4644-9af7-50c835726f5e.zip
Yerel VM'de günlükleri arşivle:
$ jetpack report_issue --no-upload
Logs can be found at: /tmp/tmp4nscw705/TestCluster-execute-1-4249e973-3d87-4b14-94ed-6856a5267972.zip