追加のプレフィックスを消費する
ワーカーノードに追加のプレフィックスを追加するVPC CNIの動作を実証するために、現在割り当てられているIPアドレスよりも多くのIPアドレスを使用するpauseポッドをデプロイします。多数のこれらのポッドを使用して、デプロイメントやスケーリング操作を通じてクラスターにアプリケーションポッドを追加することをシミュレートします。
~/environment/eks-workshop/modules/networking/prefix/deployment-pause.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: pause-pods-prefix
namespace: other
spec:
replicas: 150
selector:
matchLabels:
run: pause-pods-prefix
template:
metadata:
labels:
run: pause-pods-prefix
spec:
containers:
- name: reserve-resources
image: registry.k8s.io/pause
A
150個の同一ポッドを作成します
B
イメージを最小限のリソースを消費する軽量なコンテナを提供するregistry.k8s.io/pauseに設定します
pauseポッドのデプロイメントを適用し、準備ができるまで待ちます。150個のポッドをスピンアップするには時間がかかる場合があります:
~$kubectl apply -k ~/environment/eks-workshop/modules/networking/prefix
deployment.apps/pause-pods-prefix created
~$kubectl wait --for=condition=available --timeout=60s deployment/pause-pods-prefix -n other
pauseポッドが実行状態にあることを確認します:
~$kubectl get deployment -n other
NAME READY UP-TO-DATE AVAILABLE AGE
pause-pods-prefix 150/150 150 150 101s
ポッドが正常に実行されると、ワーカーノードに追加されたプレフィックスを確認できるはずです。
~$aws ec2 describe-instances --filters "Name=tag-key,Values=eks:cluster-name" "Name=tag-value,Values=${EKS_CLUSTER_NAME}" \
--query 'Reservations[*].Instances[].{InstanceId: InstanceId, Prefixes: NetworkInterfaces[].Ipv4Prefixes[]}'
これは、より多くのポッドが特定のノードにスケジュールされると、VPC CNIが動的に/28プレフィックスをENI(s)にプロビジョニングして接続する方法を示しています。