Cloud-Init
CycleCloud podporuje cloud-init jako způsob konfigurace virtuálního počítače při prvním spuštění před tím, než na virtuálním počítači dojde k jakékoli jiné konfiguraci specifické pro CycleCloud. Použití cloud-init je efektivní způsob konfigurace aspektů virtuálního počítače (jako jsou sítě, zrcadla yum/apt atd.) před instalací jakéhokoli softwaru spravovaného službou CycleCloud (plánovači HPC).
Níže je jednoduchý příklad určení skriptu Bash, který se má spustit při spuštění, pomocí atributu CloudInit
v šabloně clusteru:
[node scheduler]
CloudInit = '''#!/bin/bash
echo "cloud-init works" > /tmp/cloud-init.txt
'''
Poznámka
V šabloně clusteru je možné použít řetězce v uvozových uvozácích k určení víceřádkového řetězce, například skriptu Bash nebo YAML.
Upozornění
Ne všechny image operačního systému v podpora Azure cloud-init. Podrobnosti o tom, které image podporují cloud-init a kdy bude k dispozici širší podpora, najdete v tématu podpora cloud-init pro virtuální počítače v Azure .
Nastavení Cloud-Init pomocí uživatelského rozhraní
Uživatelské rozhraní CycleCloud podporuje úpravy cloud-init. Při vytváření nebo úpravách libovolného clusteru vám nová karta s názvem Cloud-Init umožní upravit skript cloud-init pro každý uzel v clusteru. Editor v uživatelském rozhraní CycleCloudu povolí jakýkoli textový vstup. Zvýraznění syntaxe je povolené pro skripty Python, Shell nebo YAML.
řazení a zpracování chyb Cloud-Init
V případě zadaných uzlů CycleCloud zřídí CycleCloud virtuální počítač a před provedenímCloudInit
jakékoli další konfigurace počká na dokončení cloud-init. Pokud CloudInit
je na uzlu zadaný parametr a CycleCloud nezjistí podporu cloud-init pro operační systém, uzel přejde do chybového stavu a důvod se předá do CycleCloudu.
CloudInit
Pokud se skript nepodaří spustit (např. kvůli chybě skriptování nebo chybě syntaxe), uzel přejde do chybového stavu a chyba nahlášená cloud-init se předá do CycleCloudu.
Jakmile se cloud-init dokončí bez chyb, bude CycleCloud pokračovat v konfiguraci virtuálního počítače obvyklým způsobem.
Důležité
CycleCloud nebude automaticky slučovat skripty cloud-init. Pokud určuje [node defaults]
cloud-init i uzel dědící z výchozích nastavení, skript cloud-init v [node defaults]
souboru se přepíše. Ruční slučování skriptů se navrhuje, když je potřeba kód sdílet. Případně je možné použít formát zahrnout soubor user-data k zahrnutí seznamu adres URL, které má zpracovat cloud-init.