Crea una instancia de IP pública de Looker (Google Cloud Core)

En esta página, se explica cómo aprovisionar una instancia de Looker (Google Cloud Core) con IP pública.

Antes de comenzar

  1. En la consola de Google Cloud, en la página del selector de proyectos, crea un proyecto de Google Cloud o navega a uno existente.

    Ir al selector de proyectos

  2. Habilita la API de Looker para tu proyecto en la consola de Google Cloud. Cuando habilites la API, es posible que debas actualizar la página de la consola para confirmar que se habilitó.

    Habilita la API

  3. Configura un cliente de OAuth y crea credenciales de autorización. El cliente de OAuth te permite autenticarte y acceder a la instancia. Debes configurar OAuth para crear una instancia de Looker (Google Cloud Core), incluso si usas un método de autenticación diferente para autenticar usuarios en tu instancia.
  4. Si quieres usar los Controles del servicio de VPC, debes crear una instancia de IP privada en lugar de una instancia de IP pública.

Roles obligatorios

Para obtener los permisos que necesitas para crear una instancia de Looker (Google Cloud Core), solicita a tu administrador que te otorgue el Rol de IAM Administrador de Looker (roles/looker.admin) en el proyecto en el que residirá la instancia. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.

Es posible que también necesites roles de IAM adicionales si deseas configurar claves de encriptación administradas por el cliente (CMEK). Para obtener más información, visita la página Control de acceso con IAM de la documentación de Cloud Key Management Service.

Crea una instancia de Looker (Google Cloud Core)

Looker (Google Cloud Core) requiere aproximadamente 60 minutos para generar una instancia nueva.

Para crear tu instancia de Looker (Google Cloud Core), selecciona una de las siguientes opciones:

Console

  1. Navega hasta la página del producto Looker (Google Cloud Core) desde tu proyecto en la consola de Google Cloud. Si ya creaste una instancia de Looker (Google Cloud Core) en este proyecto, se abrirá la página Instancias.

    Ir a Looker (Google Cloud Core)

  2. Haz clic en CREAR INSTANCIA.
  3. En la sección Nombre de la instancia, proporciona un nombre para tu instancia de Looker (Google Cloud Core). El nombre de la instancia no está asociado con la URL de la instancia de Looker (Google Cloud Core) una vez que se crea. No se puede cambiar el nombre de la instancia después de crearla.
  4. En la sección Credenciales de la aplicación OAuth, ingresa el ID y el secreto de OAuth que creaste cuando configuraste tu cliente de OAuth.
  5. En la sección Región, selecciona la opción adecuada del menú desplegable para alojar tu instancia de Looker (Google Cloud Core). Selecciona la región que coincida con la región en el contrato de suscripción, que es donde se asigna la cuota para tu proyecto. Las regiones disponibles se enumeran en la página de documentación de las ubicaciones de Looker (Google Cloud Core).
  6. En la sección Edición, establece la edición de la instancia según las necesidades de tu organización. El tipo de edición afecta algunas de las funciones disponibles para la instancia. Asegúrate de elegir el mismo tipo de edición que se indica en tu contrato anual y de tener una cuota asignada para ese tipo de edición. Estas son las opciones de edición:

    • Standard: Plataforma de Looker (Google Cloud Core) para organizaciones o equipos pequeños con menos de 50 usuarios
    • Enterprise: Plataforma de Looker (Google Cloud Core) con funciones de seguridad mejoradas para abordar una amplia variedad de casos de uso de IE interna y estadísticas
    • Embed: Plataforma de Looker (Google Cloud Core) para implementar y mantener estadísticas externas confiables y aplicaciones personalizadas a gran escala.

    No se pueden cambiar las ediciones después de crear la instancia. Si quieres cambiar una edición, puedes usar la función de importación y exportación para trasladar los datos de tu instancia de Looker (Google Cloud Core) a una instancia nueva que esté configurada con una edición diferente.

  7. En la sección Personaliza tu instancia, haz clic en MOSTRAR OPCIONES DE CONFIGURACIÓN para mostrar un grupo de parámetros de configuración adicionales que puedes personalizar para la instancia.

  8. En la sección Conexiones, selecciona solo IP pública. La configuración de conexión de IP pública asigna una dirección IP externa a la que se puede acceder a través de Internet y está disponible para todos los tipos de edición.

    Si seleccionas solo IP privada o IP pública e IP privada, sigue los pasos que se indican en la página de documentación Crea una instancia de IP privada de Looker (Google Cloud Core) para completar la configuración de la red durante la creación de la instancia.

  9. En la sección Encriptación, puedes seleccionar el tipo de encriptación que usarás en la instancia. Las siguientes opciones de encriptación están disponibles:

  10. En la sección Período de mantenimiento, puedes especificar el día de la semana y la hora en la que Looker (Google Cloud Core) programa el mantenimiento. Los períodos de mantenimiento duran una hora. De forma predeterminada, la opción Período preferido en Período de mantenimiento está establecida en Cualquier período.

  11. En la sección Período de denegación de mantenimiento, puedes especificar un bloque de días en el que Looker (núcleo de Google Cloud) no programe el mantenimiento. Los períodos de rechazo del mantenimiento pueden ser de hasta 60 días. Debes permitir al menos 14 días de disponibilidad de mantenimiento entre cualquiera de los 2 períodos de rechazo del mantenimiento.

  12. Haz clic en Crear.

