13.4. La préparation de votre compte AWS
Découvrez l’ID de zone hébergée par Amazon Route 53:
export ZONE_ID=$(aws route53 list-hosted-zones-by-name --output json \ --dns-name "${DOMAIN}." --query 'HostedZones[0]'.Id --out text | sed 's/\/hostedzone\///')
$ export ZONE_ID=$(aws route53 list-hosted-zones-by-name --output json \ --dns-name "${DOMAIN}." --query 'HostedZones[0]'.Id --out text | sed 's/\/hostedzone\///')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Élaborer un document avec les modifications DNS nécessaires pour activer la résolution DNS pour le domaine canonique du contrôleur Ingress:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow L’opérateur DNS externe utilise ce domaine canonique comme cible pour les enregistrements CNAME.
Envoyez vos modifications à Amazon Route 53 pour propagation:
aws route53 change-resource-record-sets \ --hosted-zone-id ${ZONE_ID} \ --change-batch file://${SCRATCH}/create-cname.json
aws route53 change-resource-record-sets \ --hosted-zone-id ${ZONE_ID} \ --change-batch file://${SCRATCH}/create-cname.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créez un document AWS IAM Policy qui permet à l’opérateur DNS externe de mettre à jour uniquement la zone hébergée par le domaine personnalisé:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créer un utilisateur AWS IAM:
aws iam create-user --user-name "${CLUSTER}-external-dns-operator"
$ aws iam create-user --user-name "${CLUSTER}-external-dns-operator"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Joindre la politique:
aws iam attach-user-policy --user-name "${CLUSTER}-external-dns-operator" --policy-arn $POLICY_ARN
$ aws iam attach-user-policy --user-name "${CLUSTER}-external-dns-operator" --policy-arn $POLICY_ARN
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NoteCela sera changé en STS en utilisant l’IRSA à l’avenir.
Créer des clés AWS pour l’utilisateur IAM:
SECRET_ACCESS_KEY=$(aws iam create-access-key --user-name "${CLUSTER}-external-dns-operator")
$ SECRET_ACCESS_KEY=$(aws iam create-access-key --user-name "${CLUSTER}-external-dns-operator")
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créer des informations d’identification statiques:
cat << EOF > "${SCRATCH}/credentials" [default] aws_access_key_id = $(echo $SECRET_ACCESS_KEY | jq -r '.AccessKey.AccessKeyId') aws_secret_access_key = $(echo $SECRET_ACCESS_KEY | jq -r '.AccessKey.SecretAccessKey') EOF
$ cat << EOF > "${SCRATCH}/credentials" [default] aws_access_key_id = $(echo $SECRET_ACCESS_KEY | jq -r '.AccessKey.AccessKeyId') aws_secret_access_key = $(echo $SECRET_ACCESS_KEY | jq -r '.AccessKey.SecretAccessKey') EOF
Copy to Clipboard Copied! Toggle word wrap Toggle overflow