Cette page explique comment installer et configurer la CLI gdcloud pour gérer le stockage d'objets lorsque vous travaillez avec des projets Google Distributed Cloud (GDC) air-gapped. Il explique comment télécharger, installer et configurer les composants et paramètres nécessaires pour utiliser efficacement les buckets et objets de stockage dans cet environnement isolé.
Cette page s'adresse aux administrateurs informatiques du groupe d'opérateurs d'infrastructure ou aux développeurs du groupe d'opérateurs d'applications qui souhaitent provisionner et gérer des buckets de stockage d'objets pour des projets dans des environnements GDC sous air gap. Pour en savoir plus, consultez la documentation sur les audiences pour GDC sous air gap.
Avant de commencer
Pour installer et configurer la CLI de stockage, contactez l'administrateur de votre organisation IAM pour demander le rôle Administrateur des règles de réseau de l'organisation (org-network-policy-admin), qui vous permet de créer, modifier et supprimer des règles de réseau de l'organisation.
Télécharger la CLI gdcloud
Téléchargez et extrayez une archive de bundle gdcloud CLI en suivant les instructions de la section Télécharger gdcloud CLI.
N'utilisez pas de binaire gdcloud CLI autonome qui n'inclut pas le répertoire bin/component_bundles/.
Installer la CLI gdcloud
Pour utiliser le groupe de commandes gdcloud storage, installez le composant storage-cli-dependencies à partir d'un bundle gdcloud CLI extrait :
Suivez les instructions de la section Installer la CLI gdcloud pour ajouter le répertoire
bindu bundle extrait à votrePATH.Pour installer le composant
storage-cli-dependencies, exécutez la commande suivante :gdcloud components install storage-cli-dependenciesCette commande installe
storage-cli-dependenciesà partir du répertoirebin/component_bundles/de votre bundle gdcloud CLI extrait. Si vous exécutez cette commande à partir d'un binaire gdcloud CLI autonome qui ne dispose pas debin/component_bundles/, la commande échoue avec une erreurcomponent_registry.yaml: no such file or directory. Pour résoudre cette erreur, téléchargez et extrayez un bundle depuis Télécharger gdcloud CLI, puis exécutezbin/gdcloudà partir du répertoire du bundle extrait.Pour en savoir plus sur la commande
components install, consultez Installer des composants.
Configurer la CLI gdcloud pour le stockage d'objets
Les configurations suivantes doivent être définies pour utiliser la CLI gdcloud pour le stockage d'objets.
Remplacez
ACCESS_KEY_IDpar l'ID de clé d'accès obtenu à partir du secret dans Obtenir des identifiants d'accès :gdcloud config set storage/s3_access_key_id ACCESS_KEY_IDRemplacez
SECRET_ACCESS_KEYpar la clé secrète obtenue à partir du secret dans Obtenir des identifiants d'accès :gdcloud config set storage/s3_secret_access_key SECRET_ACCESS_KEYRemplacez
CA_BUNDLE_FILEpar le chemin d'accès au certificat CA. Il s'agit d'un certificat numérique appartenant à une autorité de certification (AC), une organisation de confiance qui se porte garante des identités. Vous pouvez demander le bundle de confiance de l'autorité de certification GDC à un membre de votre groupe d'opérateurs d'infrastructure (IO). Pour savoir comment obtenir des certificats CA GDC, consultez Récupérer des groupes d'approbations GDC.gdcloud config set storage/s3_custom_ca_certs_file CA_BUNDLE_FILERemplacez
ENDPOINTpar le point de terminaison fourni par votre opérateur d'infrastructure (IO) :gdcloud config set storage/s3_endpoint ENDPOINTCette étape est légèrement différente pour les buckets birégionaux. Chaque bucket birégional fournit trois points de terminaison que vous pouvez choisir pour accéder au bucket. Dans la plupart des cas, le point de terminaison global est approprié pour profiter des basculements automatiques :
- Point de terminaison zone1 : ce point de terminaison est toujours reçu par zone1. Si vous utilisez ce point de terminaison, vous bénéficiez d'une cohérence de lecture après écriture pour tous les objets écrits dans zone1. Toutefois, si zone1 tombe en panne, un client doit passer au point de terminaison zone2 ou global pour continuer à lire/écrire dans ce bucket. Si le client provient d'un cluster d'utilisateur, ce point de terminaison ne sera accessible qu'à partir de zone1.
- Point de terminaison Zone2 : ce point de terminaison est toujours reçu par zone2. Si vous utilisez ce point de terminaison, vous bénéficiez d'une cohérence de lecture après écriture pour tous les objets écrits dans zone2. Toutefois, si zone2 tombe en panne, un client doit passer au point de terminaison zone1 ou au point de terminaison global pour continuer à lire/écrire dans ce bucket. Si le client provient d'un cluster d'utilisateur, ce point de terminaison ne sera accessible qu'à partir de la zone 2.
- Point de terminaison mondial : ce point de terminaison entraîne le routage de votre requête vers zone1 ou zone2. Cette option ne fournit pas d'affinité de session, ce qui signifie que les requêtes effectuées à l'aide de la même session peuvent arriver dans la zone 1 ou la zone 2. Cela signifie qu'il n'y a aucune garantie de lecture après écriture pour les requêtes envoyées au point de terminaison global. Le point de terminaison global fournit un basculement automatique en cas de panne d'une zone. Les utilisateurs n'ont donc pas besoin de modifier les points de terminaison dans leurs charges de travail, comme ils le feraient s'ils utilisaient le point de terminaison zonal. De plus, ce point de terminaison est accessible depuis les clusters d'utilisateur dans toutes les zones.
Exécutez les commandes suivantes sur le serveur de l'API de gestion pour afficher les points de terminaison globaux et zonaux de votre bucket, puis choisissez celui que vous souhaitez utiliser :
kubectl get buckets BUCKET_NAME -n PROJECT_NAME -o jsonpath="{.status.globalEndpoint}" --kubeconfig MANAGEMENT_API_SERVER kubectl get buckets BUCKET_NAME -n PROJECT_NAME -o jsonpath="{.status.zonalEndpoints}" --kubeconfig MANAGEMENT_API_SERVER