Добавление или изменение секрета опроса Red Hat в кластере Azure Red Hat OpenShift 4
В этом руководстве описывается добавление или изменение секрета опроса Red Hat для существующего кластера Azure Red Hat OpenShift (ARO) 4.x.
При первом создании кластера можно добавить свой секрет опроса. Дополнительные сведения о создании кластера ARO с секретом опроса Red Hat см. в статье Создание кластера Azure Red Hat OpenShift 4.
Подготовка к работе
В этом руководстве предполагается, что кластер Azure Red Hat OpenShift 4 уже существует. Убедитесь в наличии доступа к кластеру с правами администратора.
Подготовка секрета опроса
При создании кластера ARO без добавления секрета опроса Red Hat такой секрет создается в кластере автоматически. Однако этот секрет по запросу заполнен не полностью.
В этом разделе описано, как изменить этот секрет опроса, используя дополнительные значения из секрета по запросу Red Hat.
Извлеките секрет с именем
pull-secret
в пространстве именopenshift-config
и сохраните его в отдельный файл, выполнив следующую команду:oc get secrets pull-secret -n openshift-config -o template='{{index .data ".dockerconfigjson"}}' | base64 -d > pull-secret.json
Результат должен быть аналогичен следующему. (Обратите внимание, что фактическое значение секрета было удалено.)
{ "auths": { "arosvc.azurecr.io": { "auth": "<my-aroscv.azurecr.io-secret>" } } }
Перейдите на портал диспетчера кластеров Red Hat OpenShift и выберите Скачать секрет опроса. Секрет опроса для Red Hat будет выглядеть следующим образом. (Обратите внимание, что фактические значения секрета были удалены.)
{ "auths": { "cloud.openshift.com": { "auth": "<my-crc-secret>", "email": "klamenzo@redhat.com" }, "quay.io": { "auth": "<my-quayio-secret>", "email": "klamenzo@redhat.com" }, "registry.connect.redhat.com": { "auth": "<my-registry.connect.redhat.com-secret>", "email": "klamenzo@redhat.com" }, "registry.redhat.io": { "auth": "<my-registry.redhat.io-secret>", "email": "klamenzo@redhat.com" } } }
Измените файл секрета опроса, полученный из кластера, добавив записи, найденные в секрете опроса Red Hat.
Внимание
Включение записи
cloud.openshift.com
из секрета опроса Red Hat приведет к тому, что кластер начнет отправлять данные телеметрии в Red Hat. Включайте этот раздел, только если нужно отправлять данные телеметрии. В противном случае пропустите следующий раздел.{ "cloud.openshift.com": { "auth": "<my-crc-secret>", "email": "klamenzo@redhat.com" }
Внимание
Не удаляйте и не изменяйте запись
arosvc.azurecr.io
в секрете опроса. Этот раздел необходим для правильной работы кластера."arosvc.azurecr.io": { "auth": "<my-aroscv.azurecr.io-secret>" }
Окончательный файл должен выглядеть примерно следующим образом. (Обратите внимание, что фактические значения секрета были удалены.)
{ "auths": { "cloud.openshift.com": { "auth": "<my-crc-secret>", "email": "klamenzo@redhat.com" }, "quay.io": { "auth": "<my-quayio-secret>", "email": "klamenzo@redhat.com" }, "registry.connect.redhat.com": { "auth": "<my-registry.connect.redhat.com-secret>", "email": "klamenzo@redhat.com" }, "registry.redhat.io": { "auth": "<my-registry.redhat.io-secret>", "email": "klamenzo@redhat.com" }, "arosvc.azurecr.io": { "auth": "<my-aroscv.azurecr.io-secret>" } } }
Убедитесь, что файл является правильным JSON-файлом. Проверить правильность формата JSON можно разными способами. В следующем примере используется jq:
cat pull-secret.json | jq
Примечание.
Если в файле есть ошибка, она отображается как
parse error
.
Добавление секрета опроса в кластер
Выполните следующую команду, чтобы изменить секрет опроса.
Примечание.
В ARO 4.9 или более ранней версии эта команда приведет к перезапуску узлов кластера по одному по мере их обновления. В версии ARO 4.10 или более поздней перезагрузка не будет активирована.
oc set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=./pull-secret.json
Убедитесь, что секрет извлечения установлен
oc exec -n openshift-apiserver $(oc get pod -n openshift-apiserver -o jsonpath="{.items[0].metadata.name}") -- cat /var/lib/kubelet/config.json
После настройки секрета можно включить операторы Certified в Red Hat.
Изменение файлов конфигурации
Измените следующие объекты, чтобы включить операторы Red Hat.
Сначала измените файл конфигурации оператора Samples. Затем можно выполнить следующую команду, чтобы изменить файл конфигурации:
oc edit configs.samples.operator.openshift.io/cluster -o yaml
Измените значение параметра spec.managementState
с Removed
на Managed
.
В следующем фрагменте кода YAML показаны только соответствующие разделы измененного файла YAML:
apiVersion: samples.operator.openshift.io/v1
kind: Config
metadata:
...
spec:
architectures:
- x86_64
managementState: Managed
Во-вторых, выполните следующую команду, чтобы изменить файл конфигурации оператора Hub:
oc edit operatorhub cluster -o yaml
Измените Spec.Sources.Disabled
значение на true
false
любые источники, которые вы хотите включить.
В следующем фрагменте кода YAML показаны только соответствующие разделы измененного файла YAML:
Name: cluster
...
dd3310b9-e520-4a85-98e5-8b4779ee0f61
Spec:
Sources:
Disabled: false
Name: certified-operators
Disabled: false
Name: redhat-operators
Сохраните файл, чтобы применить изменения.
Проверка работоспособности секрета
Для обновления кластера после добавления секрета допроса и изменения правильных файлов конфигурации может потребоваться несколько минут. Чтобы проверить, обновился ли кластер, выполните следующую команду, чтобы показать доступные источники операторов Certified и операторов Red Hat:
$ oc get catalogsource -A
NAMESPACE NAME DISPLAY TYPE PUBLISHER AGE
openshift-marketplace certified-operators Certified Operators grpc Red Hat 10s
openshift-marketplace community-operators Community Operators grpc Red Hat 18h
openshift-marketplace redhat-operators Red Hat Operators grpc Red Hat 11s
Если операторы Certified и Red Hat не видны, подождите несколько минут и повторите попытку.
Чтобы убедиться, что секрет опроса обновлен и работает правильно, откройте OperatorHub и проверьте любой проверенный оператор Red Hat. Например, проверьте, доступен ли оператор хранилища контейнера OpenShift, и проверьте, есть ли у вас разрешения на установку.
Следующие шаги
Дополнительные сведения о секретах опроса для Red Hat см. в статье Использование секретов опроса образа.
Дополнительные сведения о Red Hat OpenShift 4 см. в документации платформы контейнеров Red Hat OpenShift.