אתם יכולים לייצא יומני ביקורת ויומנים תפעוליים ממכשיר Google Distributed Cloud (GDC) מנותק לקטגוריית אחסון מרוחקת שתואמת ל-S3, באמצעות משימת העברת אחסון. העברת היומנים האלה עוזרת לכם לעמוד בדרישות השמירה לטווח ארוך לצורכי תאימות, ולבצע ביקורות אבטחה חיצוניות.
קבלת תפקידי IAM
כדי לקבל את ההרשאות שנדרשות לייצוא יומנים, צריך לבקש מהאדמין של הארגון ב-IAM להקצות לכם את התפקיד "אדמין של העברת יומנים" (logs-transfer-admin) במרחב השמות obs-system באשכול התשתית, ואת התפקיד "צפייה בקטגוריות של יומנים" (logs-bucket-viewer)) במרחב השמות obs-system במישור הניהול.
מידע נוסף על התפקידים האלה זמין במאמר הכנת הרשאות IAM.
משיגים את נקודת הקצה ואת השם המלא של קטגוריית המקור
מגדירים את
KUBECONFIGל-Org Management API:export KUBECONFIG=MANAGEMENT_API_KUBECONFIG_PATHמאתרים את נקודת הקצה של קטגוריית המקור:
ביומני ביקורת:
kubectl get bucket audit-logs-loki-all -n obs-system -o json | jq '.status.endpoint'ביומנים תפעוליים:
kubectl get bucket ops-logs-loki-all -n obs-system -o json | jq '.status.endpoint'
משיגים את השם המלא של קטגוריית המקור:
ביומני ביקורת:
kubectl get bucket audit-logs-loki-all -n obs-system -o json | jq '.status.fullyQualifiedName'ביומנים תפעוליים:
kubectl get bucket ops-logs-loki-all -n obs-system -o json | jq '.status.fullyQualifiedName'
קבלת פרטי הכניסה של קטגוריית המקור
מגדירים את KUBECONFIG לאשכול Org Infra:
export KUBECONFIG=INFRA_CLUSTER_KUBECONFIG_PATHמשיגים את מזהה מפתח הגישה של קטגוריית המקור:
ביומני ביקורת:
kubectl get secret audit-logs-loki-all-s3-auth -n obs-system -o json | jq -r '.data."access-key-id"' | base64 -diביומנים תפעוליים:
kubectl get secret ops-logs-loki-all-s3-auth -n obs-system -o json | jq -r '.data."access-key-id"' | base64 -di
משיגים את מפתח הגישה הסודי של קטגוריית המקור:
ביומני ביקורת:
kubectl get secret audit-logs-loki-all-s3-auth -n obs-system -o json | jq -r '.data."secret-access-key"' | base64 -diביומנים תפעוליים:
kubectl get secret ops-logs-loki-all-s3-auth -n obs-system -o json | jq -r '.data."secret-access-key"' | base64 -di
יומני העברות
מגדירים את
KUBECONFIGלאשכול Org Infra:export KUBECONFIG=INFRA_CLUSTER_KUBECONFIG_PATHיוצרים סוד עם פרטי הכניסה של קטגוריית המקור:
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_KEYיוצרים סוד עם פרטי הכניסה של קטגוריית היעד:
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_KEYיוצרים סוד עם רשות אישורים לאימות נקודת הקצה של קטגוריית היעד:
kubectl create secret generic -n obs-system DST_BUCKET_CA_SECRET_NAME --from-file="ca.crt"=CA_FILEכדי להמשיך, צריך לקבל את
CA_FILE,DST_BUCKET_ACCESS_KEY_IDו-DST_BUCKET_SECRET_ACCESS_KEYמהקטגוריה המרוחקת. הפעולה של הכלי להעברת נתונים תלויה במיקומים הספציפיים של נקודות הקצה של ההעברה.יוצרים משימת העברת יומנים:
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. ---מחכים עד שמשימת ההעברה תסתיים:
kubectl wait --for=condition=complete job/JOB_NAME -n obs-system