Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
U hebt Jetpack nodig op elk knooppunt van een cluster. Azure CycleCloud installeert Jetpack automatisch op elke virtuele machine die u inricht om een knooppunt in een cluster te worden. Jetpack biedt drie hoofdfuncties:
- Knooppuntconfiguratie - CycleCloud maakt gebruik van scripts en Chef om de configuratie van een ingerichte VM in een werkend clusterknooppunt te automatiseren. Een Chef-client en de benodigde resources voor de configuratie van de VIRTUELE machine worden ingesloten in Jetpack.
- Gedistribueerde synchronisatie : Jetpack beheert de communicatie tussen het knooppunt en de CycleCloud-toepassingsserver. Met dit beheer kan CycleCloud de status van de inrichtings-VM's bewaken en de indeling van meerdere knooppunten in het cluster synchroniseren.
- HealthCheck - Jetpack gebruikt HealthCheck om de status van VM's te bepalen, zodat deze beschadigde VM's kan beëindigen.
Jetpack-installatie
Het Jetpack-installatieprogramma wordt in de cache opgeslagen in uw Azure Storage-account wanneer u voor het eerst een cluster start met CycleCloud. Wanneer cluster-VM's worden ingericht, wordt een aangepaste scriptextensie uitgevoerd als onderdeel van het opstartproces. Met deze extensie wordt het Jetpack-installatieprogramma gedownload uit uw Azure Storage-cache en vervolgens op de VIRTUELE machine geïnstalleerd.
Het Jetpack-installatieprogramma:
- Het uitpakken van de Jetpack-bestanden naar één mapstructuur:
- Windows: C:\cycle\jetpack
- Linux: /opt/cycle/Jetpack
- Hiermee maakt u systeem-init-opstartscripts die een VIRTUELE machine configureren als clusterknooppunt
- Hiermee wordt de HealthCheck-service geïnstalleerd
- Installeert het Jetpack-opdrachtregelprogramma voor het volgende:
- Windows: C:\cycle\jetpack\bin\jetpack
- Linux: /opt/cycle/jetpack/bin/jetpack
- Maakt udev-regels in Linux
- Hiermee stelt u de omgevingsvariabele in
CYCLECLOUD_HOME
Notitie
Als Jetpack vooraf op de installatiekopieën is geïnstalleerd, installeert de aangepaste scriptextensie Jetpack niet opnieuw. In plaats daarvan wordt een initialisatiestap uitgevoerd waarmee de verbinding van het knooppunt met CycleCloud wordt gevalideerd en de healthcheck en jetpackd services worden gestart voordat het knooppunt wordt geconfigureerd.
Jetpack-submappen
| Adreslijst | Beschrijving |
|---|---|
bin |
Nuttige binaire bestanden en scripts. |
config |
Door de gebruiker gedefinieerde en clustergedefinieerde configuratiebestanden en -scripts. |
logs |
Logboeken die worden gegenereerd door een cluster te koppelen en het knooppunt samen te voegen. Van bijzonder belang is jetpack.log, dat de resultaten van het geconvergeerde proces bevat. |
run |
Runtimebestanden die door het systeem worden gegenereerd. U wordt aangeraden deze bestanden niet rechtstreeks te openen. |
system |
Interne bestanden. Het wordt afgeraden om bestanden in deze map rechtstreeks te gebruiken, omdat ze aanzienlijk kunnen veranderen van release naar release. |
Gezondheidscontrole
De HealthCheck-service voert door de gebruiker gedefinieerde scripts uit om de huidige levensvatbaarheid van een VIRTUELE machine te bepalen als clusterknooppunt. Zie de healthcheck-documentatie voor meer informatie.
Jetpack-opdrachtregelprogramma
Het jetpack-opdrachtregelprogramma biedt een handige set subopdrachten voor het bewerken van de huidige VM en interactie met Azure CycleCloud.
| Opdracht | Beschrijving |
|---|---|
jetpack autoscale |
Automatisch schalen van het cluster waartoe dit knooppunt behoort. |
jetpack config |
Een configuratiewaarde ophalen. |
jetpack converge |
Voer een 'converge' uit om de knooppuntconfiguratie bij te werken. |
jetpack download |
Download een blob-resource van een project in Azure Storage. |
jetpack keepalive |
Het vertragen van de beëindiging van het systeem door de HealthCheck-service. |
jetpack log |
Registreer een bericht in de CycleCloud-cluster UI. |
jetpack run_on_shutdown |
Voeg een script toe om aan te roepen voordat het knooppunt wordt beëindigd. |
jetpack send |
Verzend een willekeurig AMQP-bericht naar de CycleCloud-server. |
jetpack shutdown |
Vraag het afsluiten van de VIRTUELE machine door CycleCloud aan. |
jetpack test |
Voer tests uit die zijn gekoppeld aan projecten die zijn toegewezen aan de VIRTUELE machine. |
jetpack users |
Vermeld gebruikers die CycleCloud op deze VM beheert. |
jetpack report_issue |
Logboekbestanden van VM naar Azure Storage archiveren |
jetpack automatisch schalen
Gebruik jetpack autoscale dit om de doelen voor automatisch schalen in te stellen voor het cluster waartoe het knooppunt behoort. U kunt clusters schalen op basis van kernen, aantal exemplaren of aangepaste definities.
Schalen naar 100 kernen:
jetpack autoscale --corecount=100
Schaal de 'gpu'-nodearray naar vijf knooppunten:
jetpack autoscale --instancecount 5 --name=gpu
Als u automatische schaalaanpassing wilt aanpassen, schrijft u een JSON-bestand naar de schijf die de knooppuntmaarraydefinitie bevat die u wilt schalen. Opschalen naar 100 kernen:
[
{
"Name": "execute",
"TargetCoreCount": 100
}
]
jetpack autoscale --file=custom-autoscale.json
jetpack-configuratie
Gebruik jetpack config deze indeling om informatie op te halen die CycleCloud doorgeeft aan een virtuele machine. De volgende informatie wordt weergegeven:
- alle systeemeigenschappen beschikbaar gesteld via Ohai
- een subset van de Azure-metagegevens van de VIRTUELE machine
- informatie over het bovenliggende CycleCloud-cluster.
jetpack samenkomen
jetpack converge met de opdracht worden alle CycleCloud-projecten gedownload die zijn gekoppeld aan het knooppunt en wordt een geconvergeerd proces gestart waarmee de cluster-init-scripts voor het knooppunt worden uitgevoerd.
jetpack downloaden
jetpack download Het commando downloadt een blob die u met een project naar het knooppunt hebt geüpload. U moet het project opgeven waartoe de blob behoort.
Download de blob big-file.zip, die u als onderdeel van het example-project project hebt geüpload, naar de huidige map.
jetpack download --project example-project big-file.zip .
Jetpack keepalive
jetpack keepalive het commando interageert met de HealthCheck-service om de beëindiging van de virtuele machine te vertragen vanwege een mislukte HealthCheck. U kunt de vertraging instellen op een vaste periode of voor onbepaalde tijd. De opdracht stelt de beëindiging standaard uit voor één uur.
Systeembeëindiging met één uur vertragen:
jetpack keepalive
Systeembeëindiging met zes uur vertragen:
jetpack keepalive 6h
Om de HealthCheck-service volledig uit te schakelen, dat wil zeggen, om beëindiging voor onbepaalde tijd uit te stellen:
jetpack keepalive forever
Notitie
Alleen de forever optie is beschikbaar voor HealthCheck op Windows-VM's.
jetpack-logboek
jetpack log stuurt een logboekbericht terug naar CycleCloud. Het bericht wordt weergegeven in het toepassingsserverlogboek (meestal /opt/cycle_server/cycle_server.log), het hoofdlogboek en de pagina clustergebruikersinterface.
Elk bericht heeft twee eigenschappen: level en priority.
De level eigenschap geeft het type bericht aan. Geldige niveaus zijn info, warnen error. Het niveau geeft niet het belang van een bepaald bericht aan. Sommige fouten zijn bijvoorbeeld triviaal en sommige informatieve berichten kritiek.
Prioriteit geeft het belang van het bericht aan. Geldige prioriteitswaarden zijn 'laag', 'gemiddeld' en 'hoog'. Alleen berichten met een prioriteit van gemiddeld of hoger worden weergegeven op de pagina Clustergebruikersinterface om te voorkomen dat de pagina wordt overspoeld met berichten met een lage prioriteit.
Een informatielogboekbericht verzenden dat wordt weergegeven op de pagina clustergebruikersinterface:
jetpack log 'system is now ready'
Als u een logboekbericht met lage prioriteit wilt verzenden dat u niet wilt weergeven op de pagina Clustergebruikersinterface:
jetpack log 'system is now ready' --priority low
Berichten met een foutniveau hebben standaard een hoge prioriteit. Een foutbericht verzenden:
jetpack log 'the machine cannot process jobs' --level error
Een triviaal foutbericht verzenden:
jetpack log 'the machine cannot process jobs' --level error --priority low
jetpack "run_on_shutdown"-functie
Met de jetpack run_on_shutdown opdracht wordt een bash-script geregistreerd dat moet worden aangeroepen voordat het knooppunt wordt beëindigd.
De opdracht neemt het absolute pad naar het script als argument.
Wanneer Azure het knooppunt beëindigt en meldingen voor beëindiging zijn ingeschakeld, ontvangt Jetpack een melding van de beëindiging. Er wordt geprobeerd het script uit te voeren voordat het knooppunt wordt afgesloten.
Knooppunten moetenbeëindigingsmeldingen inschakelen om in te schakelen run_on_shutdown.
jetpack run_on_shutdown /tmp/example.sh
Deze opdracht wordt niet ondersteund voor Windows-knooppunten.
jetpack verzenden
jetpack send verzendt een AMQP-bericht naar CycleCloud. Het is een geavanceerde opdracht die we niet aanbevelen, tenzij u invoegtoepassingen voor CycleCloud ontwikkelt.
U kunt willekeurige tekenreeksen of bestanden met opgegeven AMQP-routeringssleutels verzenden.
jetpack uitschakelen
Gebruik jetpack shutdown dit om aan te vragen dat CycleCloud het knooppunt beëindigt. U kunt opties doorgeven aan de opdracht om de reden voor de afsluitaanvraag op te geven (inactief versus ongezond) en hoe u het knooppunt beëindigt (beëindigen versus dealloceren).
Gebruik de volgende opdracht om een beschadigd knooppunt af te sluiten:
jetpack shutdown --unhealthy
Om het knooppunt te dealloceren:
jetpack shutdown --deallocate
jetpacktest
Gebruik jetpack test dit om alle tests uit te voeren die zijn opgenomen in projecten die zijn toegewezen aan het knooppunt. Met de opdracht worden de resultaten afgedrukt naar stdout.
jetpack-gebruikers
jetpack users bevat de gebruikers die CycleCloud beheert op het knooppunt. Deze lijst kan na verloop van tijd worden gewijzigd wanneer gebruikers aan het cluster worden toegewezen en verwijderd.
Om een gebruiksvriendelijke afdruk te verkrijgen van de gebruikers die aan het knooppunt zijn toegewezen:
$ jetpack users
Username: test-user
Full Name: Test User
UID: 10201
Is Admin: True
Is Owner: True
Scriptvriendelijke JSON-uitvoer ophalen:
$ jetpack users --json
[
{
"fullName": "Test User",
"isAdmin": true,
"isOwner": true,
"name": "test-user",
"publicKeys": [
"ssh-rsa public-key-goes-here\n"
],
"uid": 10201
}
]
jetpack probleem_rapporteren
jetpack report_issue archiveert logboekmappen van de VM en kan deze eventueel uploaden naar Azure Storage en maakt een ondertekende URL voor externe toegang. Met de opdracht worden logboeken geüpload naar het Azure Storage-account waarnaar wordt verwezen door de Locker van het knooppunt. Wanneer u een archief in Azure Storage ondertekent, heeft het resulterende SAS-token gedurende 30 dagen alleen-lezentoegang .
Gebruik:
$ jetpack report_issue [LOG_PATH] [--upload/--no-upload] [--sign/--no-sign]
De standaard Jetpack-logboeken ($JETPACK_HOME/logs) archiveren, uploaden en ondertekenen:
$ 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
Als u een niet-standaardlogboekmap wilt archiveren, uploaden, maar niet ondertekenen:
$ 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
Logboeken archiveren op de lokale VM:
$ jetpack report_issue --no-upload
Logs can be found at: /tmp/tmp4nscw705/TestCluster-execute-1-4249e973-3d87-4b14-94ed-6856a5267972.zip