Configura un entorno de IP privada de Cloud Composer

En esta página, se proporciona información sobre cómo configurar un entorno de IP privada de Cloud Composer.

Cuando habilitas la IP privada, Cloud Composer solo asigna direcciones IP privadas (RFC 1918) a las VM administradas de Google Kubernetes Engine y Cloud SQL de tu entorno.

Para obtener información sobre cómo conectarse a los recursos de tu entorno, consulta IP privada.

Antes de comenzar

Control de acceso

Requisitos de red

Verifica que la red de VPC de tu proyecto cumpla con los siguientes requisitos:

  • Asegúrate de que no haya conflictos de bloqueo de IP privada. Cloud Composer no podrá crear tu entorno si tu red de VPC y los intercambios de tráfico de VPC establecidos tienen bloques de IP superpuestos con la red de VPC en el proyecto de inquilino administrado por Google. Consulta la columna Rango de IP del servidor web en la tabla siguiente para conocer los valores predeterminados que se usan en cada región.
  • Asegúrate de que haya suficientes rangos de IP secundarias para los pods y los servicios de GKE de Cloud Composer. GKE busca rangos de IP secundarias para el alias de IP. Si GKE no puede encontrar un rango, Cloud Composer no podrá crear tu entorno.
  • Asegúrate de que la cantidad de conexiones de intercambio de tráfico de VPC en tu red de VPC no sea superior a 25. Ten en cuenta lo siguiente:
    • Para cada entorno de IP privada de Cloud Composer, Cloud Composer crea una conexión de intercambio de tráfico para la red del proyecto inquilino.
    • El clúster de GKE privado crea otra conexión de intercambio de tráfico de VPC en tu red de VPC.
    • La cantidad máxima de entornos de IP privada que admite Cloud Composer es 12.
    • La cantidad máxima de entornos de IP privada de Cloud Composer que puedes crear dependerá de la cantidad de conexiones de intercambio de tráfico de VPC que usas en tu red de VPC.
  • Asegúrate de que la cantidad de rangos secundarios en tu subred no sea superior a 30. Ten en cuenta lo siguiente:
    • El clúster de GKE para tu entorno de IP privada de Cloud Composer crea dos rangos secundarios en la subred. Puedes crear varias subredes en la misma región para la misma red de VPC.
    • La cantidad máxima de rangos secundarios admitidos es 30. Debido a que cada entorno de IP privada de Cloud Composer requiere dos rangos secundarios para los pods y los servicios de GKE de Cloud Composer, cada subred admite hasta 15 entornos de IP privada de Cloud Composer.

Configuración nativa de VPC

Cloud Composer admite clústeres de GKE nativos de VPC en tu entorno.

Durante la creación del entorno, puedes habilitar nativos de la VPC (con alias de IP) y configurar redes, como la asignación de IP, sin habilitar la IP privada.

Dado que se requiere un clúster nativo de la VPC para que las tareas de Airflow se comuniquen con otras VM a las que se puede acceder a través de IP privadas, también debes habilitar nativos de VPC a fin de configurar un entorno de IP privada.

En la siguiente sección, se proporcionan ejemplos de IP privada y configuración de rangos secundarios.

Configura un entorno de IP privada de Cloud Composer y rangos secundarios

Console

  1. Abre la página Crear entorno en Google Cloud Console.

    Abrir la página Crear entorno

  2. Configura tu entorno.
  3. Marca Habilitar nativo de VPC (con alias de IP).
  4. Ingresa la configuración de red para el clúster de GKE de tu entorno, incluidos los rangos secundarios de alias de IP, según sea necesario.
  5. Para habilitar un entorno de IP privada de Cloud Composer, marca Entorno de IP privada.
  6. En el El rango de IP privadas de la instancia principal del clúster de GKE, ingresa un rango de IP para la VPC de la instancia principal o usa el rango de IP predeterminado
  7. A fin de habilitar un extremo público para el clúster de GKE en tu entorno, marca Acceder a la instancia principal de GKE con su dirección IP externa.

    El clúster está configurado como Acceso al extremo público inhabilitado.

  8. En IP privadas del servidor web, ingresa un rango de IP para el servidor web de Airflow o usa el rango de IP predeterminado.
  9. En IP privadas de Cloud SQL, ingresa un rango de IP para la instancia de Cloud SQL o usa el rango de IP predeterminado.
  10. Cuando hayas terminado de configurar tu entorno, haz clic en Crear.

gcloud

Configura tu entorno, incluidos los siguientes argumentos para un entorno de IP privada de Cloud Composer, según sea necesario:

gcloud composer environments create ENVIRONMENT_NAME \
    --location LOCATION --enable-private-environment \
    OTHER_ARGUMENTS

