إضافة سر سحب 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.

  1. إحضار البيانات السرية المسماة 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>"
            }
        }
    }
    
  2. انتقل إلى مدخل إدارة نظام مجموعة 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"
            }
        }
    }
    
  3. قم بتحرير ملف سحب البيانات السرية الذي حصلت عليه من مجموعتك عن طريق إضافة في الإدخالات الموجودة في سر سحب 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>"
            }
        }
    }
    
  4. تأكد من أن الملف 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

بعد تعيين السر، تكون مستعدا لتمكين مشغلي Red Hat المعتمدين.

تعديل ملفات التكوين

تعديل الكائنات التالية لتمكين عوامل تشغيل Red Hat.

أولا، قم بتعديل ملف تكوين عامل تشغيل العينات. بعد ذلك، يمكنك تشغيل الأمر التالي لتحرير ملف التكوين:

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

ثانيا، قم بتشغيل الأمر التالي لتحرير ملف تكوين مركز المشغل:

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

احفظ الملف لتطبيق عمليات التحرير.

التحقق من أن سرك يعمل

بعد إضافة سر السحب وتعديل ملفات التكوين الصحيحة، يمكن أن يستغرق تحديث نظام المجموعة عدة دقائق. للتحقق من تحديث نظام المجموعة الخاص بك، قم بتشغيل الأمر التالي لإظهار عوامل التشغيل المعتمدة ومصادر عوامل تشغيل 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

إذا لم تشاهد المشغلين المعتمدين ومشغلي Red Hat، فانتظر بضع دقائق وحاول مرة أخرى.

للتأكد من تحديث سر السحب الخاص بك ويعمل بشكل صحيح، افتح OperatorHub وتحقق من وجود أي عامل تشغيل تم التحقق منه بواسطة Red Hat. على سبيل المثال، تحقق لمعرفة ما إذا كان OpenShift Container Storage Operator متوفرا، وتحقق مما إذا كان لديك أذونات للتعيين.

الخطوات التالية

لمعرفة المزيد حول أسرار سحب Red Hat، راجع استخدام أسرار سحب الصور.

لمعرفة المزيد حول Red Hat OpenShift 4، راجع وثائق Red Hat OpenShift Container Platform.