gcloud

  1. Si usas CMEK, primero crea la cuenta de servicio de Looker y sigue las instrucciones para configurar CMEK.
  2. Usa el comando gcloud looker instances create para crear la instancia:

    gcloud looker instances create INSTANCE_NAME \
    --project=PROJECT_ID \
    --oauth-client-id=OAUTH_CLIENT_ID \
    --oauth-client-secret=OAUTH_CLIENT_SECRET \
    --region=REGION \
    --edition=EDITION \
    [--consumer-network=CONSUMER_NETWORK --private-ip-enabled --reserved-range=RESERVED_RANGE]
    [--no-public-ip-enabled]
    [--public-ip-enabled]
    [--async]
    

    Reemplaza lo siguiente:

    • INSTANCE_NAME: Es un nombre para tu instancia de Looker (Google Cloud Core). no está asociada con la URL de la instancia.
    • PROJECT_ID: Es el nombre del proyecto de Google Cloud en el que estás creando la instancia de Looker (Google Cloud Core).
    • OAUTH_CLIENT_ID y OAUTH_CLIENT_SECRET: Son el ID de cliente de OAuth y el secreto de OAuth que creaste cuando configuraste tu cliente de OAuth. Después de crear la instancia, ingresa la URL de la instancia en la sección URIs de redireccionamiento autorizados del cliente de OAuth.
    • REGION: Es la región en la que se aloja tu instancia de Looker (Google Cloud Core). Selecciona la región que coincida con la del contrato de suscripción. Las regiones disponibles se enumeran en la página de documentación de las ubicaciones de Looker (Google Cloud Core).
    • EDITION: Es la edición de la instancia. Sus valores posibles son core-standard-annual, core-enterprise-annual o core-embed-annual. No se pueden cambiar las ediciones después de crear la instancia. Si quieres cambiar una edición, puedes usar la importación y exportación para mover los datos de tu instancia de Looker (Google Cloud Core) a una instancia nueva que esté configurada con una edición diferente.
    • CONSUMER_NETWORK: Tu red de VPC o VPC compartida. Se debe configurar si creas una instancia de IP privada.
    • RESERVED_RANGE: Es el rango de direcciones IP dentro de la VPC en la que Google aprovisionará una subred para tu instancia de Looker (Google Cloud Core). No definas un rango si habilitas una conexión de red IP privada para tu instancia.

    También incluye estas marcas:

    • --public-ip-enabled se usa para habilitar la IP pública.
    • Se recomienda usar --async cuando creas una instancia de Looker (Google Cloud Core).
  3. Puedes agregar más parámetros para aplicar otros parámetros de configuración de la instancia:

    [--maintenance-window-day=MAINTENANCE_WINDOW_DAY
          --maintenance-window-time=MAINTENANCE_WINDOW_TIME]
    [--deny-maintenance-period-end-date=DENY_MAINTENANCE_PERIOD_END_DATE
          --deny-maintenance-period-start-date=DENY_MAINTENANCE_PERIOD_START_DATE
          --deny-maintenance-period-time=DENY_MAINTENANCE_PERIOD_TIME]
    --kms-key=KMS_KEY_ID
    [--fips-enabled]
    
    Reemplaza lo siguiente:

    • MAINTENANCE_WINDOW_DAY: Debe ser una de las siguientes opciones: friday, monday, saturday, sunday, thursday, tuesday o wednesday. Consulta la página de documentación Administra las políticas de mantenimiento para Looker (Google Cloud Core) para obtener más información sobre la configuración del período de mantenimiento.
    • MAINTENANCE_WINDOW_TIME y DENY_MAINTENANCE_PERIOD_TIME: Deben estar en la hora UTC en formato de 24 horas (por ejemplo, 13:00, 17:45).
    • DENY_MAINTENANCE_PERIOD_START_DATE y DENY_MAINTENANCE_PERIOD_END_DATE: deben tener el formato YYYY-MM-DD.
    • KMS_KEY_ID: Debe ser la clave que se crea cuando se configuran las claves de encriptación administradas por el cliente (CMEK).

    Puedes incluir la marca --fips-enabled para habilitar el cumplimiento del nivel 1 del estándar FIPS 140-2.

Terraform

Usa el siguiente comando Terraform recurso para aprovisionar una instancia estándar de Looker (Google Cloud Core) con funcionalidad básica:

# Creates a Standard edition Looker (Google Cloud core) instance with basic functionality enabled.
resource "google_looker_instance" "main" {
  name             = "my-instance"
  platform_edition = "LOOKER_CORE_STANDARD"
  region           = "us-central1"
  oauth_config {
    client_id     = "my-client-id"
    client_secret = "my-client-secret"
  }
}

