Для загрузки образов мобильной платформы в локальное хранилище Docker-образов:
Убедитесь, что на выделенном компьютере выполняются условия:
доступна сеть Интернет;
установлена платформа контейнеризации Docker;
содержится сертификат шифрования registry.crt, сгенерированный при установке локального хранилища, в папке certs;
доступно локальное хранилище.
Объявите переменную REGISTRY_HOST:
export REGISTRY_HOST=<IP-адрес рабочего узла>:5000
Авторизуйтесь в локальном хранилище Docker-образов:
docker login $REGISTRY_HOST
Скачайте архив cluster_images*.tgz.
Примечание. Для получения архива обратитесь в техническую поддержку по адресу support@fsight.ru или через сервисы технической поддержки, которые доступны после регистрации на сайте.
Установите образы мобильной платформы в локальном хранилище:
docker load -i ./cluster_images_v23.12.<порядковый номер версии>.tgz
Объявите переменную FMP_IMAGES:
FMP_IMAGES=$(tar -xzf ./cluster_images_v23.12.<порядковый номер версии>.tgz
manifest.json --to-command='cat' \
| grep -oP '(?<=("RepoTags":\["))(.*?)(?=("\]))'
\
| sed 's/"//g; s/'"'"'//g; s/,/\n/g;')
Установите теги и выполните публикацию образов мобильной платформы в реестре Docker:
for orig_image in ${FMP_IMAGES[*]};
do
tag_image=$(echo ${orig_image} | awk -v REGISTRY=${REGISTRY_HOST} \
'{
n=split($0,arr,"/");
print REGISTRY "/" arr[n-1] "/" arr[n]
}')
echo -e "\nТэгируем ${orig_image} -> ${tag_image}"
docker tag ${orig_image} ${tag_image}
echo -e "\nПушим ${tag_image}"
docker push $tag_image
done
Проверьте доступ к локальному хранилищу:
curl --cacert certs/registry.crt https://<IP-адрес рабочего узла>:5000/v2/_catalog
После выполнения запроса в ответе должно возвращаться содержимое каталога, например:
{"repositories":["cattle-system/mirrored-bci-micro","cattle-system/rancher","cattle-system/rancher-webhook","cattle-system/shell","cert-manager/cert-manager-acmesolver","cert-manager/cert-manager-cainjector","cert-manager/cert-manager-controller","cert-manager/cert-manager-ctl","cert-manager/cert-manager-webhook","fmp/celery-exporter","fmp/elasticsearch","fmp/elasticsearch-exporter","fmp/fluentd","fmp/kibana","fmp/kubectl","fmp/minio","fmp/nginx","fmp/nginx-exporter","fmp/redis","fmp/redis-exporter","fmp/redis-sentinel","fmp/server","fmp-monitoring/grafana","monitoring/alertmanager","monitoring/kube-state-metrics","monitoring/kube-webhook-certgen","monitoring/node-exporter","monitoring/prometheus","monitoring/prometheus-config-reloader","monitoring/prometheus-operator","ongres/envoy","ongres/kubectl","ongres/patroni","ongres/pgbouncer","ongres/postgres-util","ongres/prometheus-postgres-exporter","stackgres/admin-ui","stackgres/cluster-controller","stackgres/jobs","stackgres/operator","stackgres/restapi"]}
После выполнения действий образы мобильной платформы будут загружены в локальное хранилище.
Далее перейдите к установке продукта «Форсайт. Мобильная платформа» на кластере.
См. также:
Подготовка и развёртывание отказоустойчивого кластера на основе Deckhouse | Установка продукта «Форсайт. Мобильная платформа» на кластере