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

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

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 quieres configurar claves de encriptación administradas por el cliente (CMEK). Visita la página Control de acceso con IAM de la documentación de Cloud Key Management Service para obtener más información.

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. El nombre de la instancia no se puede cambiar después de que se crea.
  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 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 aparece 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
    • Incorporación: Plataforma de Looker (Google Cloud Core) para implementar y mantener estadísticas externas y aplicaciones personalizadas confiables a gran escala

    Las ediciones no se pueden cambiar 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 ver 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. Una configuración de conexión 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.

  9. En la sección Encriptación, puedes seleccionar si deseas usar la encriptación administrada por Google predeterminada o una clave de encriptación administrada por el cliente (CMEK). Consulta la página de documentación Usa claves de encriptación administradas por el cliente con Looker (Google Cloud Core) para obtener más información sobre CMEK y cómo configurarlas antes y durante la creación de la instancia. No se puede cambiar el tipo de encriptación después de crear la instancia.

  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 del Período de mantenimiento está configurada 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, crea la cuenta de servicio de Looker y sigue las instrucciones para configurar CMEK primero.
  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á asociado con la URL de la instancia.
    • PROJECT_ID: El nombre del proyecto de Google Cloud en el que creas 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 su URL en la sección URI de redireccionamiento autorizado 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. Las ediciones no se pueden cambiar 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 de IP privada para tu instancia.

    También incluye estas marcas:

    • --public-ip-enabled se usa para habilitar la IP pública.
    • Se recomienda --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
    
    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 o 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).

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 comando Terraform recurso para aprovisionar una instancia estándar de Looker (Google Cloud Core) 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.

La creación de instancias no se puede pausar ni finalizar una vez que se ha iniciado. Cuando tu recurso de Terraform se aprovisione correctamente, tu 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 la 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 creada la instancia de IP pública, su URL pública 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?