Einrichten von Amazon Web Services
Zur Vorbereitung Ihres Amazon Web Services Projekts sind einige Schritte erforderlich, bevor Sie Amazon Elastic Kubernetes Service (EKS) Cluster mit Astra Control Service managen können.
Schnellstart für die Einrichtung von Amazon Web Services
Führen Sie diese Schritte schnell durch, oder scrollen Sie nach unten zu den verbleibenden Abschnitten, um ausführliche Informationen zu erhalten.
Astra Control Service-Anforderungen für Amazon Web Services überprüfen
Stellen Sie sicher, dass die Cluster ordnungsgemäß sind und eine unterstützte Version von Kubernetes ausführen, dass Worker-Nodes unter anderem Linux oder Windows online sind. Erfahren Sie mehr zu diesem Schritt.
Erstellen Sie ein Amazon-Konto
Wenn Sie noch kein Amazon-Konto haben, müssen Sie ein Konto erstellen, damit Sie EKS verwenden können. Erfahren Sie mehr zu diesem Schritt.
Installieren Sie die Amazon Web Services-CLI
Installieren Sie die AWS CLI, sodass Sie AWS über die Befehlszeile managen können. Befolgen Sie die Schritt-für-Schritt-Anweisungen.
Optional: Erstellen Sie einen IAM-Benutzer
Erstellen Sie einen Amazon IAM-Benutzer (Identity and Access Management). Sie können diesen Schritt auch überspringen und einen vorhandenen IAM-Benutzer mit Astra Control Service verwenden.
Erstellen Sie eine Berechtigungsrichtlinie und fügen Sie sie an
Erstellen einer Richtlinie mit den erforderlichen Berechtigungen für den Astra Control Service zur Interaktion mit Ihrem AWS Konto
Speichern Sie die Anmeldeinformationen für den IAM-Benutzer
Speichern Sie die Anmeldeinformationen für den IAM-Benutzer, damit Sie die Anmeldeinformationen in den Astra Control Service importieren können.
EKS-Clusteranforderungen
Ein Kubernetes-Cluster muss folgende Anforderungen erfüllen, damit Sie ihn über den Astra Control Service erkennen und managen können.
- Kubernetes-Version
-
Auf einem Cluster muss eine Kubernetes-Version im Bereich von 1.25 bis 1.28 ausgeführt werden.
- Bildtyp
-
Der Bildtyp für jeden Arbeiterknoten muss Linux sein.
- Der Cluster-Status
-
Cluster müssen in einem ordnungsgemäßen Zustand ausgeführt werden und mindestens einen Online-Worker-Node ohne „Worker“-Nodes im ausgefallenen Status aufweisen.
- Astra Control Provisioner
-
Für den Betrieb mit Storage-Back-Ends sind die Provisionierung von Astra Control und ein externer Snapshot Controller erforderlich. Gehen Sie wie folgt vor, um diese Vorgänge zu aktivieren:
Details
- CSI-Treiber für Amazon Elastic Block Store (EBS)
-
Wenn Sie das Amazon EBS Storage-Backend verwenden, müssen Sie den Container Storage Interface (CSI)-Treiber für EBS installieren (dieser wird nicht automatisch installiert).
Anweisungen zur Installation des CSI-Treibers finden Sie in den Schritten.
Details
Installieren Sie einen externen SchnappschussfilterFalls noch nicht geschehen, "Installieren Sie die Snapshot-CRDs und den Snapshot-Controller".
Den CSI-Treiber als Amazon EKS-Add-On installieren-
Erstellen der IAM-Rolle des Amazon EBS CSI-Treibers für Service-Konten Befolgen Sie die Anweisungen "In der Amazon-Dokumentation", Verwenden der AWS CLI-Befehle in den Anweisungen.
-
Fügen Sie das Amazon EBS CSI-Add-on mit dem folgenden AWS-CLI-Befehl hinzu und ersetzen Sie Informationen in Klammern <> durch Werte speziell für Ihre Umgebung. Ersetzen Sie <DRIVER_ROLE> durch den Namen der EBS CSI-Treiberrolle, die Sie im vorherigen Schritt erstellt haben:
aws eks create-addon \ --cluster-name <CLUSTER_NAME> \ --addon-name aws-ebs-csi-driver \ --service-account-role-arn arn:aws:iam::<ACCOUNT_ID>:role/<DRIVER_ROLE>
Konfigurieren der EBS Storage-Klasse-
Klonen Sie das GitHub Repository des Amazon EBS CSI-Treibers auf Ihrem System.
git clone https://github.com/kubernetes-sigs/aws-ebs-csi-driver.git
-
Navigieren Sie zum Beispielverzeichnis für dynamische Bereitstellung.
cd aws-ebs-csi-driver/examples/kubernetes/dynamic-provisioning/
-
Implementierung der ebs-sc-Storage-Klasse und der ebs-Claim Persistent Volume Claim aus dem Manifeste Verzeichnis
kubectl apply -f manifests/storageclass.yaml kubectl apply -f manifests/claim.yaml
-
ebs-sc Storage-Klasse beschreiben
kubectl describe storageclass ebs-sc
Sie sollten die Ausgabe sehen, in der die Attribute der Storage-Klasse beschrieben werden.
-
Erstellen Sie ein Amazon-Konto
Wenn Sie noch kein Amazon-Konto besitzen, müssen Sie ein Konto erstellen, um die Abrechnung für Amazon EKS zu aktivieren.
-
Wechseln Sie zum "Amazon Homepage" Wählen Sie oben rechts Anmelden und wählen Sie Hier starten.
-
Befolgen Sie die Anweisungen, um ein Konto zu erstellen.
Installieren Sie die Amazon Web Services-CLI
Installieren Sie die AWS CLI, sodass Sie AWS Ressourcen über die Befehlszeile managen können.
-
Gehen Sie zu "Erste Schritte mit der AWS CLI" Und befolgen Sie die Anweisungen zur Installation der CLI.
Optional: Erstellen Sie einen IAM-Benutzer
Erstellen Sie einen IAM-Benutzer, damit Sie AWS Services und Ressourcen mit erhöhter Sicherheit nutzen und managen können. Sie können diesen Schritt auch überspringen und einen vorhandenen IAM-Benutzer mit Astra Control Service verwenden.
-
Gehen Sie zu "IAM-Benutzer werden erstellt" Und befolgen Sie die Anweisungen zum Erstellen eines IAM-Benutzers.
Erstellen Sie eine Berechtigungsrichtlinie und fügen Sie sie an
Erstellen einer Richtlinie mit den erforderlichen Berechtigungen für den Astra Control Service zur Interaktion mit Ihrem AWS Konto
-
Erstellen Sie eine neue Datei mit dem Namen
policy.json
. -
Kopieren Sie den folgenden JSON-Inhalt in die Datei:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "cloudwatch:GetMetricData", "fsx:DescribeVolumes", "ec2:DescribeRegions", "s3:CreateBucket", "s3:ListBucket", "s3:PutObject", "s3:GetObject", "iam:SimulatePrincipalPolicy", "s3:ListAllMyBuckets", "eks:DescribeCluster", "eks:ListNodegroups", "eks:DescribeNodegroup", "eks:ListClusters", "iam:GetUser", "s3:DeleteObject", "s3:DeleteBucket", "autoscaling:DescribeAutoScalingGroups" ], "Resource": "*" } ] }
-
Erstellen der Richtlinie:
POLICY_ARN=$(aws iam create-policy --policy-name <policy-name> --policy-document file://policy.json --query='Policy.Arn' --output=text)
-
Hängen Sie die Richtlinie an den IAM-Benutzer an. Austausch
<IAM-USER-NAME>
Entweder mit dem Benutzernamen des von Ihnen erstellten IAM-Benutzers oder mit einem vorhandenen IAM-Benutzer:aws iam attach-user-policy --user-name <IAM-USER-NAME> --policy-arn=$POLICY_ARN
Speichern Sie die Anmeldeinformationen für den IAM-Benutzer
Speichern Sie die Anmeldeinformationen für den IAM-Benutzer, damit Sie den Astra Control Service auf den Benutzer aufmerksam machen können.
-
Anmeldedaten herunterladen Austausch
<IAM-USER-NAME>
Mit dem Benutzernamen des IAM-Benutzers, den Sie verwenden möchten:aws iam create-access-key --user-name <IAM-USER-NAME> --output json > credential.json
Der credential.json
Datei ist erstellt, und Sie können die Anmeldeinformationen in Astra Control Service importieren.