3.4. 피어 Pod 구성 맵 생성
피어 Pod 구성 맵을 생성해야 합니다.
사전 요구 사항
- 클러스터 인증 정보를 기반으로 기본 AMI ID를 사용하지 않는 경우 AMI(Amazon Machine Image) ID가 있습니다.
프로세스
AWS 인스턴스에서 다음 값을 가져옵니다.
인스턴스 ID를 검색하고 기록합니다.
$ INSTANCE_ID=$(oc get nodes -l 'node-role.kubernetes.io/worker' \ -o jsonpath='{.items[0].spec.providerID}' | sed 's#[^ ]*/##g')이는 secret 오브젝트의 다른 값을 검색하는 데 사용됩니다.
AWS 리전을 검색하고 기록합니다.
$ AWS_REGION=$(oc get infrastructure/cluster \ -o jsonpath='{.status.platformStatus.aws.region}') \ && echo "AWS_REGION: \"$AWS_REGION\""AWS 서브넷 ID를 검색하고 기록합니다.
$ AWS_SUBNET_ID=$(aws ec2 describe-instances --instance-ids ${INSTANCE_ID} \ --query 'Reservations[*].Instances[*].SubnetId' --region ${AWS_REGION} \ --output text) && echo "AWS_SUBNET_ID: \"$AWS_SUBNET_ID\""AWS VPC ID를 검색하고 기록합니다.
$ AWS_VPC_ID=$(aws ec2 describe-instances --instance-ids ${INSTANCE_ID} \ --query 'Reservations[*].Instances[*].VpcId' --region ${AWS_REGION} \ --output text) && echo "AWS_VPC_ID: \"$AWS_VPC_ID\""AWS 보안 그룹 ID를 검색하고 기록합니다.
$ AWS_SG_IDS=$(aws ec2 describe-instances --instance-ids ${INSTANCE_ID} \ --query 'Reservations[*].Instances[*].SecurityGroups[*].GroupId' \ --region $AWS_REGION --output json | jq -r '.[][][]' | paste -sd ",") \ && echo "AWS_SG_IDS: \"$AWS_SG_IDS\""
다음 예에 따라
peer-pods-cm.yaml매니페스트 파일을 생성합니다.apiVersion: v1 kind: ConfigMap metadata: name: peer-pods-cm namespace: openshift-sandboxed-containers-operator data: CLOUD_PROVIDER: "aws" VXLAN_PORT: "9000" PROXY_TIMEOUT: "5m" PODVM_INSTANCE_TYPE: "t3.medium" PODVM_INSTANCE_TYPES: "t2.small,t2.medium,t3.large" PODVM_AMI_ID: "<podvm_ami_id>" AWS_REGION: "<aws_region>" AWS_SUBNET_ID: "<aws_subnet_id>" AWS_VPC_ID: "<aws_vpc_id>" AWS_SG_IDS: "<aws_sg_ids>" TAGS: "key1=value1,key2=value2" PEERPODS_LIMIT_PER_NODE: "10" ROOT_VOLUME_SIZE: "6" DISABLECVM: "true"PODVM_INSTANCE_TYPE- 인스턴스 유형이 워크로드 오브젝트에 정의되지 않은 경우 사용되는 기본 인스턴스 유형을 정의합니다.
PODVM_INSTANCE_TYPES- Pod를 생성하기 위해 공백 없이 허용된 인스턴스 유형을 지정합니다. 더 적은 메모리와 더 적은 CPU 또는 대규모 워크로드의 인스턴스 유형이 필요한 워크로드에 대해 더 작은 인스턴스 유형을 정의할 수 있습니다.
PODVM_AMI_ID-
이 값은 클러스터 인증 정보를 기반으로 AMI ID를 사용하여
KataConfigCR을 실행할 때 채워집니다. 고유한 AMI를 생성하는 경우 올바른 AMI ID를 지정합니다. 태그-
사용자 정의 태그를 Pod VM 인스턴스의
키:값쌍으로 구성하여 피어 Pod 비용을 추적하거나 다른 클러스터에서 피어 Pod를 식별할 수 있습니다. PEERPODS_LIMIT_PER_NODE-
이 값을 늘리면 노드에서 더 많은 피어 Pod를 실행할 수 있습니다. 기본값은
10입니다. ROOT_VOLUME_SIZE- 더 큰 컨테이너 이미지를 사용하여 Pod의 이 값을 늘릴 수 있습니다. Pod VM의 루트 볼륨 크기(GB)를 지정합니다. 기본 및 최소 크기는 6GB입니다.
다음 명령을 실행하여 구성 맵을 생성합니다.
$ oc create -f peer-pods-cm.yaml