Для подготовки к запуску продукта «Форсайт. Мобильная платформа»:
Откройте консоль одного из главных узлов Kubernetes от имени пользователя fmpadmin. В домашнюю директорию пользователя был загружен архив с образами контейнеров приложения, а также архив с набором скриптов и yaml-файлов для запуска приложения в среде Kubernetes.
Скопируйте архив fmp_v<номер версии>.tgz на рабочие узлы кластера.
Загрузите образы контейнеров в систему:
docker load -i fmp_v<номер версии>.tgz
Примечание. Данный архив распакуйте на всех рабочих узлах кластера.
После успешного импорта удалите архив.
На одном управляющем узле распакуйте архив, содержащий скрипты и yaml-файлы:
% tar –xvzf ./fmp_k8s_v<номер версии>.tar
Перейдите в директорию с распакованными скриптами:
% cd ./ fmp_k8s_v<номер версии>
Отредактируйте содержимое yaml-файла ./storage/ceph-storage-ceph_rbd.yml:
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: fast-rbd
provisioner: kubernetes.io/rbd
parameters:
monitors: 10.30.217.17:6789, 10.30.217.20:6789, 10.30.217.23:6789
adminId: admin
adminSecretName: ceph-secret
adminSecretNamespace: "kube-system"
pool: kube
userId: kube
userSecretName: ceph-secret-kube
В строке monitors укажите IP-адреса или DNS-имена узлов Ceph-кластера с установленной ролью мониторинга. Для просмотра на каких именно узлах установлена эта роль используйте команду:
% sudo ceph -s
Пример результата выполнения команды:
cluster:
id: a997355a-25bc-4749-8f3a-fb07df0f9105
health: HEALTH_OK
services:
mon: 3 daemons, quorum kn1,kn0,kn3
mgr: kn3(active), standbys: kn0
osd: 4 osds: 4 up, 4 in
Строка mon в разделе services указывает на имена узлов с установленной ролью мониторинга.
Добавьте secret-keys распределённого файлового хранилища Ceph в Kubernetes:
Получите ключ администратора Ceph:
% sudo ceph --cluster ceph auth get-key client.admin
Пример результата выполнения команды:
>> AQCvBnVciE8pERAAJoIDoxgtkfYKZnoBS9R6uA==
Скопируйте его в буфер обмена.
Важно. При копировании и последующей вставке ключа в команду для добавления в настройки Kubernetes пробелы не допускаются.
Добавьте полученный ключ в секреты Kubernetes, явно указав его в команде:
% kubectl create secret generic
ceph-secret --type="kubernetes.io/rbd" \
--from-literal=key='AQCvWnVciE7pERAAJoIDoxgtkfYKMnoBB9Q6uA=='
--namespace=kube-system
Результат выполнения команды:
secret/ceph-secret created
Создайте отдельный пул для узлов Kubernetes в кластере Ceph. Созданный пул будет использоваться в RBD на узлах:
% sudo ceph --cluster ceph osd pool create kube 32 32
Создайте клиентский ключ. В кластере Ceph включена аутентификация Ceph:
% sudo ceph --cluster ceph auth get-or-create client.kube mon 'allow r' osd 'allow rwx pool=kube'
Получите ключ client.kube:
% sudo ceph --cluster ceph auth get-key client.kube
Создайте новый секрет в пространстве имён проекта:
% kubectl create secret generic
ceph-secret-kube --type="kubernetes.io/rbd" \
--from-literal=key='AQC6DX1cAJD3LRAAUC2YpA9VSBzTsAAeH30ZrQ==' --namespace=fmpns
После выполнения действий запустите продукт «Форсайт. Мобильная платформа».
См. также:
Подготовка среды для продукта «Форсайт. Мобильная платформа» | Запуск продукта «Форсайт. Мобильная платформа»