3.5. ピア Pod の config map の作成
ピア Pod の config map を作成する必要があります。
前提条件
- クラスター認証情報に基づくデフォルトの AMI ID を使用していない場合は、Amazon Machine Image (AMI) ID がある。
手順
AWS インスタンスから以下の値を取得します。
インスタンス ID を取得して記録します。
$ INSTANCE_ID=$(oc get nodes -l 'node-role.kubernetes.io/worker' \ -o jsonpath='{.items[0].spec.providerID}' | sed 's#[^ ]*/##g')これは、シークレットオブジェクトの他の値を取得するために使用されます。
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 を指定します。 TAGS-
Pod 仮想マシンインスタンスの
key:valueペアとしてカスタムタグを設定して、ピア Pod のコストを追跡したり、異なるクラスター内のピア Pod を識別したりできます。 PEERPODS_LIMIT_PER_NODE-
この値を増やすと、ノード上でより多くのピア Pod を実行できます。デフォルト値は
10です。 ROOT_VOLUME_SIZE- コンテナーイメージが大きい Pod の場合はこの値を増やします。Pod 仮想マシンのルートボリュームのサイズをギガバイト単位で指定します。デフォルトおよび最小サイズは 6 GB です。
以下のコマンドを実行して config map を作成します。
$ oc create -f peer-pods-cm.yaml