במסמך הזה מוסבר איך להגדיר את Apigee Hybrid כך שישתמש בקובצי אימג' של קונטיינר ממאגר פרטי של קובצי אימג' של קונטיינר.
סקירה כללית
כל תמונות זמן הריצה של Apigee Hybrid מתארחות ב-
Google Cloud Container Registry (GCR). אם מסיבה כלשהי אתם רוצים להשתמש במאגר פרטי של קונטיינרים של תמונות, אתם יכולים להוריד את התמונות מ-GCR, להעלות אותן למאגר הפרטי ולשנות את מיקומי התמונות שמוגדרים כברירת מחדל בקובץ overrides.yaml.
שלבי ההגדרה
כדי להשתמש במאגר פרטי של קונטיינרים עם תמונות בשביל תמונות Apigee hybrid: כדי לבצע את השלבים האלה ולהשתמש בתמונות במאגר הפרטי, צריך להכיר את תהליך ההתקנה של Apigee hybrid. בתרחיש טיפוסי, תתכננו להגדיר את המאגר הפרטי כחלק מהתקנה היברידית חדשה.
- מעבירים את תמונות Apigee hybrid מ-GCR למאגר הפרטי. מומלץ להשתמש בכלי apigee-push-pull כדי לבצע את השלב הזה.
אם אתם מעדיפים לבצע את השלב הזה באופן ידני, אתם צריכים להתקין את Docker ולהשתמש בפקודה
docker pullכמו שמוצג בהמשך. חשוב להוסיף את התג הנכון לכל שם תמונה. לדוגמה, התג שלapigee-synchronizerהוא1.11.2, כמו שמוצג בהמשך.- כדי לקבל רשימה עדכנית של כל התמונות בפרויקט הנוכחי, משתמשים באפשרות
--listשל כלי השירותapigee-pull-push.shבספרייהapigeectl/tools/:apigee-pull-push.sh --list
- משתמשים בפקודה
docker pullכדי לשלוף את התמונות שדרושות למרחבי השמותapigee-systemו-apigee. לדוגמה:docker pull gcr.io/apigee-release/hybrid/apigee-installer:1.11.2
ברשימה הבאה מפורטות התמונות שנדרשות לכל מרחב שמות:
מרחב שמות
apigee-systemapigee-installerapigee-kube-rbac-proxyapigee-operators
מרחב השמות של
apigeeapigee-asm-ingressapigee-asm-istiodapigee-cassandra-backup-utilityapigee-connect-agentapigee-diagnostics-collectorapigee-diagnostics-runnerapigee-envoyapigee-fluent-bitapigee-hybrid-cassandra-clientapigee-hybrid-cassandraapigee-mart-serverapigee-prom-prometheusapigee-prometheus-adapterapigee-redisapigee-runtimeapigee-stackdriver-logging-agentapigee-stackdriver-prometheus-sidecarapigee-synchronizerapigee-udcaapigee-watcher
- אחרי שמושכים את התמונות ומתייגים אותן, מעלים אותן למאגר הפרטי. מידע נוסף זמין במאמר בנושא docker push.
הפלט אמור להיראות כך:
apigee: gcr.io/apigee-release/hybrid/apigee-mart-server:1.11.2 gcr.io/apigee-release/hybrid/apigee-synchronizer:1.11.2 gcr.io/apigee-release/hybrid/apigee-runtime:1.11.2 gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra-client:1.11.2 gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra:1.11.2 gcr.io/apigee-release/hybrid/apigee-cassandra-backup-utility:1.11.2 gcr.io/apigee-release/hybrid/apigee-udca:1.11.2 gcr.io/apigee-release/hybrid/apigee-connect-agent:1.11.2 gcr.io/apigee-release/hybrid/apigee-watcher:1.11.2 gcr.io/apigee-release/hybrid/apigee-operators:1.11.2 gcr.io/apigee-release/hybrid/apigee-installer:1.11.2 gcr.io/apigee-release/hybrid/apigee-redis:1.11.2 gcr.io/apigee-release/hybrid/apigee-diagnostics-collector:1.11.2 gcr.io/apigee-release/hybrid/apigee-diagnostics-runner:1.11.2 gcr.io/apigee-release/hybrid/apigee-mint-task-scheduler:1.11.2 third party: gcr.io/apigee-release/hybrid/apigee-stackdriver-logging-agent:1.10.5 gcr.io/apigee-release/hybrid/apigee-prom-prometheus:v2.52.0 gcr.io/apigee-release/hybrid/apigee-stackdriver-prometheus-sidecar:0.9.0 gcr.io/apigee-release/hybrid/apigee-kube-rbac-proxy:v0.18.0 gcr.io/apigee-release/hybrid/apigee-envoy:v1.27.0 gcr.io/apigee-release/hybrid/apigee-prometheus-adapter:v0.12.0 gcr.io/apigee-release/hybrid/apigee-asm-ingress:1.18.7-asm.26-distroless gcr.io/apigee-release/hybrid/apigee-asm-istiod:1.18.7-asm.26-distroless gcr.io/apigee-release/hybrid/apigee-fluent-bit:3.0.3 - כדי לקבל רשימה עדכנית של כל התמונות בפרויקט הנוכחי, משתמשים באפשרות
- יוצרים סוד של Kubernetes במרחבי השמות
apigeeו-apigee-system.אם מרחבי השמות האלה לא קיימים באשכול, צריך ליצור אותם לפני שמבצעים את השלב הזה.
שלבים ליצירת Secret מפורטים במאמר יצירת Secret באמצעות הזנת פרטי כניסה בשורת הפקודה. לדוגמה, כדי ליצור Secret במרחב השמות
apigee-system:kubectl create secret docker-registry SECRET_NAME -n apigee-system \ --docker-server=YOUR_REGISTRY_SERVER \ --docker-username=YOUR_DOCKER_USERNAME \ --docker-email=YOUR_DOCKER_EMAIL \ --docker-password="YOUR_DOCKER_PASSWORD)"
כדי ליצור Secret במרחב השמות
apigee:kubectl create secret docker-registry SECRET_NAME -n apigee \ --docker-server=YOUR_REGISTRY_SERVER \ --docker-username=YOUR_DOCKER_USERNAME \ --docker-email=YOUR_DOCKER_EMAIL \ --docker-password="YOUR_DOCKER_PASSWORD)"
- מוסיפים את הסוד לקובץ
overrides.yaml. הסבר על יצירת קובץ ההחלפות מופיע בשלבי ההתקנה ההיברידית. פרטים נוספים זמינים במאמר הגדרת האשכול.imagePullSecrets: - name: SECRET_NAME
- מעדכנים את קובץ
overrides.yamlעם כתובות URL של תמונות שמאוחסנות במאגר הפרטי. לכל רכיב שמאוחסן במאגר יש רכיבimage:url. משתמשים ברכיב הזה כדי לציין את כתובת ה-URL של כל תמונה ברכיב. לדוגמה:mart: serviceAccountPath: /installdir/hybrid-files/service-accounts/hybrid-apigee-non-prod.json image: url: my-docker.pkg.dev/hybrid-1/registry-name/apigee-mart-serverצריך לפעול לפי התבנית הזו כדי לעדכן כל רכיב היברידי ברמה העליונה בקובץ
overrides.yamlעם כתובת ה-URL של תמונת המאגר הפרטי שלו. דוגמה מלאה לקובץ ביטול מסופקת עם ההתקנה ההיברידית בספרייה$APIGEECTL_HOME/examples/private-overrides.yaml.
עכשיו אפשר להשלים התקנה היברידית חדשה באמצעות התמונות הפרטיות, או לעדכן את ההתקנה הקיימת. מידע נוסף זמין במאמר שלבי ההתקנה של Apigee hybrid.
התקנת cert-manager ממאגר פרטי
כדי להתקין את cert-manager מהמאגר הפרטי, אפשר לעיין במאמר בנושא התקנה באמצעות Helm.
חשוב להתקין את אותה הגרסה של cert-manager שצוינה בהוראות להתקנת Apigee hybrid כדי להבטיח תאימות.