Управляемая клиентом VPC (BYO-VPC) для AWS
1
Настройте существующую VPC
- Пометьте VPC тегом
clickhouse-byoc="true". - Выделите как минимум 3 приватные подсети в 3 разных зонах доступности, которые будет использовать ClickHouse Cloud.
- Убедитесь, что каждая подсеть имеет минимальный CIDR-диапазон
/23(например, 10.0.0.0/23), чтобы обеспечить достаточное количество IP-адресов для развертывания ClickHouse. - Добавьте в каждую подсеть теги
kubernetes.io/role/internal-elb=1иclickhouse-byoc="true", чтобы обеспечить корректную настройку балансировщика нагрузки.
2
Настройте конечную точку шлюза S3
Если в вашей VPC еще не настроена конечная точка шлюза S3, ее нужно создать, чтобы обеспечить безопасное приватное взаимодействие между вашей VPC и Amazon S3. Эта конечная точка позволяет сервисам ClickHouse обращаться к S3 без выхода в публичный интернет. Пример конфигурации приведен на снимке экрана ниже.3
Убедитесь в наличии сетевой связности
Исходящий доступ в интернет Ваша VPC должна как минимум разрешать исходящий доступ в интернет, чтобы компоненты ClickHouse BYOC могли взаимодействовать с control plane Tailscale. Tailscale используется для обеспечения безопасной zero-trust-сети для приватных операций управления. Для первоначальной регистрации и настройки Tailscale требуется доступ к публичному интернету — напрямую или через NAT gateway. Это подключение необходимо для сохранения как конфиденциальности, так и безопасности вашего развертывания BYOC.Разрешение DNS Убедитесь, что в вашей VPC работает разрешение DNS и что стандартные DNS-имена не блокируются, не перехватываются и не переопределяются. ClickHouse BYOC использует DNS для разрешения адресов серверов управления Tailscale и конечных точек сервисов ClickHouse. Если DNS недоступен или настроен неправильно, сервисы BYOC могут не подключаться или работать некорректно.4
Настройте учетную запись AWS
При первоначальной настройке BYOC создается привилегированная роль IAM (ClickHouseManagementRole), которая позволяет контроллерам BYOC из ClickHouse Cloud управлять вашей инфраструктурой. Это можно сделать с помощью CloudFormation template или модуля Terraform.При развертывании в конфигурации BYO-VPC установите параметр IncludeVPCWritePermissions в значение false, чтобы ClickHouse Cloud не получил разрешения на изменение вашей VPC, которой вы управляете самостоятельно.Бакеты хранилища, Kubernetes-кластер и вычислительные ресурсы, необходимые для запуска ClickHouse, не входят в эту первоначальную настройку. Они будут подготовлены на следующем шаге. Хотя вы управляете своей VPC, ClickHouse Cloud по-прежнему нужны разрешения IAM для создания и управления Kubernetes-кластером, ролями IAM для service accounts, S3 бакетами и другими важными ресурсами в вашей учетной записи AWS.
Альтернативный модуль Terraform
Если вы предпочитаете использовать Terraform вместо CloudFormation, используйте следующий модуль:5
Настройте инфраструктуру BYOC
В консоли ClickHouse Cloud перейдите на страницу настройки BYOC и укажите следующее:- В разделе VPC Configuration выберите Use existing VPC.
- Введите свой VPC ID (например,
vpc-0bb751a5b888ad123). - Введите Private subnet IDs для 3 подсетей, которые вы настроили ранее.
- При необходимости введите Public subnet IDs, если в вашей конфигурации требуются общедоступные балансировщики нагрузки.
- Нажмите Setup Infrastructure, чтобы начать подготовку инфраструктуры.
Настройка нового региона может занять до 40 минут.
Роли IAM, управляемые клиентом
Роли IAM, управляемые клиентом, находятся в стадии закрытой предварительной версии. Если вам нужна эта возможность, свяжитесь с ClickHouse Support, чтобы обсудить ваши конкретные требования и сроки.Когда эта возможность станет доступна, вы сможете:
- Предоставлять предварительно настроенные роли IAM, которые ClickHouse Cloud сможет использовать
- Удалять разрешения на запись из IAM-разрешений, связанных с
ClickHouseManagementRole, которая используется для межаккаунтного доступа - Сохранять полный контроль над разрешениями ролей и отношениями доверия