클러스터 구성
구성 개체는 순위 3이고, 종속 node
개체 및 nodearray
구성 개체는 노드 및 CycleCloud 프로젝트 구성에서 실행되는 구성 코드에 대한 구성 가능한 속성을 정의합니다.
개체 특성
구성 개체 특성은 다른 개체처럼 동작하지만 중첩된 정의를 제공하도록 확장됩니다. 내부적으로 구성 섹션이 병합되므로 임의의 수의 섹션이 있을 수 있습니다.
문자열이나 부울 식( true 또는 false)에 따옴표가 필요하지 않습니다.
[[[configuraton my-project]]]
Attribute1 = Value1
Attribute2 = Value2
KeyAttribute3.Attribute3 = true
[[[configuraton cyclecloud.mounts.mount1]]]
Attribute1 = Value1
지원되는 구성
CycleCloud는 다양한 기본 구성 개체를 지원합니다. 이러한 지원되는 개체는 이름 cyclecloud
아래에 포함됩니다.
[[[configuration cyclecloud]]]
CycleCloud는 많은 시스템 서비스의 매개 변수가 있는 구성을 지원합니다.
attribute | Type | 설명 |
---|---|---|
maintenance_converge.enabled | 부울 | CycleCloud 노드는 올바른 상태인지 확인하기 위해 20분마다 다시 구성됩니다. 노드에서 구성을 수동으로 테스트하고 업데이트하는 경우와 같이 이 동작을 기본 동작으로 사용하지 않으려는 경우가 있습니다. 이 값을 false로 설정하면 노드가 한 번만 구성됩니다. 기본값: true |
node.prevent_metadata_access | 부울 | 루트 사용자 또는 cyclecloud 사용자가 아닌 사용자가 노드에서 VM 메타데이터에 액세스하지 못하도록 합니다. 이러한 액세스 규칙은 .에 iptables 적용됩니다. 기본값: true |
timezone | String | 노드의 표준 시간대는 이 특성을 유효한 표준 시간대 문자열(예 PST : .) EST 로 설정하여 변경할 수 있습니다. 기본값: UTC |
ntp.disabled | 부울 | 를 설정하여 ntp 시간 서비스를 옵트아웃합니다 true . 기본값: false |
ntp.servers | 목록(문자열) | 사용할 NTP 서버 목록입니다. 기본값: pool.ntp.org |
keepalive.timeout | 정수 | 소프트웨어 설치/구성을 완료하지 않은 경우 노드를 "유지"하는 데 걸리는 시간(초)입니다. 기본값: 14400 (4시간) |
검색 | 부울 | CycleCloud에서 시작한 다른 노드에서 이 노드를 "검색"(검색)할 수 있는지 여부입니다. 기본값: false |
autoscale.forced_shutdown_timeout | 정수 | 자동 크기 조정이 노드를 성공적으로 축소할 수 없는 경우 강제 종료가 발생하기 전의 시간(분)입니다. 기본값: 15 |
security.limits | 정수 | Linux 전용입니다. 노드에 적용할 제한입니다. 정의된 유효한 값 에 대해 도메인, 유형 및 항목을 지정할 수 있습니다. 기본값: security.limits.\*.hard.nofile = 524288 및 security.limits.\*.soft.nofile = 1048576 |
마운트 | 중첩됨 | NFS 내보내기 및 탑재 및 볼륨 탑재의 경우 |
selinux.policy | String | Linux 전용입니다. 사용자 지정 이미지에 대해 적용된 selinux 정책을 무시합니다. 핵심 CycleCloud 이미지에서 이미 사용하지 않도록 설정되었습니다. |
install_epel | 부울 | RedHat 변형 이미지에서 yum에 대한 확장 패키지 리포지토리를 추가합니다. 기본값: true |
disable_rhui | 부울 | Red Hat 리포지토리 구성을 옵트아웃합니다. 기본: false |
ganglia.install | 부울 | 를 설정하여 ganglia 설치를 옵트아웃합니다 false . 기본값: true |
fail2ban.enabled | 부울 | 를 설정하여 fail2ban 설치를 옵트아웃합니다 false . 기본값: true |
dns.domain | String | nsupdate를 사용하여 동적 DNS 레코드 업데이트를 강제 적용합니다. DNS 정책에서 허용되고 클러스터가 동적 업데이트를 허용하는 DNS 서버를 사용하는 경우에만 유용합니다. 기본값: nil |
dns.alias | String | nsupdate를 사용하여 동적 DNS 레코드 업데이트를 강제 적용합니다. DNS 정책에서 허용되고 클러스터가 동적 업데이트를 허용하는 DNS 서버를 사용하는 경우에만 유용합니다. 기본값: nil |
replace_sudoers | 부울 | Cyclecloud가 sudoers 구성을 관리하도록 허용합니다. 사용하지 않도록 설정하면 사용자 또는 스케줄러 서비스를 방해할 수 있습니다. 기본값: true |
attribute | Type | 설명 |
---|---|---|
keepalive.timeout | 정수 | 소프트웨어 설치/구성을 완료하지 않은 경우 노드를 "활성"으로 유지하는 데 걸리는 시간(초)입니다. 기본값: 14400 (4시간) |
검색 | 부울 | CycleCloud에서 시작한 다른 노드에서 이 노드를 "검색"(검색)할 수 있는지 여부입니다. 기본값: false |
security.limits | 정수 | Linux 전용입니다. 노드에 적용할 제한입니다. 정의된 유효한 값 에 대해 도메인, 형식 및 항목을 지정할 수 있습니다. 기본값: security.limits.\*.hard.nofile = 524288 및 security.limits.\*.soft.nofile = 1048576 |
마운트 | 중첩됨 | NFS 내보내기 및 탑재 및 볼륨 탑재의 경우. |
selinux.policy | String | Linux 전용입니다. 클러스터 인스턴스에 적용된 selinux 정책을 무시합니다. 기본값: nil |
dns.domain | String | nsupdate를 사용하여 동적 DNS 레코드 업데이트를 강제 적용합니다. DNS 정책에서 허용되고 클러스터가 동적 업데이트를 허용하는 DNS 서버를 사용하는 경우에만 유용합니다. 기본값: nil |
dns.alias | String | nsupdate를 사용하여 동적 DNS 레코드 업데이트를 강제 적용합니다. DNS 정책에서 허용되고 클러스터가 동적 업데이트를 허용하는 DNS 서버를 사용하는 경우에만 유용합니다. 기본값: nil |
samba.enabled | 부울 | Linux 전용입니다. Windows 실행 노드에 사용할 파일러에 Samba를 설치합니다. 기본값: false |
[[[configuration cyclecloud.cluster]]]
CycleCloud cluster
네임스페이스에는 분산 서비스 및 클러스터형 애플리케이션에 대한 구성이 포함되어 있습니다.
attribute | Type | 설명 |
---|---|---|
autoscale.idle_time_after_jobs | 정수 | 노드는 작업을 실행한 후 지정된 시간(초)에 유휴 상태이면 종료됩니다. 기본값: 1800 |
autoscale.idle_time_before_jobs | 정수 | 노드는 작업을 실행하기 전에 지정된 시간(초)에 유휴 상태이면 종료됩니다. 기본값: 1800 |
autoscale.stop_interval | 정수 | 자동 중지 검사 실행 사이의 시간 지연(초)입니다. 기본값: 60 . |
autoscale.use_node_groups | 부울 | 그룹화된 노드를 사용하도록 설정합니다. 배치 그룹에 해당합니다.
PBSPro 및 그리드 엔진 클러스터에만 영향을 줍니다. 기본값: true |
[[[configuration cyclecloud.hosts.standalone_dns]]]
CycleCloud는 정방향 및 역방향 이름 확인이 작동하도록 큰 호스트 집합을 포함하도록 /etc/hosts 파일을 구성합니다. 이러한 구성은 중앙에서 관리되지 않는 개별 노드에 구성된 DNS 교체로 작동하므로 독립 실행형 DNS라고 합니다.
attribute | Type | 설명 |
---|---|---|
사용 | 부울 | etc 호스트 파일의 관리를 사용하도록 설정합니다. 기본값: true . |
alt_suffix | String | VNET의 기본 도메인 이름을 재정의합니다. 예: contoso.com |
서브넷 | 목록(문자열) | 확장된 독립 실행형 이름 확인을 위한 CIDR 블록 목록입니다. |
기본적으로 CycleCloud는 네트워크 인터페이스를 검사하고 서브넷 마스크에 호스트를 포함하도록 /etc/hosts 파일을 구성합니다. 특성을 사용하여 subnets
추가 범위를 추가할 수 있습니다.
[[[configuration cyclecloud.hosts.standalone_dns]]]
alt_suffix = my-domain.local
subnets = 10.0.1.0/24, 10.0.5.0/24
독립 실행형 서비스를 재정의하고 사용하지 않도록 설정하려면 다음을 수행합니다.
[[[configuration ]]]
cyclecloud.hosts.standalone_dns.enabled = false
[[[configuration cyclecloud.mounts]]]
cyclecloud 구성의 중요한 하위 도메인은 탑재입니다. 명명된 각 탑재 섹션은 /etc/fstab의 항목에 해당합니다.
라는 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
중요
탑재 섹션 이름은 개체의 특성과 mount
상관 관계가 있습니다 [[[volume]]]
.
attribute | Type | Description |
---|---|---|
type | String | 볼륨 탑재 및 기타 공유 파일 시스템 형식과 구분하려면 모든 NFS 내보내기에서 형식 특성을 설정 nfs 해야 합니다. |
export_path | String | NFS 파일러에서 내보내기의 위치입니다.
export_path 지정하지 않으면 탑재가 mountpoint .로 사용됩니다export_path . |
fs_type | String | 사용할 파일 시스템의 유형입니다. 예:ext4 xfs |
mountpoint | String | 추가 구성이 적용된 후 파일 시스템이 탑재될 위치입니다. 디렉터리가 아직 없는 경우 디렉터리가 만들어집니다. |
cluster_name | String | 파일 시스템을 내보내는 CycleCloud 클러스터의 이름입니다. 설정하지 않으면 노드의 로컬 클러스터가 가정됩니다. |
address | String | 파일 시스템의 명시적 호스트 이름 또는 IP 주소입니다. 설정되지 않은 경우 검색은 CycleCloud 클러스터에서 파일 시스템을 찾으려고 시도합니다. |
옵션 | String | 파일 시스템을 탑재할 때 사용할 기본이 아닌 옵션입니다. |
사용 안 함 | 부울 | 설정 true 하면 노드는 파일 시스템을 탑재하지 않습니다. |
raid_level | 정수 | 여러 디바이스/볼륨을 사용할 때 사용할 RAID 구성의 유형입니다. 기본적으로 RAID0을 의미하는 값 0 으로 설정되지만, 다른 Raid 수준(예: 1 또는 10 )을 사용할 수 있습니다. |
raid_device_symlink | String | Raid 디바이스를 만들 때 이 특성을 지정하면 raid 디바이스에 대한 기호 링크가 만들어집니다. 기본적으로 이 특성은 설정되지 않으므로 symlink가 만들어지지 않습니다. 이 설정은 기본 Raid 디바이스에 액세스해야 하는 경우에 설정해야 합니다. |
devices | 목록(문자열) | 을 구성 mountpoint 해야 하는 디바이스 목록입니다. 일반적으로 이 매개 변수는 지정해서는 안 됩니다(CycleCloud는 [[[볼륨]] 섹션에 따라 이 매개 변수를 설정하므로). 그러나 원하는 경우 디바이스를 수동으로 지정할 수 있습니다. |
vg_name | String | 디바이스는 LVM(논리 볼륨 관리자)을 사용하여 Linux에서 구성됩니다. 볼륨 그룹 이름은 자동으로 할당되지만 특정 이름을 사용하는 경우 이 특성을 설정할 수 있습니다. 기본값은 X가 자동으로 할당된 숫자로 설정 cyclecloud-vgX 됩니다. |
lv_name | String | 디바이스는 LVM(논리 볼륨 관리자)을 사용하여 Linux에서 구성됩니다. 이 값은 자동으로 할당되며 사양이 필요하지 않지만 사용자 지정 논리 볼륨 이름을 사용하려는 경우 이 특성을 사용하여 지정할 수 있습니다. 기본값은 lv0 입니다. |
순서 | 정수 | 순서를 지정하여 탑재 지점이 탑재되는 순서를 제어할 수 있습니다. 모든 탑재 지점의 기본 순서 값은 0인 '임시'를 제외하고 1000입니다(임시는 항상 기본적으로 먼저 탑재됨). 필요에 따라 사례별로 이 동작을 재정의할 수 있습니다. |
encryption.bits | 정수 | 파일 시스템을 암호화할 때 사용할 비트 수입니다. 표준 값은 128 AES 암호화 또는 256 비트입니다. 암호화가 필요한 경우 이 값이 필요합니다. |
encryption.key | String | 파일 시스템을 암호화할 때 사용할 암호화 키입니다. 생략하면 임의의 2048비트 키가 생성됩니다. 자동으로 생성된 키는 다시 부팅 사이에 유지되지 않는 디스크(예: 임시 디바이스 암호화)를 암호화하는 경우에 유용합니다. |
encryption.name | String | 암호화 키를 저장할 때 사용되는 암호화된 파일 시스템의 이름입니다.
cyclecloud_cryptX 기본적으로 X는 자동으로 생성된 숫자입니다. |
encryption.key_path | String | 키가 디스크에 기록될 파일의 위치입니다.
/root/cyclecloud_cryptX.key 기본적으로 X는 자동으로 생성된 숫자입니다. |
[[[configuration cyclecloud.exports]]]
탑재와 마찬가지로 서버 레시피를 사용하는 경우 CycleCloud 노드를 NFS 서버로 구성할 수 있습니다. 내보내기 섹션은 /etc/exports 항목에 해당합니다 .
내보내 nfs_data
기 개체와 함께 내보내기 사용 예:
[[[configuration cyclecloud.exports.nfs_data]]]
type = nfs
export_path = /mnt/exports/nfs_data
writable = false
attribute | Type | Description |
---|---|---|
type | String |
필수 다른 공유 파일 시스템 형식과 구별하려면 nfs 모든 NFS 내보내기에서 형식 특성을 설정해야 합니다. |
export_path | String | NFS 파일 시스템으로 내보낼 로컬 경로입니다. 디렉터리가 아직 없는 경우 디렉터리가 만들어집니다. |
owner | String | 내보낸 디렉터리를 소유해야 하는 사용자 계정입니다. |
group | String | 내보낸 디렉터리를 소유해야 하는 사용자 그룹입니다. |
mode | String | 내보낸 디렉터리에 대한 기본 파일 시스템 권한입니다. |
network | String | 디렉터리를 내보낼 네트워크 인터페이스입니다. 기본값은 모두: * . |
동기화 | 부울 | 동기/비동기 내보내기 옵션입니다. 기본값은 true 입니다. |
쓰기 가능 | 부울 | 파일 시스템에 대한 ro/rw 내보내기 옵션입니다. 기본값은 true 입니다. |
옵션 | String | 파일 시스템을 내보낼 때 사용할 기본이 아닌 옵션입니다. |
[[[configuration]]]
일반적으로 레거시 이유로 네임스페이스 없이 제한된 수의 구성 옵션을 사용할 수 있습니다.
attribute | Type | 설명 |
---|---|---|
http_proxy | String | 노드에서 사용할 프록시 서버의 호스트 이름 또는 IP 주소(예: 10.10.10.10) |
https_proxy | String | 노드에서 사용할 HTTPS 프록시 서버의 호스트 이름 또는 IP 주소입니다. (예: 10.10.0.1) |
no_proxy | String | 프록시 서버를 사용하지 않는 호스트 이름 또는 IP 주소의 쉼표로 구분된 목록입니다. 기본값: Azure 메타데이터에 대한 액세스를 허용하려면 169.254.169.254 |