7.6. 피어 Pod 구성 맵 업데이트
기밀 컨테이너의 피어 Pod 구성 맵을 업데이트해야 합니다.
Secure Boot를 true
로 설정하여 기본적으로 활성화합니다. 기본값은 false
이며 보안 위험을 나타냅니다.
프로세스
Azure 인스턴스에서 다음 값을 가져옵니다.
Azure 리소스 그룹을 검색하고 기록합니다.
AZURE_RESOURCE_GROUP=$(oc get infrastructure/cluster -o jsonpath='{.status.platformStatus.azure.resourceGroupName}') && echo "AZURE_RESOURCE_GROUP: \"$AZURE_RESOURCE_GROUP\""
$ AZURE_RESOURCE_GROUP=$(oc get infrastructure/cluster -o jsonpath='{.status.platformStatus.azure.resourceGroupName}') && echo "AZURE_RESOURCE_GROUP: \"$AZURE_RESOURCE_GROUP\""
Copy to Clipboard Copied! Azure VNet 이름을 검색하고 기록합니다.
AZURE_VNET_NAME=$(az network vnet list --resource-group ${AZURE_RESOURCE_GROUP} --query "[].{Name:name}" --output tsv)
$ AZURE_VNET_NAME=$(az network vnet list --resource-group ${AZURE_RESOURCE_GROUP} --query "[].{Name:name}" --output tsv)
Copy to Clipboard Copied! 이 값은 Azure 서브넷 ID를 검색하는 데 사용됩니다.
Azure 서브넷 ID를 검색하고 기록합니다.
AZURE_SUBNET_ID=$(az network vnet subnet list --resource-group ${AZURE_RESOURCE_GROUP} --vnet-name $AZURE_VNET_NAME --query "[].{Id:id} | [? contains(Id, 'worker')]" --output tsv) && echo "AZURE_SUBNET_ID: \"$AZURE_SUBNET_ID\""
$ AZURE_SUBNET_ID=$(az network vnet subnet list --resource-group ${AZURE_RESOURCE_GROUP} --vnet-name $AZURE_VNET_NAME --query "[].{Id:id} | [? contains(Id, 'worker')]" --output tsv) && echo "AZURE_SUBNET_ID: \"$AZURE_SUBNET_ID\""
Copy to Clipboard Copied! Azure NSS(Network Security Group) ID를 검색하고 기록합니다.
AZURE_NSG_ID=$(az network nsg list --resource-group ${AZURE_RESOURCE_GROUP} --query "[].{Id:id}" --output tsv) && echo "AZURE_NSG_ID: \"$AZURE_NSG_ID\""
$ AZURE_NSG_ID=$(az network nsg list --resource-group ${AZURE_RESOURCE_GROUP} --query "[].{Id:id}" --output tsv) && echo "AZURE_NSG_ID: \"$AZURE_NSG_ID\""
Copy to Clipboard Copied! Azure 리전을 검색하고 기록합니다.
AZURE_REGION=$(az group show --resource-group ${AZURE_RESOURCE_GROUP} --query "{Location:location}" --output tsv) && echo "AZURE_REGION: \"$AZURE_REGION\""
$ AZURE_REGION=$(az group show --resource-group ${AZURE_RESOURCE_GROUP} --query "{Location:location}" --output tsv) && echo "AZURE_REGION: \"$AZURE_REGION\""
Copy to Clipboard Copied!
다음 예에 따라
peer-pods-cm.yaml
매니페스트 파일을 생성합니다.apiVersion: v1 kind: ConfigMap metadata: name: peer-pods-cm namespace: openshift-sandboxed-containers-operator data: CLOUD_PROVIDER: "azure" VXLAN_PORT: "9000" AZURE_INSTANCE_SIZE: "Standard_DC2as_v5" AZURE_INSTANCE_SIZES: "Standard_DC2as_v5, Standard_DC4as_v5, Standard_DC8as_v5" AZURE_SUBNET_ID: "<azure_subnet_id>" AZURE_NSG_ID: "<azure_nsg_id>" PROXY_TIMEOUT: "5m" AZURE_IMAGE_ID: "<azure_image_id>" AZURE_REGION: "<azure_region>" AZURE_RESOURCE_GROUP: "<azure_resource_group>" PEERPODS_LIMIT_PER_NODE: "10" TAGS: "key1=value1,key2=value2" INITDATA: "<base64_encoded_initdata>" ENABLE_SECURE_BOOT: "true" DISABLECVM: "false"
apiVersion: v1 kind: ConfigMap metadata: name: peer-pods-cm namespace: openshift-sandboxed-containers-operator data: CLOUD_PROVIDER: "azure" VXLAN_PORT: "9000" AZURE_INSTANCE_SIZE: "Standard_DC2as_v5"
1 AZURE_INSTANCE_SIZES: "Standard_DC2as_v5, Standard_DC4as_v5, Standard_DC8as_v5"
2 AZURE_SUBNET_ID: "<azure_subnet_id>"
3 AZURE_NSG_ID: "<azure_nsg_id>"
4 PROXY_TIMEOUT: "5m" AZURE_IMAGE_ID: "<azure_image_id>"
5 AZURE_REGION: "<azure_region>"
6 AZURE_RESOURCE_GROUP: "<azure_resource_group>"
7 PEERPODS_LIMIT_PER_NODE: "10"
8 TAGS: "key1=value1,key2=value2"
9 INITDATA: "<base64_encoded_initdata>"
10 ENABLE_SECURE_BOOT: "true"
11 DISABLECVM: "false"
Copy to Clipboard Copied! - 1
- 워크로드에 인스턴스 크기가 정의되지 않은 경우
"Standard_DC2as_v5"
값이 기본값입니다. 인스턴스 유형이 신뢰할 수 있는 환경을 지원하는지 확인합니다. 기본"Standard_DC2as_v5"
값은 AMD SEV-SNP용입니다. TEE가 Intel TDX인 경우Standard_EC4eds_v5
를 지정합니다. - 2
- Pod를 생성할 때 지정할 수 있는 모든 인스턴스 크기를 나열합니다. 이를 통해 더 적은 메모리와 더 적은 CPU 또는 대규모 워크로드의 인스턴스 크기가 필요한 워크로드에 대해 더 작은 인스턴스 크기를 정의할 수 있습니다. Intel TDX의 경우
"Standard_EC4eds_v5, Standard_EC8eds_v5, Standard_EC16eds_v5"
를 지정합니다. - 3
- 검색한
AZURE_SUBNET_ID
값을 지정합니다. - 4
- 검색한
AZURE_NSG_ID
값을 지정합니다. - 5
- 선택 사항: 기본적으로 클러스터 인증 정보를 기반으로 Azure 이미지 ID를 사용하여
KataConfig
CR을 실행할 때 이 값이 채워집니다. 자체 Azure 이미지를 생성하는 경우 올바른 이미지 ID를 지정합니다. - 6
- 검색한
AZURE_REGION
값을 지정합니다. - 7
- 검색한
AZURE_RESOURCE_GROUP
값을 지정합니다. - 8
- 노드당 생성할 수 있는 최대 피어 Pod 수를 지정합니다. 기본값은
10
입니다. - 9
- 사용자 정의 태그를 Pod VM 인스턴스의
키:값
쌍으로 구성하여 피어 Pod 비용을 추적하거나 다른 클러스터에서 피어 Pod를 식별할 수 있습니다. - 10
initdata.txt
파일에서 생성한 Base64 인코딩 문자열을 지정합니다.- 11
- 기본적으로 Secure Boot를 활성화하려면
true
를 지정합니다.
다음 명령을 실행하여 구성 맵을 생성합니다.
oc apply -f peer-pods-cm.yaml
$ oc apply -f peer-pods-cm.yaml
Copy to Clipboard Copied! 다음 명령을 실행하여
ds/osc-caa-ds
데몬 세트를 다시 시작합니다.oc set env ds/osc-caa-ds \ -n openshift-sandboxed-containers-operator REBOOT="$(date)"
$ oc set env ds/osc-caa-ds \ -n openshift-sandboxed-containers-operator REBOOT="$(date)"
Copy to Clipboard Copied!