В этой статье:
Настройка доступа при создании тома постоянного хранения и его заявки
При развёртывании отказоустойчивого кластера на основе Deckhouse могут возникнуть следующие проблемы:
кластер недоступен, если в системе используются самоподписанные сертификаты;
недоступно создание тома постоянного хранения (Persistent Volume) и его заявки (Persistent Volume Claim) хранилищем Longhorn, для некоторых подов недоступна запись;
прерывание установки продукта «Форсайт. Мобильная платформа» на кластере;
сброс соединения при установке продукта «Форсайт. Мобильная платформа» на кластере.
Для настройки доступа к кластеру при использовании самоподписанных сертификатов:
Откройте на редактирование модуль конфигурации global:
kubectl edit mc global
Добавьте подраздел «https» в разделы «spec > settings > modules»:
https:
certManager:
clusterIssuerName: selfsigned
mode: CertManager
Например:
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: global
spec:
version: 1
settings:
modules:
publicDomainTemplate: '%s.dk1.internal'
https:
certManager:
clusterIssuerName:
selfsigned
mode: CertManager
Откройте на редактирование модуль конфигурации user-authn:
kubectl edit mc user-authn
Удалите подраздел «https»:
https:
global:
kubeconfigGeneratorMasterCA: ""
mode: Global
Измените значение параметра dexCAMode с «DoNotNeed» на «FromIngressSecret».
Например:
spec:
enabled: true
settings:
controlPlaneConfigurator:
dexCAMode: FromIngressSecret
publishAPI:
enable: true
version: 1
Дождитесь прохождения всех очередей Deckhouse:
sudo /opt/deckhouse/bin/kubectl -n d8-system exec -it deploy/deckhouse -c deckhouse -- deckhouse-controller queue list
После выполнения действий повторите авторизацию, если очередь Deckhouse пуста.
По умолчанию в мобильной платформе выключены политики управления безопасностью подов и контейнеров.
Для настройки доступа при создании тома постоянного хранения (Persistent Volume) и его заявки (Persistent Volume Claim):
Откройте файл fmp/chart/values.yaml и закомментируйте строки:
containerSecurityContext:
enabled: false
podSecurityContext:
enabled: false
При установке продукта «Форсайт. Мобильная платформа» может возникнуть ошибка:
* admission webhook "sgcluster.mutating-webhook.stackgres.io" denied the request: Failure executing: POST at: https://10.222.0.1:443/apis/stackgres.io/v1/namespaces/fmp/sgpoolconfigs. Message: sgpoolconfigs.stackgres.io "generated-from-default-1712323110835" already exists. Received status: Status(apiVersion=v1, code=409, details=StatusDetails(causes=[], group=stackgres.io, kind=sgpoolconfigs, name=generated-from-default-1712323110835, retryAfterSeconds=null, uid=null, additionalProperties={}), kind=Status, message=sgpoolconfigs.stackgres.io "generated-from-default-1712323110835" already exists, metadata=ListMeta(_continue=null, remainingItemCount=null, resourceVersion=null, selfLink=null, additionalProperties={}), reason=AlreadyExists, status=Failure, additionalProperties={}).
Для решения проблемы переустановите StackGres, предварительно удалив продукт «Форсайт. Мобильная платформа».
Если сбрасываются соединения при установке продукта «Форсайт. Мобильная платформа», то увеличьте таймаут и уберите ограничение на тело запроса в ingress:
kubectl annotate ingress -n fmp --all --overwrite
nginx.ingress.kubernetes.io/proxy-body-size='0'
kubectl annotate ingress -n fmp --all --overwrite nginx.ingress.kubernetes.io/proxy-read-timeout='3600s'
kubectl annotate ingress -n fmp --all --overwrite nginx.ingress.kubernetes.io/proxy-send-timeout='3600s'
См. также:
Подготовка и развёртывание отказоустойчивого кластера на основе Deckhouse