Déployer un agrégat dans Amazon Elastic Kubernetes Service

ArcGIS 11.4 | |  Help archive

Avant de déployer ArcGIS Enterprise on Kubernetes dans Amazon Web Services (AWS), vous devez préparer un agrégat Amazon Elastic Kubernetes Service (EKS) répondant à la configuration système d’ArcGIS Enterprise.

La préparation d’un agrégat EKS comprend des étapes communes à tous les environnements pris en charge (par exemple, la configuration de l’agrégat Kubernetes et des nœuds correspondants), ainsi que des étapes spécifiques à un environnement (par exemple, la configuration de rôles AWS Identity and Access Management (IAM)).

Examinez attentivement les étapes ci-après et reportez-vous à la documentation AWS pour obtenir des instructions plus détaillées sur la préparation de votre environnement.

  1. Créez un Amazon Virtual Private Cloud (VPC).

    Vous devez créer un VPC répondant aux exigences d’Amazon EKS et aux exigences d’évolutivité d’ArcGIS Enterprise on Kubernetes.

    Un déploiement Kubernetes à grande échelle peut consommer des milliers d’adresses IP. Une fois qu’un agrégat est créé, les plages CIDR (Classless Inter-Domain Routing) du VPC et des sous-réseaux associés ne peuvent pas être modifiées.

    Le nombre d’adresses IP dont vous avez besoin dépend largement du nombre de charges de travail figurant dans le cluster, mais les tests d’évolutivité montrent que chaque sous-ensemble doit être configuré avec un masque de sous-réseau minimum de /18. Cela autorise plus de 16 000 adresses IP disponibles par sous-réseau.

  2. Si vous le souhaitez, activez le chiffrement d’enveloppe des secrets et créez une clé KMS (Key Management Service).

    Il est recommandé d’activer le chiffrement d’enveloppe pour les secrets stockés dans ectd pour l’agrégat EKS. À cette fin, une clé de chiffrement symétrique doit être présente dans AmazonEKS.

    Remarque :

    Une fois qu’un chiffrement d’enveloppe a été activé pour un agrégat, il ne peut pas être désactivé. Il peut être activé au niveau d’un agrégat existant si nécessaire.

  3. Créez un agrégat EKS.

    Lors de la création d’un agrégat EKS, référencez le VPC, les sous-réseaux, le rôle IAM et la clé KMS créée aux étapes précédentes. ArcGIS Enterprise on Kubernetes n’est pas pris en charge sur AWS Fargate car les nœuds sous-jacents ne sont pas configurables.

    La version Kubernetes de l’agrégat doit correspondre aux données répertoriées dans la configuration système requise.

  4. Créez un rôle IAM de groupe de nœuds.

    Une fois qu’un agrégat est créé, vous devez créer un groupe de nœuds d’opérateur. La création d’un groupe de nœuds nécessite un rôle IAM supplémentaire qui définit les services AWS auxquels les instances EC2 associées peuvent accéder.

  5. Créez un groupe de nœuds.

    Une fois créé, un agrégat ne possède aucun nœud d’opérateur programmable. Pour déployer des charges de travail sur l’agrégat, au moins un groupe de nœuds est requis afin d’activer les pods associés. L’utilisation d’un groupe de nœuds géré est recommandée afin d’autoriser des mises à niveau simplifiées de l’agrégat à l’avenir.

  6. Mettez à jour la configuration de kubectl.

    Une fois que vous avez créé l’agrégat, vous pouvez utiliser l’interface de ligne de commande AWS afin d’insérer les informations de connexion d’administration d’agrégat dans votre fichier kubeconfig. Utilisez la commande suivante :

    aws eks update-kubeconfig -name <CLUSTER_NAME> --region <REGION>
    
  7. Créez un rôle IAM d’agrégat.

    Un cluster Amazon EKS nécessite un rôle IAM qui définit les ressources auxquelles le cluster peut accéder. ArcGIS Enterprise on Kubernetes n’a pas d’exigences allant au-delà de celles d’AWS.

  8. Créez un fournisseur d’identités OIDC (OpenID Connect).

    Pour faire office d’interface avec d’autres services AWS au sein de l’agrégat, un fournisseur OIDC est recommandé par AWS. Le fournisseur fédère l’agrégat Kubernetes avec l’organisation AWS afin de mapper l’accès aux comptes de services Kubernetes sur les ressources AWS. Par rapport à ArcGIS Enterprise on Kubernetes, cette approche est recommandée pour autoriser le fonctionnement du pilote CSI (Container Storage Interface) du contrôleur d’équilibreur de charges AWS et d’Amazon Elastic Block Store (EBS). Ces deux modules additionnels réduisent les efforts administratifs nécessaires pour déployer ArcGIS Enterprise on Kubernetes.

  9. Installez le module additionnel de contrôleur d’équilibreur de charges.

    Dans EKS, un administrateur peut acheminer le trafic vers un cluster de différentes manières. Pour utiliser un équilibreur de charges, un administrateur doit installer le contrôleur d’équilibreur de charge. Le contrôleur d’équilibreur de charge AWS gère les équilibreurs de charge élastiques AWS pour un cluster Kubernetes.

    Lors du déploiement, un administrateur peut provisionner un équilibreur de charge à partir du script de déploiement. Lors de l’exécution du script, le contrôleur d’équilibreur de charge crée l’équilibreur de charge réseau (interne ou externe), le groupe cible, les groupes de sécurité et d’autres paramètres pour gérer l’acheminement vers les nœuds worker.

    Un administrateur peut également utiliser un contrôleur Ingress au niveau du cluster pour acheminer le trafic, ce qui nécessite des étapes supplrméntaires. Si un administrateur utilise le contrôleur Ingress au niveau du cluster, le script ne provisionne pas l’équilibreur de charge des applications (ALB). Pour utiliser un équilibrage de la charge des applications sur EKS, reportez-vous aux étapes supplémentaires. À l’aide d’un contrôleur Ingress au niveau du cluster, le contrôleur d’équilibreur de charge crée l’équilibreur de charge des applications, le groupe cible, les groupes de sécurité et d’autres paramètres pour gérer l’acheminement vers les nœuds worker.

  10. Installez le module additionnel du pilote CSI EBS Amazon.

    Le pilote CSI EBS Amazon est exigé par EKS Amazon 1.23 et les versions ultérieures et autorise le provisionnement dynamique des volumes EBS à l’aide de réclamations PVC (Persistent Volumes Claim) dans le cluster. La première étape consiste à créer un rôle IAM et un compte de service Kubernetes pour le pilote CSI. La seconde étape consiste à déployer les charges de travail du pilote CSI sur l’agrégat.

    Pour utiliser la dernière classe de volumes EBS, il est recommandé de créer une classe de stockage référençant le type gp3. Appliquez le fichier .yaml approprié au cluster à l’aide de la commande suivante :

    kubectl apply -f <storageClass.yaml>
    

    Pour plus d’informations, reportez-vous à un exemple de fichier .yaml de classe de stockage par défaut et à un exemple de fichier .yaml de classe de stockage de sauvegarde.

Une fois que vous avez créé un espace de noms dans le cluster Kubernetes, vous pouvez configurer et déployer le cluster EKS dans ArcGIS Enterprise. Pendant le déploiement, définissez ArcGIS Enterprise pour qu’il crée l’équilibreur de charges. Lorsque vous configurez votre organisation, référencez la classe de stockage que vous avez créée.