Los siguientes parámetros son obligatorios, a menos que se especifique lo contrario:

  • ENVIRONMENT_NAME es el nombre del entorno. Debe coincidir con el patrón ^[a-z](?:[-0-9a-z]{0,62}[0-9a-z])?$.
  • LOCATION es la región de Compute Engine donde se encuentra el entorno.
  • --enable-private-environment para habilitar un entorno de IP privada de Cloud Composer.
  • --enable-ip-alias para habilitar un nativo de VPC con alias de direcciones IP. Este parámetro es obligatorio cuando se usa --enable-private environment o cuando se configuran rangos secundarios para pods y servicios:
    • --cluster-secondary-range-name o --cluster-ipv4-cidr para configurar el rango secundario de los pods.
    • --services-secondary-range-name o --services-ipv4-cidr para configurar el rango secundario de los servicios.
  • master-ipv4-cidr a fin de especificar un rango RFC 1918 privado para la VPC de la instancia principal.
  • (Opcional) enable-private-endpoint a fin de habilitar un extremo público para el clúster de GKE en tu entorno. El clúster está configurado como Acceso al extremo público inhabilitado.

En el siguiente ejemplo, se crea un entorno que ejecuta la versión más reciente de la imagen de Cloud Composer compatible en la región us-central1 que usa la máquina n1-standard-2.

La IP privada está habilitada para el entorno, y 192.0.2.0/28 es el rango de IP de la VPC de la instancia principal de GKE.

gcloud composer environments create test-environment \
    --location us-central1 \
    --zone us-central1-f \
    --machine-type n1-standard-2 \
    --image-version composer-latest-airflow-x.y.z \
    --enable-ip-alias \
    --enable-private-environment \
    --enable-private-endpoint \
    --master-ipv4-cidr 192.0.2.0/28 

API

Para crear un entorno de Cloud Composer nuevo con la API de REST de Cloud Composer, crea una solicitud a la API environments.create completando el recurso Environment con la información de tu configuración.

Por ejemplo, esta solicitud a la API crea un entorno nuevo llamado privateip-test en la zona us-central1-c:

POST https://composer.googleapis.com/v1/projects/test-project/locations/us-central1/environments{
  "config":{
    "nodeConfig":{
      "ipAllocationPolicy":{
        "useIpAliases":true,
        "clusterIpv4CidrBlock":"10.56.0.0/14",
        "servicesIpv4CidrBlock":"10.122.0.0/20"
      },
      "location":"projects/test-project/zones/us-central1-c",
      "network":"projects/test-project/global/networks/default",
      "oauthScopes":[

      ],
      "subnetwork":"projects/test-project/regions/us-central1/subnetworks/default",
      "tags":[

      ]
    },
    "nodeCount":3,
    "privateEnvironmentConfig":{
      "cloudSqlIpv4CidrBlock":"10.32.0.0/12",
      "webServerIpv4CidrBlock":"172.30.240.0/24",
      "enablePrivateEnvironment":true,
      "privateClusterConfig":{
        "enablePrivateEndpoint":false,
        "masterIpv4CidrBlock":"172.17.50.0/28"
      }
    },
    "softwareConfig":{
      "airflowConfigOverrides":{

      },
      "envVariables":{

      },
      "pythonVersion":"3",
      "pypiPackages":{

      }
    }
  },
  "labels":{
    "purpose":"test"
  },
  "name":"projects/test-project/locations/us-central1/environments/privateip-test"
}

Rangos de IP predeterminados

Región Rango de IP de la instancia principal de GKE Rango de IP del servidor web Rango de IP de Cloud SQL
asia-east2 172.16.0.0/23 172.31.255.0/24 10.0.0.0/12
asia-northeast1 172.16.2.0/23 172.31.254.0/24 10.0.0.0/12
asia-northeast2 172.16.32.0/23 172.31.239.0/24 10.0.0.0/12
asia-northeast3 172.16.30.0/23 172.31.240.0/24 10.0.0.0/12
asia-south1 172.16.4.0/23 172.31.253.0/24 10.0.0.0/12
australia-southeast1 172.16.6.0/23 172.31.252.0/24 10.0.0.0/12
europe-west1 172.16.8.0/23 172.31.251.0/24 10.0.0.0/12
europe-west2 172.16.10.0/23 172.31.250.0/24 10.0.0.0/12
europe-west3 172.16.12.0/23 172.31.249.0/24 10.0.0.0/12
europe-west6 172.16.14.0/23 172.31.248.0/24 10.0.0.0/12
northamerica-northeast1 172.16.16.0/23 172.31.247.0/24 10.0.0.0/12
southamerica-east1 172.16.18.0/23 172.31.246.0/24 10.0.0.0/12
us-central1 172.16.20.0/23 172.31.245.0/24 10.0.0.0/12
us-east1 172.16.22.0/23 172.31.244.0/24 10.0.0.0/12
us-east4 172.16.24.0/23 172.31.243.0/24 10.0.0.0/12
us-west3 172.16.26.0/23 172.31.242.0/24 10.0.0.0/12
us-west4 172.16.28.0/23 172.31.241.0/24 10.0.0.0/12