En esta página se describe cómo exportar los registros de auditoría y operativos de un dispositivo aislado de Google Distributed Cloud (GDC) a un contenedor remoto mediante la herramienta de transferencia de almacenamiento.
Obtener roles de gestión de identidades y accesos
Para obtener los permisos que necesitas para exportar registros, pide al administrador de gestión de identidades y accesos de tu organización que te conceda el rol Administrador de transferencia de registros (logs-transfer-admin
) en el espacio de nombres obs-system
del clúster de infraestructura y el rol Lector de segmento de registros (logs-bucket-viewer)
) en el espacio de nombres obs-system
del plano de gestión.
Para obtener más información sobre estos roles, consulta Preparar permisos de gestión de identidades y accesos.
Obtener el endpoint y el nombre completo del bucket de origen
Define
KUBECONFIG
en la API Org Management:export KUBECONFIG=MANAGEMENT_API_KUBECONFIG_PATH
Obtén el endpoint del contenedor de origen:
Registros de auditoría:
kubectl get bucket audit-logs-loki-all -n obs-system -o json | jq '.status.endpoint'
Registros operativos:
kubectl get bucket ops-logs-loki-all -n obs-system -o json | jq '.status.endpoint'
Obtén el nombre completo del bucket de origen:
Registros de auditoría:
kubectl get bucket audit-logs-loki-all -n obs-system -o json | jq '.status.fullyQualifiedName'
Registros operativos:
kubectl get bucket ops-logs-loki-all -n obs-system -o json | jq '.status.fullyQualifiedName'
Obtener las credenciales de acceso del segmento de origen
Define KUBECONFIG en el clúster de infraestructura de la organización:
export KUBECONFIG=INFRA_CLUSTER_KUBECONFIG_PATH
Obtén el ID de clave de acceso del segmento de origen:
Registros de auditoría:
kubectl get secret audit-logs-loki-all-s3-auth -n obs-system -o json | jq -r '.data."access-key-id"' | base64 -di
Registros operativos:
kubectl get secret ops-logs-loki-all-s3-auth -n obs-system -o json | jq -r '.data."access-key-id"' | base64 -di
Obtén la clave de acceso secreta del segmento de origen:
Registros de auditoría:
kubectl get secret audit-logs-loki-all-s3-auth -n obs-system -o json | jq -r '.data."secret-access-key"' | base64 -di
Registros operativos:
kubectl get secret ops-logs-loki-all-s3-auth -n obs-system -o json | jq -r '.data."secret-access-key"' | base64 -di
Registros de la transferencia
Define
KUBECONFIG
en el clúster de infraestructura de la organización:export KUBECONFIG=INFRA_CLUSTER_KUBECONFIG_PATH
Crea un secreto con las credenciales de acceso del bucket de origen:
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
Crea un secreto con las credenciales de acceso del contenedor de destino:
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
Crea un secreto con la autoridad de certificación para autenticar el endpoint del bucket de destino:
kubectl create secret generic -n obs-system DST_BUCKET_CA_SECRET_NAME --from-file="ca.crt"=CA_FILE
Crea una tarea de transferencia de registros:
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. ---
Espera a que se complete el trabajo de transferencia:
kubectl wait --for=condition=complete job/JOB_NAME -n obs-system