Konfiguracja klastra
Obiekty konfiguracji to ranga 3, a obiekty podrzędne i node
nodearray
. Obiekt konfiguracji definiuje konfigurowalne właściwości kodu konfiguracji uruchamianego w węzłach i konfiguracjach projektu CycleCloud .
Atrybuty obiektu
Atrybuty obiektu konfiguracji zachowują się jak inne obiekty, ale są rozszerzone w celu zapewnienia definicji zagnieżdżonych. Wewnętrznie sekcje konfiguracji są scalane, więc może istnieć dowolna liczba sekcji.
Żadne cudzysłowy nie są niezbędne dla ciągów ani w wyrażeniach logicznych, prawda lub fałsz.
[[[configuraton my-project]]]
Attribute1 = Value1
Attribute2 = Value2
KeyAttribute3.Attribute3 = true
[[[configuraton cyclecloud.mounts.mount1]]]
Attribute1 = Value1
Obsługiwane konfiguracje
Usługa CycleCloud obsługuje wiele domyślnych obiektów konfiguracji. Te obsługiwane obiekty znajdują się pod nazwą cyclecloud
.
[[[configuration cyclecloud]]]
Usługa CycleCloud obsługuje sparametryzowaną konfigurację wielu usług systemowych.
Atrybut | Typ | Opis |
---|---|---|
maintenance_converge.enabled | Wartość logiczna | Węzły CycleCloud są ponownie skonfigurowane co 20 minut, aby upewnić się, że są w prawidłowym stanie. Czasami może to nie być domyślne zachowanie, takie jak podczas ręcznego testowania i aktualizowania konfiguracji w węźle. Ustawienie tej wartości na wartość false spowoduje, że węzeł zostanie skonfigurowany tylko raz. Domyślny: true |
node.prevent_metadata_access | Wartość logiczna | Uniemożliwia użytkownikom dostęp do metadanych maszyny wirtualnej z węzła innym niż użytkownik główny lub użytkownik cyclecloud. Te reguły dostępu są stosowane w programie iptables . Domyślny: true |
timezone | Ciąg | Strefę czasową węzła można zmienić, ustawiając ten atrybut na dowolny prawidłowy ciąg strefy czasowej, na przykład PST , EST . Domyślny: UTC |
ntp.disabled | Wartość logiczna | Rezygnacja z usługi ntp time przez ustawienie true . Domyślny: false |
ntp.servers | Lista (ciąg) | Lista serwerów NTP do użycia. Domyślny: pool.ntp.org |
keepalive.timeout | Liczba całkowita | Czas w sekundach, aby zachować węzeł "żywy", jeśli nie został ukończony instalowanie/konfigurowanie oprogramowania. Ustawienie domyślne: 14400 (4 godziny) |
Wykrywalne | Wartość logiczna | Niezależnie od tego, czy ten węzeł można "odnaleźć" (wyszukiwany) przez inne węzły uruchomione przez usługę CycleCloud. Domyślny: false |
autoscale.forced_shutdown_timeout | Liczba całkowita | Czas (w minutach) przed wymuszonym zamknięciem występuje, jeśli skalowanie automatyczne nie może pomyślnie skalować węzła w dół. Domyślny: 15 |
security.limits | Liczba całkowita | Tylko system Linux. Limity, które mają być stosowane do węzła. Domena, typ i element można określić dla dowolnej prawidłowej wartości zdefiniowanej. Wartości domyślne: security.limits.\*.hard.nofile = 524288 i security.limits.\*.soft.nofile = 1048576 |
Wierzchowce | Zagnieżdżone | W przypadku eksportowania i instalowania woluminu systemu plików NFS oraz instalowania woluminów. |
selinux.policy | Ciąg | Tylko system Linux.
Pomiń wymuszane selinux zasady dla obrazów niestandardowych. Już wyłączone na podstawowych obrazach CycleCloud. |
install_epel | Wartość logiczna | Dodaj repozytorium rozszerzonych pakietów dla yum na obrazie wariantu RedHat. Domyślny: true |
disable_rhui | Wartość logiczna | Rezygnacja z konfiguracji repozytorium Red Hat. Domyślny: false |
ganglia.install | Wartość logiczna | Rezygnacja z instalacji ganglia przez ustawienie false . Domyślny: true |
fail2ban.enabled | Wartość logiczna | Rezygnacja z instalacji w trybie fail2ban przez ustawienie false . Domyślny: true |
dns.domain | Ciąg | Użyj polecenia nsupdate, aby wymusić aktualizację dynamicznego rekordu DNS. Przydatne tylko wtedy, gdy są dozwolone przez zasady DNS, a klaster korzysta z serwera DNS, który umożliwia aktualizacje dynamiczne. Domyślny: nil |
dns.alias | Ciąg | Użyj polecenia nsupdate, aby wymusić aktualizację dynamicznego rekordu DNS. Przydatne tylko wtedy, gdy są dozwolone przez zasady DNS, a klaster korzysta z serwera DNS, który umożliwia aktualizacje dynamiczne. Domyślny: nil |
replace_sudoers | Wartość logiczna | Zezwalaj usłudze Cyclecloud na zarządzanie konfiguracją programu sudoers. Wyłączenie może zakłócać działanie usług użytkownika lub harmonogramu. Domyślny: true |
Atrybut | Typ | Opis |
---|---|---|
keepalive.timeout | Liczba całkowita | Czas w sekundach, aby zachować węzeł "aktywny", jeśli nie zakończył instalowania/konfigurowania oprogramowania. Ustawienie domyślne: 14400 (4 godziny) |
Wykrywalne | Wartość logiczna | Określa, czy ten węzeł może być "odnaleziony" (wyszukiwany) przez inne węzły uruchomione przez usługę CycleCloud. Domyślny: false |
security.limits | Liczba całkowita | Tylko system Linux. Limity, które mają być stosowane do węzła. Domena, typ i element można określić dla dowolnej prawidłowej zdefiniowanej wartości . Wartości domyślne: security.limits.\*.hard.nofile = 524288 i security.limits.\*.soft.nofile = 1048576 |
Wierzchowce | Zagnieżdżone | W przypadku eksportowania i instalowania woluminów systemu plików NFS . |
selinux.policy | Ciąg | Tylko system Linux.
Pomiń wymuszone selinux zasady w wystąpieniach klastra. Domyślny: nil |
dns.domain | Ciąg | Użyj polecenia nsupdate, aby wymusić dynamiczną aktualizację rekordów DNS. Przydatne tylko wtedy, gdy są dozwolone przez zasady DNS, a klaster korzysta z serwera DNS, który zezwala na aktualizacje dynamiczne. Domyślny: nil |
dns.alias | Ciąg | Użyj polecenia nsupdate, aby wymusić dynamiczną aktualizację rekordów DNS. Przydatne tylko wtedy, gdy są dozwolone przez zasady DNS, a klaster korzysta z serwera DNS, który zezwala na aktualizacje dynamiczne. Domyślny: nil |
samba.enabled | Wartość logiczna | Tylko system Linux. Instaluje Samba na serwerze plików do użycia z węzłami wykonywania systemu Windows. Domyślny: false |
[[[configuration cyclecloud.cluster]]]
Przestrzeń nazw CycleCloud cluster
zawiera konfiguracje dla usług rozproszonych i aplikacji klastrowanych.
Atrybut | Typ | Opis |
---|---|---|
autoscale.idle_time_after_jobs | Liczba całkowita | Węzły są przerywane, jeśli są bezczynne przez określony czas (w sekundach) po uruchomieniu zadań. Domyślny: 1800 |
autoscale.idle_time_before_jobs | Liczba całkowita | Węzły są przerywane, jeśli są bezczynne przez określony czas (w sekundach) przed uruchomieniem zadań. Domyślny: 1800 |
autoscale.stop_interval | Liczba całkowita | Opóźnienie między przebiegami testów automatycznego zatrzymywania (w sekundach). Wartość domyślna: 60 . |
autoscale.use_node_groups | Wartość logiczna | Włącz zgrupowane węzły — równoważne grupom umieszczania. Efekty tylko klastry PBSPro i Grid Engine . Domyślny: true |
[[[configuration cyclecloud.hosts.standalone_dns]]]
Usługa CycleCloud skonfiguruje plik /etc/hosts tak, aby zawierał duży zestaw hostów, tak aby rozpoznawanie nazw dalej i odwrotnie działało. Te konfiguracje działają jako zastąpienie DNS skonfigurowane na poszczególnych węzłach, a nie centralnie zarządzane, dlatego nazywane autonomicznym systemem DNS.
Atrybut | Typ | Opis |
---|---|---|
enabled | Wartość logiczna | Włącz zarządzanie plikami hostów etc. Wartość domyślna: true . |
alt_suffix | Ciąg | Zastąpi domyślną nazwę domeny sieci wirtualnej. Przykład: contoso.com |
Podsieci | Lista (ciąg) | Lista bloków CIDR dla rozszerzonego rozpoznawania nazw autonomicznych. |
Domyślnie usługa CycleCloud sprawdzi interfejs sieciowy i utworzy plik /etc/hosts , aby uwzględnić hosty w masce podsieci. Dodatkowe zakresy można dodać przy użyciu atrybutu subnets
.
[[[configuration cyclecloud.hosts.standalone_dns]]]
alt_suffix = my-domain.local
subnets = 10.0.1.0/24, 10.0.5.0/24
Aby zastąpić i wyłączyć usługę autonomiczną:
[[[configuration ]]]
cyclecloud.hosts.standalone_dns.enabled = false
[[[configuration cyclecloud.mounts]]]
Istotną poddomeną konfiguracji cyclecloud jest instalacja. Każda nazwana sekcja instalacji odpowiada wpisowi w /etc/fstab.
Przykład sekcji instalacji o nazwie primary
.
[[[configuration cyclecloud.mounts.primary]]]
type = nfs
mountpoint = /usr/share/lsf
export_path = /mnt/raid/lsf
options = hard,proto=tcp,mountproto=tcp,retry=30,actimeo=3600,nolock
address = 10.0.0.14
Ważne
Nazwa sekcji instalacji jest skorelowana z mount
atrybutem [[[volume]]]
obiektu.
Atrybut | Typ | Opis |
---|---|---|
typ | Ciąg | Atrybut type należy ustawić na nfs dla wszystkich eksportów NFS, aby odróżnić od instalacji woluminów i innych typów udostępnionych systemu plików. |
export_path | Ciąg | Lokalizacja eksportu w pliku NFS. Jeśli parametr export_path nie zostanie określony, instalacja mountpoint zostanie użyta jako .export_path |
fs_type | Ciąg | Typ systemu plików do użycia. Np. ext4 , xfs . |
punkt instalacji | Ciąg | Lokalizacja, w której system plików zostanie zainstalowany po zastosowaniu jakiejkolwiek dodatkowej konfiguracji. Jeśli katalog jeszcze nie istnieje, zostanie utworzony. |
cluster_name | Ciąg | Nazwa klastra CycleCloud, który eksportuje system plików. Jeśli nie zostanie ustawiona, zakłada się, że klaster lokalny węzła. |
adres | Ciąg | Jawna nazwa hosta lub adres IP systemu plików. Jeśli nie zostanie ustawiona, wyszukiwanie podejmie próbę znalezienia systemu plików w klastrze CycleCloud. |
opcje | Ciąg | Wszelkie opcje inne niż domyślne do użycia podczas instalowania systemu plików. |
wyłączone | Wartość logiczna | Jeśli zostanie ustawiona wartość true , węzeł nie zainstaluje systemu plików. |
raid_level | Liczba całkowita | Typ konfiguracji RAID do użycia, gdy jest używanych wiele urządzeń/woluminów. Wartość domyślna to 0 , czyli RAID0, ale można użyć innych poziomów raid, takich jak 1 lub 10 . |
raid_device_symlink | Ciąg | Po utworzeniu urządzenia raidowego określenie tego atrybutu spowoduje utworzenie symbolicznego linku do urządzenia raid. Domyślnie ten atrybut nie jest ustawiany i dlatego nie jest tworzony żaden symlink. Należy to ustawić w przypadkach, gdy potrzebujesz dostępu do bazowego urządzenia raid. |
devices | Lista (ciąg) | Jest to lista urządzeń, które powinny utworzyć element mountpoint . Ogólnie rzecz biorąc, ten parametr nie powinien być określony (ponieważ usługa CycleCloud ustawi to dla Ciebie na podstawie sekcji [[volume]]], ale w razie potrzeby można ręcznie określić urządzenia. |
vg_name | Ciąg | Urządzenia są konfigurowane w systemie Linux przy użyciu Menedżera woluminów logicznych (LVM). Nazwa grupy woluminów zostanie automatycznie przypisana, ale w przypadkach, gdy jest używana określona nazwa, można ustawić ten atrybut. Wartość domyślna to cyclecloud-vgX , gdzie X jest automatycznie przypisywaną liczbą. |
lv_name | Ciąg | Urządzenia są konfigurowane w systemie Linux przy użyciu Menedżera woluminów logicznych (LVM). Ta wartość jest przypisywana automatycznie i nie wymaga specyfikacji, ale jeśli chcesz użyć niestandardowej nazwy woluminu logicznego, można ją określić przy użyciu tego atrybutu. Wartość domyślna to lv0 . |
kolejność | Liczba całkowita | Określając kolejność, można kontrolować kolejność instalacji punktów instalacji. Domyślna wartość kolejności dla wszystkich punktów instalacji to 1000, z wyjątkiem "efemerycznej", która jest 0 (efemeryczna jest zawsze instalowana jako pierwsza). To zachowanie można przesłonić w zależności od potrzeb. |
encryption.bits | Liczba całkowita | Liczba bitów do użycia podczas szyfrowania systemu plików. Wartości standardowe to 128 lub 256 bitowe szyfrowanie AES. Ta wartość jest wymagana w razie potrzeby szyfrowania. |
encryption.key | Ciąg | Klucz szyfrowania do użycia podczas szyfrowania systemu plików. W przypadku pominięcia zostanie wygenerowany losowy klucz 2048 bitów. Automatycznie wygenerowany klucz jest przydatny w przypadku szyfrowania dysków, które nie są utrwalane między ponownym uruchomieniem (np. szyfrowanie urządzeń efemerycznych). |
encryption.name | Ciąg | Nazwa zaszyfrowanego systemu plików używana podczas zapisywania kluczy szyfrowania. Wartość domyślna to cyclecloud_cryptX , gdzie X jest automatycznie wygenerowaną liczbą. |
encryption.key_path | Ciąg | Lokalizacja pliku, w ramach których klucz zostanie zapisany na dysku. Wartość domyślna to /root/cyclecloud_cryptX.key , gdzie X jest automatycznie wygenerowaną liczbą. |
[[[configuration cyclecloud.exports]]]
Podobnie jak w przypadku instalacji, węzły CycleCloud można skonfigurować jako serwery NFS, jeśli przepis serwera jest włączony. Sekcja eksportu odpowiada wpisowi /etc/export .
Przykład użycia eksportów z obiektem eksportu o nazwie nfs_data
:
[[[configuration cyclecloud.exports.nfs_data]]]
type = nfs
export_path = /mnt/exports/nfs_data
writable = false
Atrybut | Typ | Opis |
---|---|---|
typ | Ciąg |
WYMAGANE Atrybut type musi być ustawiony na nfs dla wszystkich eksportów NFS, aby odróżnić od innych typów współużytkowanych systemów plików. |
export_path | Ciąg | Ścieżka lokalna do wyeksportowania jako system plików NFS. Jeśli katalog jeszcze nie istnieje, zostanie utworzony. |
właściciel | Ciąg | Konto użytkownika, które powinno być właścicielem wyeksportowanego katalogu. |
group | Ciąg | Grupa użytkownika, który powinien być właścicielem wyeksportowanego katalogu. |
tryb | Ciąg | Domyślne uprawnienia systemu plików w wyeksportowanym katalogu. |
network | Ciąg | Interfejs sieciowy, na którym jest eksportowany katalog. Wartość domyślna to all: * . |
synchronizacja | Wartość logiczna | Opcja eksportu synchronicznego/asynchronicznego. Wartość domyślna to true . |
zapisywalny | Wartość logiczna | Opcja eksportu ro/rw dla systemu plików. Wartość domyślna to true . |
opcje | Ciąg | Wszystkie opcje inne niż domyślne do użycia podczas eksportowania systemu plików. |
[[[configuration]]]
Ograniczona liczba opcji konfiguracji nie jest dostępna w żadnej przestrzeni nazw, zwykle ze starszych powodów.
Atrybut | Typ | Opis |
---|---|---|
http_proxy | Ciąg | Nazwa hosta lub adres IP serwera proxy do użycia w węźle (np. 10.10.10.10.10) |
https_proxy | Ciąg | Nazwa hosta lub adres IP serwera proxy HTTPS do użycia w węźle. (np. 10.10.0.1) |
no_proxy | Ciąg | Rozdzielona przecinkami lista nazw hostów lub adresów IP, dla których nie jest używany serwer proxy. Ustawienie domyślne: 169.254.169.254, aby zezwolić na dostęp do metadanych platformy Azure |