Установка OpenStack Cloud Controller Manager

Сбор необходимых параметров

1. Project ID

Получите из главной страницы личного кабинета: https://aitucloud.ismet.kz/cabinet/

2. Subnet ID Kubernetes кластера

Получите из раздела Kubernetes: https://aitucloud.ismet.kz/cabinet/kubernetes

3. External Network ID

Получите из раздела Роутеры: https://aitucloud.ismet.kz/cabinet/router

Установка Cloud Controller Manager

1. Конфигурация ccm-values.yaml

Заполните поля, включая логин и пароль от личного кабинета. Уже заполненные поля оставьте без изменений.

ccm-values.yaml
nodeSelector: null
 
logVerbosityLevel: 2
 
secret:
  enabled: true
  create: true
  name: cloud-config
 
cloudConfig:
  global:
    username: "<USERNAME>"
    password: "<PASSWORD>"
    region: "kz-alm-1"
    tenant-id: "<PROJECT_ID>"
    domain-name: "Public"
    user-domain-name: "Public"
    tls-insecure: true
  loadBalancer:
    subnet-id: "<KUBERNETES_SUBNET_ID>"
    floating-network-id: "<EXTERNAL_NETWORK_ID>"

2. Конфигурация csi-values.yaml

csi-values.yaml
logVerbosityLevel: 2
 
secret:
  enabled: true
  hostMount: false
  create: false
  name: cloud-config
  filename: cloud.conf

Установка

# Добавление Helm repository
helm repo add cpo https://kubernetes.github.io/cloud-provider-openstack
helm repo update
 
# Проверка доступных версий
helm search repo cpo/openstack-cloud-controller-manager --versions
helm search repo cpo/openstack-cinder-csi --versions
 
# Установка Cloud Controller Manager
helm install openstack-ccm cpo/openstack-cloud-controller-manager --namespace kube-system --values ccm-values.yaml
 
# Установка Cinder CSI
helm install cinder-csi cpo/openstack-cinder-csi --namespace kube-system --values csi-values.yaml
 
# Дождитесь когда все pod-ы перейдут в состояние Running:
kubectl -n kube-system get po

После запуска pod-ов появится интеграция с openstack. Для persistent volumes используйте StorageClass, который появится в kubernetes. Посмотреть доступные можно командой:

kubectl get storageclass

Теперь можно установить ingress-nginx и cert-manager. Инструкцию с рекомендуемыми параметрами можно найти в следующей статье:

Установка Ingress Nginx и CertManager