En esta página, se describen las acciones de conectividad de salida que debes realizar en una máquina virtual (VM) o un pod de un proyecto para permitir que las cargas de trabajo salgan de la organización. En el procedimiento, se muestra cómo agregar una etiqueta obligatoria a las implementaciones para habilitar de forma explícita el tráfico saliente y permitir que las cargas de trabajo se comuniquen fuera de la organización.
De forma predeterminada, Google Distributed Cloud (GDC) aislado bloquea las cargas de trabajo de un proyecto para que no salgan de la organización. Las cargas de trabajo pueden salir de la organización si el administrador de la plataforma (PA) inhabilitó la protección robo de datos para el proyecto. Además de inhabilitar la protección robo de datos, el operador de la aplicación (AO) debe agregar la etiqueta egress.networking.gke.io/enabled: true
en la carga de trabajo del pod para habilitar la conectividad de salida de ese pod. Cuando asignas y usas una dirección IP conocida para el proyecto, se realiza una traducción de direcciones de red (NAT) de origen en el tráfico saliente de la organización.
Puedes administrar la conectividad de salida desde las cargas de trabajo en un pod o una VM.
Administra el tráfico saliente de las cargas de trabajo en un pod
Para configurar cargas de trabajo en un pod para la conectividad de salida, primero debes asegurarte de que la protección contra la filtración de datos esté inhabilitada para el proyecto. Luego, asegúrate de que se haya agregado la etiqueta egress.networking.gke.io/enabled: true
en el pod. Si usas una construcción de nivel superior, como las construcciones Deployment
o Daemonset
, para administrar conjuntos de pods, debes configurar la etiqueta del pod en esas especificaciones.
En el siguiente ejemplo, se muestra cómo crear un objeto Deployment
a partir de su archivo de manifiesto. El archivo de muestra contiene el valor egress.networking.gke.io/enabled: true
en el campo labels
para habilitar de forma explícita el tráfico de salida del proyecto. Esta etiqueta se agrega a cada pod de la implementación y permite que las cargas de trabajo de los pods salgan de la organización.
kubectl --kubeconfig USER_CLUSTER_KUBECONFIG \
apply -f - <<EOF
apiVersion: apps/v1
kind: Deployment
metadata:
name: DEPLOYMENT_NAME
spec:
replicas: NUMBER_OF_REPLICAS
selector:
matchLabels:
run: APP_NAME
template:
metadata:
labels: # The labels given to each pod in the deployment, which are used
# to manage all pods in the deployment.
run: APP_NAME
egress.networking.gke.io/enabled: true
spec: # The pod specification, which defines how each pod runs in the deployment.
containers:
- name: CONTAINER_NAME
image: CONTAINER_IMAGE
EOF
Reemplaza lo siguiente:
USER_CLUSTER_KUBECONFIG
: Es el archivo kubeconfig del clúster de usuario en el que implementas cargas de trabajo de contenedores.DEPLOYMENT_NAME
: Es el archivo kubeconfig del clúster de usuario en el que implementas cargas de trabajo de contenedores.APP_NAME
: Es el nombre de la aplicación que se ejecutará dentro de la implementación.NUMBER_OF_REPLICAS
: Es la cantidad de objetosPod
replicados que administra la implementación.CONTAINER_NAME
: Es el nombre del contenedor.CONTAINER_IMAGE
por el nombre de la imagen de contenedor Debes incluir la ruta de acceso al registro de contenedores y la versión de la imagen, comoREGISTRY_PATH/hello-app:1.0
.
Por ejemplo:
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
spec:
replicas: 3
selector:
matchLabels:
run: my-app
template:
metadata:
labels:
run: my-app
egress.networking.gke.io/enabled: true
spec:
containers:
- name: hello-app
image: REGISTRY_PATH/hello-app:1.0
Administra el tráfico de salida de las cargas de trabajo en una VM
Para configurar cargas de trabajo en una VM para la conectividad de salida, puedes usar la consola de GDC para la configuración de la VM o crear un recurso VirtualMachineExternalAccess
. Para obtener información sobre cómo habilitar una VM con acceso externo para la transferencia de datos, consulta Habilita el acceso externo en la sección Conéctate a VMs.