Compare languages | Cloud provider — VMware Cloud Director: FAQ

Как поднять гибридный кластер?

How do I create a hybrid cluster?

Гибридный кластер представляет собой объединенные в один кластер bare-metal-узлы и узлы VMware Cloud Director. Для создания такого кластера необходимо наличие L2-сети между всеми узлами кластера.

A hybrid cluster combines bare metal and VMware Cloud Director nodes. To create such a cluster, you will need an L2 network between all nodes of the cluster.

Чтобы поднять гибридный кластер, необходимо:

To create a hybrid cluster, you need to:

  1. Включите DHCP-сервер для внутренней сети.
  1. Enable DHCP-server in internal network.
  1. Подготовьте файл с конфигурацией провайдера, заменяя обозначения на валидные для вашего облака:
  1. Prepare a file with the provider configuration, replacing the designations with those valid for your cloud

yaml apiVersion: deckhouse.io/v1 internalNetworkCIDR: kind: VCDClusterConfiguration layout: Standard mainNetwork: masterNodeGroup: instanceClass: etcdDiskSizeGb: 10 mainNetworkIPAddresses:

  • 192.168.199.2 rootDiskSizeGb: 20 sizingPolicy: not_exists storageProfile: not_exists template: not_exists replicas: 1 organization: provider: insecure: true password: server: username: sshPublicKey: virtualApplicationName: virtualDataCenter:

yaml apiVersion: deckhouse.io/v1 internalNetworkCIDR: kind: VCDClusterConfiguration layout: Standard mainNetwork: masterNodeGroup: instanceClass: etcdDiskSizeGb: 10 mainNetworkIPAddresses:

  • 192.168.199.2 rootDiskSizeGb: 20 sizingPolicy: not_exists storageProfile: not_exists template: not_exists replicas: 1 organization: provider: insecure: true password: server: username: sshPublicKey: virtualApplicationName: virtualDataCenter:

Обращаем внимание, что masterNodeGroup является обязательным, но его можно оставить как есть.

  1. Кодируем полученый файл в base64.
  2. Создаем секрет с следующим содержимым:

Please note that masterNodeGroup is required, but can be left as is.

yaml

  1. Encode the resulting file in base64. 1
  2. Create a secret with the following content:

apiVersion: v1 data: cloud-provider-cluster-configuration.yaml: cloud-provider-discovery-data.json: eyJhcGlWZXJzaW9uIjoiZGVja2hvdXNlLmlvL3YxIiwia2luZCI6IlZDRENsb3VkUHJvdmlkZXJEaXNjb3ZlcnlEYXRhIiwiem9uZXMiOlsiZGVmYXVsdCJdfQo= kind: Secret metadata: labels: heritage: deckhouse name: d8-provider-cluster-configuration name: d8-provider-cluster-configuration namespace: kube-system type: Opaque

yaml

  1. Включаем модуль cloud-provider-vcd:

apiVersion: v1 data: cloud-provider-cluster-configuration.yaml: cloud-provider-discovery-data.json: eyJhcGlWZXJzaW9uIjoiZGVja2hvdXNlLmlvL3YxIiwia2luZCI6IlZDRENsb3VkUHJvdmlkZXJEaXNjb3ZlcnlEYXRhIiwiem9uZXMiOlsiZGVmYXVsdCJdfQo= kind: Secret metadata: labels: heritage: deckhouse name: d8-provider-cluster-configuration name: d8-provider-cluster-configuration namespace: kube-system type: Opaque

shell

  1. Enable the module cloud-provider-vcd:

kubectl -n d8-system exec -it deployments/deckhouse – deckhouse-controller module enable cloud-provider-vcd

shell

 

kubectl -n d8-system exec -it deployments/deckhouse – deckhouse-controller module enable cloud-provider-vcd