Add-ons
Check Add-ons version
Check recommended EKS add-on versions and Pod Identity configuration.
#!/usr/bin/env bash
set -e
export AWS_DEFAULT_REGION="${AWS_DEFAULT_REGION:-eu-central-1}"
K8S_VERSION="1.34"
# Addons we're using
ADDONS=(
"vpc-cni"
"kube-proxy"
"coredns"
"aws-ebs-csi-driver"
"amazon-cloudwatch-observability"
"eks-pod-identity-agent"
)
echo "EKS Addon Versions for Kubernetes $K8S_VERSION"
for ADDON in "${ADDONS[@]}"; do
echo "------------------------------------------"
echo "Addon: $ADDON"
# Get default version
DEFAULT=$(aws eks describe-addon-versions \
--addon-name "$ADDON" \
--query "addons[0].addonVersions[?compatibilities[?clusterVersion=='$K8S_VERSION' && defaultVersion==\`true\`]].addonVersion | [0]" \
--output text 2>/dev/null || echo "None")
# Get latest version
LATEST=$(aws eks describe-addon-versions \
--addon-name "$ADDON" \
--query "addons[0].addonVersions[?compatibilities[?clusterVersion=='$K8S_VERSION']].addonVersion | [0]" \
--output text 2>/dev/null || echo "None")
echo "Default: $DEFAULT"
echo "Latest: $LATEST"
# Check pod identity for addons that need it
if [[ "$ADDON" == "aws-ebs-csi-driver" || "$ADDON" == "amazon-cloudwatch-observability" ]]; then
POD_IDENTITY=$(aws eks describe-addon-configuration \
--addon-name "$ADDON" \
--addon-version "$DEFAULT" \
--query "podIdentityConfiguration" \
--output json 2>/dev/null || echo "null")
if [[ "$POD_IDENTITY" != "null" && "$POD_IDENTITY" != "[]" ]]; then
echo "Pod Identity: Supported"
echo "Configuration:"
echo "$POD_IDENTITY" | jq '.'
else
echo "Pod Identity: Not supported"
fi
fi
echo
done
echo "DONE"