TODO
Ensure that you have the following tools installed locally:
To provision this example:
terraform init
terraform apply
Enter yes
at command prompt to apply
The following command will update the kubeconfig
on your local machine and allow you to interact with your EKS Cluster using kubectl
to validate the deployment.
- Run
update-kubeconfig
command:
aws eks --region us-east-1 update-kubeconfig --name ipv4-prefix-delegation
- View the configmap of kube-proxy for IPVS settings:
kubectl -n kube-system get configmap kube-proxy-config -o yaml
# Output should look similar to below (truncated for brevity)
iptables:
masqueradeAll: false
masqueradeBit: 14
minSyncPeriod: 0s
syncPeriod: 30s
ipvs:
excludeCIDRs: null
minSyncPeriod: 0s
scheduler: "lc"
syncPeriod: 30s
kind: KubeProxyConfiguration
metricsBindAddress: 0.0.0.0:10249
mode: "ipvs"
- Inspect the logs of kube-proxy for IPVS setttings:
kubectl logs kube-proxy-nqcwp -n kube-system | grep ipvs
# Output should look similar to below (truncated for brevity)
I1217 22:12:56.578440 1 server_others.go:269] "Using ipvs Proxier"
I1217 22:12:56.578460 1 server_others.go:271] "Creating dualStackProxier for ipvs"
I1217 22:12:56.578818 1 proxier.go:506] "ipvs sync params" ipFamily=IPv4 minSyncPeriod="0s" syncPeriod="30s" burstSyncs=2
I1217 22:12:56.588651 1 proxier.go:1010] "Not syncing ipvs rules until Services and Endpoints have been received from master"
To teardown and remove the resources created in this example:
terraform destroy -auto-approve