> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Configuración personalizada en AWS

> Despliegue ClickHouse BYOC en su VPC de AWS existente

export const Image = ({img, alt, size = "lg"}) => {
  const normalizedSize = ["sm", "md", "lg"].includes(size) ? size : "lg";
  return <div className={`ch-image-${normalizedSize}`}>
      <Frame>
        <img src={img} alt={alt} />
      </Frame>
    </div>;
};

<div id="customer-managed-vpc-aws">
  ## VPC gestionada por el cliente (BYO-VPC) para AWS
</div>

Si prefiere usar una VPC existente para implementar ClickHouse BYOC, en lugar de que ClickHouse Cloud cree una nueva VPC, siga estos pasos. Este enfoque ofrece un mayor control sobre la configuración de red y le permite integrar ClickHouse BYOC en su infraestructura de red existente.

<Steps>
  <Step title="Configura tu VPC existente" id="configure-existing-vpc">
    1. Etiqueta la VPC con `clickhouse-byoc="true"`.
    2. Asigna al menos 3 subredes privadas en 3 zonas de disponibilidad distintas para que las use ClickHouse Cloud.
    3. Asegúrate de que cada subred tenga un rango CIDR mínimo de `/23` (p. ej., 10.0.0.0/23) para proporcionar suficientes direcciones IP para el despliegue de ClickHouse.
    4. Agrega las etiquetas `kubernetes.io/role/internal-elb=1` y `clickhouse-byoc="true"` a cada subred para habilitar la configuración correcta del balanceador de carga.

    <Image img="https://mintcdn.com/private-7c7dfe99/Ph2XgLY43sq6v4yO/images/cloud/reference/byoc-subnet-1.webp?fit=max&auto=format&n=Ph2XgLY43sq6v4yO&q=85&s=ca8491785aa957ce48e7826dadbd156d" size="lg" alt="Subred de VPC de BYOC" width="1600" height="827" data-path="images/cloud/reference/byoc-subnet-1.webp" />

    <Image img="https://mintcdn.com/private-7c7dfe99/Ph2XgLY43sq6v4yO/images/cloud/reference/byoc-subnet-2.webp?fit=max&auto=format&n=Ph2XgLY43sq6v4yO&q=85&s=4534989000d14a7b56e404febe355423" size="lg" alt="Etiquetas de subred de VPC de BYOC" width="1600" height="406" data-path="images/cloud/reference/byoc-subnet-2.webp" />
  </Step>

  <Step title="Configura el endpoint de gateway de S3" id="configure-s3-endpoint">
    Si tu VPC aún no tiene configurado un endpoint de gateway de S3, tendrás que crear uno para habilitar una comunicación segura y privada entre tu VPC y Amazon S3. Este endpoint permite que tus servicios de ClickHouse accedan a S3 sin pasar por internet pública. Consulta la captura de pantalla a continuación para ver una configuración de ejemplo.

    <Image img="https://mintcdn.com/private-7c7dfe99/Ph2XgLY43sq6v4yO/images/cloud/reference/byoc-s3-endpoint.webp?fit=max&auto=format&n=Ph2XgLY43sq6v4yO&q=85&s=7413b52f024d68d7c9807f25bbc1209c" size="lg" alt="Endpoint de S3 de BYOC" width="1711" height="1559" data-path="images/cloud/reference/byoc-s3-endpoint.webp" />
  </Step>

  <Step title="Asegura la conectividad de red" id="ensure-network-connectivity">
    **Acceso saliente a internet**
    Tu VPC debe permitir al menos acceso saliente a internet para que los componentes de ClickHouse BYOC puedan comunicarse con el plano de control de Tailscale. Tailscale se utiliza para proporcionar una red segura de confianza cero para las operaciones privadas de administración. El registro y la configuración iniciales con Tailscale requieren conectividad a internet pública, ya sea directamente o mediante un gateway NAT. Esta conectividad es necesaria para mantener tanto la privacidad como la seguridad de tu despliegue de BYOC.

    **Resolución DNS**
    Asegúrate de que tu VPC tenga una resolución DNS funcional y de que no bloquee, interfiera ni sobrescriba los nombres DNS estándar. ClickHouse BYOC depende de DNS para resolver los servidores de control de Tailscale y los endpoints del servicio de ClickHouse. Si DNS no está disponible o está mal configurado, es posible que los servicios de BYOC no puedan conectarse o funcionar correctamente.
  </Step>

  <Step title="Configura tu cuenta de AWS" id="configure-aws-account">
    La configuración inicial de BYOC crea un rol de IAM con privilegios (`ClickHouseManagementRole`) que permite a los controladores de BYOC de ClickHouse Cloud administrar tu infraestructura. Esto puede hacerse con una [plantilla de CloudFormation](https://s3.us-east-2.amazonaws.com/clickhouse-public-resources.clickhouse.cloud/cf-templates/byoc.yaml) o un [módulo de Terraform](https://s3.us-east-2.amazonaws.com/clickhouse-public-resources.clickhouse.cloud/tf/byoc.tar.gz).

    Al desplegar una configuración `BYO-VPC`, establece el parámetro `IncludeVPCWritePermissions` en `false` para asegurarte de que ClickHouse Cloud no reciba permisos para modificar tu VPC gestionada por el cliente.

    <Note>
      Los buckets de almacenamiento, el cluster de Kubernetes y los recursos de cómputo necesarios para ejecutar ClickHouse no se incluyen en esta configuración inicial. Se aprovisionarán en un paso posterior. Aunque controlas tu VPC, ClickHouse Cloud sigue requiriendo permisos de IAM para crear y administrar el cluster de Kubernetes, roles de IAM para service accounts, buckets de S3 y otros recursos esenciales de tu cuenta de AWS.
    </Note>

    #### Módulo alternativo de Terraform

    Si prefieres usar Terraform en lugar de CloudFormation, usa el siguiente módulo:

    ```hcl theme={null}
    module "clickhouse_onboarding" {
      source                     = "https://s3.us-east-2.amazonaws.com/clickhouse-public-resources.clickhouse.cloud/tf/byoc.tar.gz"
      byoc_env                   = "production"
      include_vpc_write_permissions = false
    }
    ```
  </Step>

  <Step title="Configura la infraestructura de BYOC" id="set-up-byoc-infrastructure">
    En la consola de ClickHouse Cloud, configura lo siguiente al configurar nueva infraestructura:

    1. En **Configuración de VPC**, selecciona **Use existing VPC**.
    2. Introduce tu **ID de VPC** (p. ej., `vpc-0bb751a5b888ad123`).
    3. Introduce los **ID de las subredes privadas** de las 3 subredes que configuraste antes.
    4. Opcionalmente, introduce los **ID de las subredes públicas** si tu configuración requiere balanceadores de carga con acceso público.
    5. Haz clic en **Set up Infrastructure** para comenzar el aprovisionamiento.

    <Image img="https://mintcdn.com/private-7c7dfe99/REHSqgCLT_igIuJP/images/cloud/reference/byoc-aws-existing-vpc-ui.webp?fit=max&auto=format&n=REHSqgCLT_igIuJP&q=85&s=2749bf6db36338fa3f0fd889c41ee6f8" size="lg" alt="UI de configuración de BYOC de ClickHouse Cloud con Use existing VPC seleccionado" width="1392" height="1598" data-path="images/cloud/reference/byoc-aws-existing-vpc-ui.webp" />

    <Note>
      La configuración de una nueva región puede tardar hasta 40 minutos.
    </Note>
  </Step>
</Steps>

<div id="customer-managed-iam-roles">
  ## Roles de IAM gestionados por el cliente
</div>

Para las organizaciones con requisitos de seguridad avanzados o políticas de cumplimiento estrictas, puede proporcionar sus propios roles de IAM en lugar de que ClickHouse Cloud los cree. Este enfoque le brinda control total sobre los permisos de IAM y le permite aplicar las políticas de seguridad de su organización.

<Info>
  Los roles de IAM gestionados por el cliente están en vista previa privada. Póngase en contacto con el soporte de ClickHouse para habilitar esta funcionalidad para su organización antes de seguir los pasos que aparecen a continuación.
</Info>

Con roles de IAM gestionados por el cliente, usted:

* Crea de antemano los roles de IAM por infraestructura que, de otro modo, ClickHouse Cloud crearía
* Elimina los permisos de escritura de IAM del `ClickHouseManagementRole` usado para el acceso entre cuentas
* Mantiene control total sobre los permisos de los roles y las relaciones de confianza

<Steps>
  <Step title="Configurar el rol de administración sin permisos de escritura de IAM" id="byo-iam-management-role">
    Al realizar la [configuración inicial de BYOC](/docs/es/cloud/reference/byoc/onboarding/standard), desactive los permisos de escritura de IAM en el rol de administración. Con la plantilla de CloudFormation, establezca el parámetro `IncludeIAMWritePermissions` en `false`. Con el módulo de Terraform:

    ```hcl theme={null}
    module "clickhouse_onboarding" {
      source                        = "github.com/ClickHouse/terraform-byoc-onboarding.git//modules/aws?ref=<version>"
      external_id                   = "<external-id-provided-by-clickhouse>"
      include_iam_write_permissions = false
    }
    ```

    Sustituya `<version>` por la etiqueta más reciente de la [página de versiones](https://github.com/ClickHouse/terraform-byoc-onboarding/releases) del módulo; use siempre la última versión.
  </Step>

  <Step title="Crear los roles de IAM por infraestructura" id="byo-iam-per-infra-roles">
    Antes de aprovisionar cada infraestructura de BYOC, cree los roles de IAM necesarios para ella (roles de identidad de pod de EKS, el rol de acceso de ClickHouse a S3 y el rol de administración del plano de datos) con el módulo por infraestructura de [terraform-byoc-onboarding](https://github.com/ClickHouse/terraform-byoc-onboarding):

    ```hcl theme={null}
    module "clickhouse_per_infra_iam" {
      source = "github.com/ClickHouse/terraform-byoc-onboarding.git//modules/aws-per-infra-iam?ref=<version>"

      spoken_name = "<spoken-name-provided-by-clickhouse>"
      region      = "<aws-region-of-the-infrastructure>"
      external_id = "<external-id-provided-by-clickhouse>"
    }
    ```

    Sustituya `<version>` por la etiqueta más reciente de la [página de versiones](https://github.com/ClickHouse/terraform-byoc-onboarding/releases) del módulo; use siempre la última versión.
  </Step>

  <Step title="Mantener actualizados los roles por infraestructura" id="byo-iam-keep-up-to-date">
    <Warning>
      ClickHouse añade periódicamente roles y permisos requeridos por nuevas funcionalidades de la plataforma. Cuando ClickHouse le notifique una actualización, vuelva a aplicar el módulo por infraestructura con la última versión; ejecutar una versión desactualizada puede hacer que fallen el aprovisionamiento y las actualizaciones de su infraestructura de BYOC.
    </Warning>
  </Step>
</Steps>

Para obtener información sobre los roles de IAM que ClickHouse Cloud crea de forma predeterminada, consulte la [Referencia de privilegios de BYOC](/docs/es/products/bring-your-own-cloud/reference/privilege).