Usa el siguiente recurso de Terraform para aprovisionar una instancia de Looker (Google Cloud Core) estándar con parámetros de configuración adicionales aplicados:

# Creates a Standard edition Looker (Google Cloud core) instance with full functionality enabled.

resource "google_looker_instance" "main" {
  name              = "my-instance"
  platform_edition  = "LOOKER_CORE_STANDARD"
  region            = "us-central1"
  public_ip_enabled = true
  admin_settings {
    allowed_email_domains = ["google.com"]
  }
  // User metadata config is only available when platform edition is LOOKER_CORE_STANDARD.
  user_metadata {
    additional_developer_user_count = 10
    additional_standard_user_count  = 10
    additional_viewer_user_count    = 10
  }
  maintenance_window {
    day_of_week = "THURSDAY"
    start_time {
      hours   = 22
      minutes = 0
      seconds = 0
      nanos   = 0
    }
  }
  deny_maintenance_period {
    start_date {
      year  = 2050
      month = 1
      day   = 1
    }
    end_date {
      year  = 2050
      month = 2
      day   = 1
    }
    time {
      hours   = 10
      minutes = 0
      seconds = 0
      nanos   = 0
    }
  }
  oauth_config {
    client_id     = "my-client-id"
    client_secret = "my-client-secret"
  }
}

Usa el siguiente recurso de Terraform para aprovisionar una instancia de Looker (Google Cloud Core) Enterprise con una conexión de red privada:

# Creates an Enterprise edition Looker (Google Cloud core) instance with full, Private IP functionality.
resource "google_looker_instance" "main" {
  name               = "my-instance"
  platform_edition   = "LOOKER_CORE_ENTERPRISE_ANNUAL"
  region             = "us-central1"
  private_ip_enabled = true
  public_ip_enabled  = false
  reserved_range     = google_compute_global_address.main.name
  consumer_network   = data.google_compute_network.main.id
  admin_settings {
    allowed_email_domains = ["google.com"]
  }
  encryption_config {
    kms_key_name = google_kms_crypto_key.main.id
  }
  maintenance_window {
    day_of_week = "THURSDAY"
    start_time {
      hours   = 22
      minutes = 0
      seconds = 0
      nanos   = 0
    }
  }
  deny_maintenance_period {
    start_date {
      year  = 2050
      month = 1
      day   = 1
    }
    end_date {
      year  = 2050
      month = 2
      day   = 1
    }
    time {
      hours   = 10
      minutes = 0
      seconds = 0
      nanos   = 0
    }
  }
  oauth_config {
    client_id     = "my-client-id"
    client_secret = "my-client-secret"
  }
  depends_on = [
    google_service_networking_connection.main,
    google_kms_crypto_key.main
  ]
}

resource "google_kms_key_ring" "main" {
  name     = "keyring-example"
  location = "us-central1"
}

resource "google_kms_crypto_key" "main" {
  name     = "crypto-key-example"
  key_ring = google_kms_key_ring.main.id
}

resource "google_service_networking_connection" "main" {
  network                 = data.google_compute_network.main.id
  service                 = "servicenetworking.googleapis.com"
  reserved_peering_ranges = [google_compute_global_address.main.name]
}

resource "google_compute_global_address" "main" {
  name          = "looker-range"
  purpose       = "VPC_PEERING"
  address_type  = "INTERNAL"
  prefix_length = 20
  network       = data.google_compute_network.main.id
}

data "google_project" "main" {}

data "google_compute_network" "main" {
  name = "default"
}

resource "google_kms_crypto_key_iam_member" "main" {
  crypto_key_id = google_kms_crypto_key.main.id
  role          = "roles/cloudkms.cryptoKeyEncrypterDecrypter"
  member        = "serviceAccount:service-${data.google_project.main.number}@gcp-sa-looker.iam.gserviceaccount.com"
}

Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform.

No se puede pausar ni finalizar la creación de instancias una vez que se inicia. Cuando tu recurso de Terraform se aprovisione correctamente, la terminal imprimirá el siguiente mensaje:

Creation complete after XmXs [id=projects/PROJECT-ID/locations/REGION/instances/my-instance-randomly-generated-name]

Apply complete! Resources: X added, X changed, X destroyed.

Para ver el estado de tu instancia nueva, a la que se le asignará un nombre generado de forma aleatoria, visita la página Instancias en la consola.

Mientras se crea la instancia, puedes ver su estado en la página Instancias de la consola. También puedes ver tu actividad de creación de instancias haciendo clic en el ícono de notificaciones en el menú de la consola de Google Cloud.

Una vez que se cree la instancia de IP pública, la URL pública de la instancia aparecerá en la columna URL de la instancia de la página Instancias.

Después de crear la instancia, ingresa su URL en la sección URI de redireccionamiento autorizado del cliente de OAuth.

Después de crear la instancia y completar la configuración de OAuth, podrás verla. Para ello, navega a su URL, que aparecerá en la página Instancias.

¿Qué sigue?