Auf dieser Seite wird beschrieben, wie Sie die Audit- und Betriebslogs in einer Google Distributed Cloud (GDC) Air Gap-Appliance mithilfe des Storage Transfer Service in einen Remote-Bucket exportieren.
IAM-Rollen abrufen
Bitten Sie den IAM-Administrator Ihrer Organisation, Ihnen die Rolle „Logs Transfer Admin“ (logs-transfer-admin) im Namespace obs-system im Infrastrukturcluster und die Rolle „Logs Bucket Viewer“ (logs-bucket-viewer)) im Namespace obs-system in der Verwaltungsebene zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Exportieren von Logs benötigen.
Weitere Informationen zu diesen Rollen finden Sie unter IAM-Berechtigungen vorbereiten.
Endpunkt und vollständig qualifizierten Namen des Quell-Buckets abrufen
Legen Sie
KUBECONFIGauf die Org Management API fest:export KUBECONFIG=MANAGEMENT_API_KUBECONFIG_PATHRufen Sie den Endpunkt des Quell-Buckets ab:
Für Audit-Logs gilt:
kubectl get bucket audit-logs-loki-all -n obs-system -o json | jq '.status.endpoint'Für Betriebslogs:
kubectl get bucket ops-logs-loki-all -n obs-system -o json | jq '.status.endpoint'
Rufen Sie den voll qualifizierten Namen des Quell-Buckets ab:
Für Audit-Logs gilt:
kubectl get bucket audit-logs-loki-all -n obs-system -o json | jq '.status.fullyQualifiedName'Für Betriebslogs:
kubectl get bucket ops-logs-loki-all -n obs-system -o json | jq '.status.fullyQualifiedName'
Anmeldedaten für den Quell-Bucket abrufen
Legen Sie KUBECONFIG auf den Organisationsinfrastrukturcluster fest:
export KUBECONFIG=INFRA_CLUSTER_KUBECONFIG_PATHRufen Sie die Zugriffsschlüssel-ID des Quell-Buckets ab:
Für Audit-Logs gilt:
kubectl get secret audit-logs-loki-all-s3-auth -n obs-system -o json | jq -r '.data."access-key-id"' | base64 -diFür Betriebslogs:
kubectl get secret ops-logs-loki-all-s3-auth -n obs-system -o json | jq -r '.data."access-key-id"' | base64 -di
Rufen Sie den geheimen Zugriffsschlüssel des Quell-Buckets ab:
Für Audit-Logs gilt:
kubectl get secret audit-logs-loki-all-s3-auth -n obs-system -o json | jq -r '.data."secret-access-key"' | base64 -diFür Betriebslogs:
kubectl get secret ops-logs-loki-all-s3-auth -n obs-system -o json | jq -r '.data."secret-access-key"' | base64 -di
Übertragungs-Logs
Legen Sie
KUBECONFIGauf den Org Infra-Cluster fest:export KUBECONFIG=INFRA_CLUSTER_KUBECONFIG_PATHErstellen Sie ein Secret mit den Zugriffsanmeldedaten des Quell-Buckets:
kubectl create secret generic -n obs-system SRC_BUCKET_SECRET_NAME --from-literal=access-key-id=SRC_BUCKET_ACCESS_KEY_ID --from-literal=secret-access-key=SRC_BUCKET_SECRET_ACCESS_KEYErstellen Sie ein Secret mit den Zugangsdaten für den Ziel-Bucket:
kubectl create secret generic -n obs-system DST_BUCKET_SECRET_NAME --from-literal=access-key-id=DST_BUCKET_ACCESS_KEY_ID --from-literal=secret-access-key=DST_BUCKET_SECRET_ACCESS_KEYErstellen Sie ein Secret mit der Zertifizierungsstelle zur Authentifizierung des Endpunkts des Ziel-Buckets:
kubectl create secret generic -n obs-system DST_BUCKET_CA_SECRET_NAME --from-file="ca.crt"=CA_FILEUm fortzufahren, rufen Sie
CA_FILE,DST_BUCKET_ACCESS_KEY_IDundDST_BUCKET_SECRET_ACCESS_KEYaus dem Remote-Bucket ab. Die Funktionsweise des Datenübertragungstools hängt von den jeweiligen Speicherorten der Übertragungsendpunkte ab.So erstellen Sie einen Logübertragungsjob:
apiVersion: batch/v1 kind: Job metadata: name: JOB_NAME namespace: obs-system spec: template: spec: serviceAccountName: logs-transfer-sa containers: - name: storage-transfer-pod image: gcr.io/private-cloud-staging/storage-transfer:latest imagePullPolicy: Always command: - /storage-transfer args: - '--src_endpoint=SRC_BUCKET_ENDPOINT' - '--dst_endpoint=DST_BUCKET_ENDPOINT' - '--src_path=SRC_BUCKET_FULLY_QUALIFIED_NAME' - '--dst_path=DST_BUCKET_FULLY_QUALIFIED_NAME' - '--src_credentials=obs-system/SRC_BUCKET_SECRET_NAME' - '--dst_credentials=obs-system/DST_BUCKET_SECRET_NAME' - '--dst_ca_certificate_reference=obs-system/DST_BUCKET_CA_SECRET_NAME' - '--src_ca_certificate_reference=obs-system/trust-store-root-ext' - '--src_type=s3' - '--dst_type=s3' - '--bandwidth_limit=1G' restartPolicy: OnFailure. ---Warten Sie, bis der Übertragungsjob abgeschlossen ist:
kubectl wait --for=condition=complete job/JOB_NAME -n obs-system