מבוא

פיתוח יישומים מודרני דורש גמישות, קנה מידה, ועלויות יעילות.אדריכלות ענן היברידית - שילוב פרטי על-premises תשתיות עם שירותי ענן ציבוריים - מעבר לפתרון רב עוצמה עבור ארגונים כי צריך לאזן אבטחה, ביצועים וציות רגולטורי. Docker, פלטפורמת המיכל הסטנדרטית בתעשייה כדי להפיץ יישומים סטנדרטיים של פיתוח ענן היברידי, מיכלים פועל באופן עקבי על פני כל סביבה, מרכזי פיתוח ענן, או תכנות גמישה, באמצעות מערכת ההפעלה הטובה ביותר, באמצעות פיתוח אבטחה משולבת, מערכת ההפעלה הטובה ביותר, פיתוח אחסון, מערכת ההפעלה של AWS, או מערכת ההפעלה הטובה ביותר, פיתוח אבטחה משולבת, פיתוח ענן, פיתוח רב-מתאים משולבת, פיתוח ענן, מערכת ההפעלה שלך, פיתוח רב-שלמת, פיתוח ענן רב-מתאים, באמצעות מדריך אבטחה משולבת, פיתוח רב-מסוגלומיים, או פלטפורמה יעילה ביותר, פיתוח רב-מתאים היברידית, פיתוח ענן, באמצעות פיתוח ענן, פיתוח ענן, פיתוח ענן, פיתוח ענן, פיתוח ענן, פיתוח רב-מחדש, פיתוח רב-מחדש, פיתוח רב-מחדש, פיתוח ענן רב-מחדש, פיתוח רב-מחדש, פיתוח רב-מחדש, פיתוח ענן רב-מחדש, פיתוח רב-מחדש, פיתוח רב-מחדש, פיתוח ענן

הבנה של הענן ההיברידי ו-Docker

ענן היברידי מתייחס לשילוב של משאבי ענן פרטיים (בין אם על-ידי קדם או מתארח בסביבה חד-פעמית) עם שירותי ענן ציבוריים מספקים כגון AWS, Azure, או Google Cloud. מודל זה מאפשר לארגונים לשמור על עומסי עבודה רגישים ונתונים על תשתיות פרטיות תוך ניצול גמישות וחדשנות של עננים ציבוריים לתפוקה, ניתוח או שיקום.

Docker מכולות לארוז יישום יחד עם התלויות, הספריות והתצורה שלה לחפץ יחיד, בלתי מודע.בידוד זה מבטיח את היישום פועל זהה ללא קשר למערכת ההפעלה הבסיסית או ספק הענן.

  • (ב) ,0) ,PortabilityFLT:1 - לפתח מקומית, לפרוס לכל ענן או בשרת ללא שינוי.
  • (ב) ,0) ,ConsistencyFLT:1 - ביטול בעיות "זה עובד על המכונה שלי" על ידי משלוח של הסביבה המדויקת של זמן ריצה.
  • (ב) ,0) מקורות יעילות של LT:1 - כולל את הקרנל של מערכת ההפעלה המארחת, צמצום פניות בהשוואה למכונות וירטואליות.
  • (ב) ניתן לבנות תמונות של דוקר פעם אחת ולהיסר בשניות על פני מאות צללים.

על ידי שילוב של ענן היברידי עם דוקר, צוותים יכולים להשיג מודל תפעולי מאוחדת: לנהל קבוצה אחת של תמונות ולהזזז אותם על פני סביבות פרטיות וציבוריות, צמצום המורכבות וההפצה.

המונחים: cloud Hybrid

התקנת Docker

החל על ידי התקנת Docker Engine במחשבי הפיתוח שלך ולשרתי היעד שלך.עבור פיתוח מקומי, (FLT:0Dockervy DesktopFLT:1 (זמין עבור Windows, macOS ולינוקס) מספק ממשק ידידותי למשתמש.עבור שרתי לינוקס ייצור, להתקין את Docker Engine באמצעות מנהל החבילה הספציפי של ההפצה שלך או על ידי ביצוע פעולות ההתקנה הרשמי של Docker:2Docker's Installeral Setup FLT3 על ענן וירטואלי (I), או על ידי Microsoft.

  • ודא כי Docker daemon פועל ומופעל על האתחול.
  • הוסף את המשתמש שלך לקבוצה (לינוקס) כדי להימנע מ-FLT 1 לכל פקודה.
  • עיין ב[[1924]] ו[[1924]]

עבור תרחישים ענן היברידיים, חזור על ההתקנה על כל צומת אשר ירוץ מכולות - הן בשרתים על-ידי קדם-פרסום ומקרי ענן ציבוריים.

יצירת תמונות Docker

כל מיכל מתחיל מדימוי דוקר, המוגדר על ידי AFLT:4 שיטות הטובות ביותר עבור תמונות ייצור כוללים שימוש בתמונות בסיס קטנות (למשל, לינוקס אלפיני), רב-שלבים מצטברים כדי להפחית את הגודל, וגרסה מפורשת נוטה להימנע מעדכונים בלתי צפויים.

FROM node:18-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build

FROM node:18-alpine
WORKDIR /app
COPY --from=builder /app/dist ./dist
COPY package*.json ./
RUN npm ci --only=production
EXPOSE 3000
CMD ["node", "dist/server.js"]

(ב) בניית התמונה עם תג תיאורי הכולל את הסביבה (למשל, FLT:6, ; שימוש ב-FLT:0.DockerignoreFLT:1 כדי לא לכלול קבצים מיותרים (כמו FLT:8, יומני, סודות).

ניהול תמונות עם רישום

לאחסן את התמונות המובנות שלך במרשם מכולות נגישות הן מעננים פרטיים והן ציבוריים.אפשרויות כוללות:

  • (ב) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • (ב)אמזון ECRIRFLT:1 , Integrated with AWS IAM for Fine-gential Access control.
  • (ב) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • (ב) [15] ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇

תמונות פושטים לאחר כל בנייה מוצלחת: (FLT:9 ⁇ במתקנים ענן היברידיים, לשקול שימוש במרשם התומך בשכפול (למשל, נמל או ECR region Replication) כדי למזער את השקיפות.

המונחים:

עם תמונות במרשם, אתה יכול למשוך ולהפעיל מכולות על כל מארח Docker.הוראות פריסה בסיסית מתפתחות במהירות לכלי תזמורת, אבל עבור בדיקות ענן היברידיות פשוטות:

  1. SSH לתוך שרת היעד (על-ידי-premises או Cloud VM).
  2. מדרש: "ה' י'" (בראשית כ"ד, ט).
  3. « « « « « « « משוך את התמונה: ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  4. הפעל את המכולה עם משתנים סביבתיים נחוצים, נמלים, וגודלי נפח.
docker run -d \
 --name myapp-prod \
 -p 80:3000 \
 -e DB_HOST=private.db.internal \
 -e DB_NAME=production \
 --restart unless-stopped \
 myregistry.io/myapp:v1.2.3

עבור פריסות היברידיות הייצור, לעולם אל תסמכו על פקודות SSH ידניות במקום זאת, השתמש בתזמורת ובאוטומציה כפי שתואר בסעיף הבא.

תגיות: Orchestraing Containers Overs Hybrid Clouds

הפעלת מיכלים בודדים היא מנוהלת עבור קומץ שירותים, אבל סביבות ענן היברידיות לעתים קרובות כרוכות בעשרות (או מאות) של מיכלים שיש לתכנן, בקנה מידה, לרפא באופן אוטומטי. שתי פלטפורמות תזמורת פופולריות לעבוד טוב עם דוקר:

Docker Swarm

הפתרון של Docker הופך קבוצה של מארחים דוקר למארח וירטואלי יחיד. Swarm פשוט להגדיר ואידיאל עבור צוותים כבר נוח עם פקודות Docker CLI.הוא תומך בגילוי שירות, עדכונים מתגלגלים, ומדפי פני נקודות בשני על גבי פסגות וענן.

  • מדרש (ב) ויקרא י"ד:
  • הוספת נקודות עבודה מכל רשת (כולל ענן VMs) באמצעות הסימון: (FLT:14).
  • שירות: (ב)

הפשטות של סוובור הופכת אותה לבחירה נהדרת עבור פריסות ענן היברידיות קטנות יותר, אך היא חסרה את התכונות המתקדמות של Kubernetes (למשל, הפחתה אוטומטית המבוססת על CPU, הגדרות משאבים מותאמות אישית).

Kubernetes (K8s)

Kubernetes הפך תקן דה- Facto עבור תזמורת מכולות, המציע פרימיטיביים עשירים עבור פריסה, רשת, אחסון ותצורה. עבור ענן היברידי, Kubernetes יכול לנהל אשכולות המשתרעים על פני מרכזי נתונים רבים וספקי ענן באמצעות כלים כמו kubeadm, Rancher, או שירותים מנוהלים (Amazon EKS, Azure AKS, Google GKE).

  • צור מטוס בקרה על תעריפים או באזור ענן אחד.
  • הצטרפו לבלוטות עובדים הפועלים בעננים אחרים או על גבי תחזיות לאותו אשכול.
  • (ב) ,0 ;0) , ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • (ב) , (ב) , ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
apiVersion: apps/v1
kind: Deployment
metadata:
 name: myapp
spec:
 replicas: 3
 selector:
 matchLabels:
 app: myapp
 template:
 metadata:
 labels:
 app: myapp
 spec:
 containers:
 - name: myapp
 image: myregistry.io/myapp:v1.2.3
 ports:
 - containerPort: 3000

גמישותו של קובראנטס ומערכת האקולוגית (Helm, Prometheus, Istio) להפוך אותו מתאים לפרויקטים של ענן היברידיים ארגוניים.FLT:0Refer to the official Kubernetes Documentss FLT:1 עבור הדרכת גיבוש אשכול.

רשת ב-Hyber Cloud Docker Deployments

רשת היא אחד האתגרים הגדולים ביותר בענן היברידי. Containers צריך לתקשר על רשתות טרום-פרסום ורשתות וירטואליות בענן, לעתים קרובות ניתוק חומות אש ו- NAT Gateways. Solutions כוללים:

  • (FLT:0) רשתות שלביראטFLT:1 - הנהג המובנה של דוקר עבור סובור, או Kubernetes CNI plugins (פלנל, Calico, Weave) אשר מבסס את התנועה.
  • (FLT:0)VPN / SD-WANFLT:1 - הקמת מנהרה בטוחה בין מרכז הנתונים שלך לבין ענן VPC.ספקי ענן רבים מציעים שערי VPN או Direct Connect.
  • (FLT:0) שירות meshcioFLT:1 - כלים כמו Istio או Consul Connect מספקים הצפנה מ-TLS שקוף, פיצול תנועה ויציבות על פני מרש היברידי.
  • (FLT:0DNS מבוסס גילוי שירות מבוסס תגליות FLT:1 ), הן Swarm והן Kubernetes יש DNS פנימי אשר פותר שמות שירות לכלי IP.להבטיח רזולוציה DNS פועל ברחבי אתרים (למשל, באמצעות CoreDNS עם אזורי stub).

לדוגמה, יישום פועל בקוברנטז המשתרע על AWS ועל premises יכול להשתמש Calico עם שידור ישיר בין-לא-פעמי אם הרשת הבסיסית מחוברת. לחלופין, עיכוב כמו Flannel יכול לעבוד על VPNs קיימים.

שיקולים ביטחוניים

אבטחה היא רבת חשיבות כאשר עומסי עבודה חוצים מספר תחומים מנהליים.הנהגים המרכזיים של Docker בענן היברידי:

  • (ב) עיין ב[[1924]]: [[1924]]]], [[1924]]]]]], [[1924]]]]]], [[1924]]]]]], [[1924]]]]]]]], [[1924]]]]]]]], [[1924]]]]]]]]]], [[1924]]]]]]]], [[1924]]]]]]]], [[1924]]]]]]
  • (FLT:0) ניהול סודות 1 (Swarm), לעולם לא סודיות סודות ב Duckerfiles או קבצי סביבה. השתמש בסודות Docker (Swarm), סודות Kubernetes (עם הצפנה), או קמרונות חיצוניים (HashiCorp Vault).
  • (ב) ,0) ,Least PriviFLT:1 , Run מכולות כמו משתמשים שאינם-בסיסיים. השתמש במערכות קבצים שורש לקריאה בלבד שבו ניתן ליישם את ההקשרים הביטחוניים ב-K8s:FLT:20 .
  • (FLT:0 Network PolicysigFLT:1) - Define egress and ingress Rules to Limit Radio. in Kubernetes, useFLT:21 אובייקטים. in Swarm, להשתמש ברשתות מוצפנות מוצפנים.
  • (ב) [ה]:0] אימות ריג'יני (תיקון: 0) , השתמש בסימון קצר-הימים או תפקידי IAM למשיכת תמונות, במיוחד מרישום ענן.

(ב) ל[[1924]], [[1924]]]] ו[[1924]]]]]]

מידע על גניבת מידע והצלה

Containers הם אפסיים על ידי עיצוב, אבל יישומים רבים (בסיסי נתונים, מערכות ניהול תוכן, חנויות קבצים) דורשים נתונים מתמשכים.

  • (ב) ⁇ 0 ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • (FLT:0Network File Systems (NFS)FIRLT:1) הר NFS יצוא מה-premises NAS ל- Cloud VMs, אך יכול להציג את השקיפות.
  • (FLT:0Cloud-native StorageFLT:1) – AWS EFS, Azure Files, או Google Filehouse ניתן לרכוב בו זמנית מ-premises וענן באמצעות VPN.Good for תצורה משותפת או קבצי מדיה.
  • (FLT:0)Distributed מסדי נתונים 1 (FLT:1) - מיכלי מסד נתונים מנוהלים עם סטים מצביים וכרכים מתמשכים הקשורים כלי שימוש ספציפיים כגון Rook (Ceph) או Portworx עבור אחסון בענן אגנוסטי.

עבור ענן היברידי, מטרת לשמור נתונים קרוב למקום בו הוא נצרך.תבנית נפוצה: להפעיל תגמול לקריאה של מסד הנתונים שלך בענן, בעוד הראשי נשאר על-ידי שימוש במיכלים להתחבר להעתק הקרוב ביותר.

CI/CD ו- Automation

פיתוח ענן היברידי משגשג על אוטומציה. צינור CI /CD חזק בונה תמונות דוקרים, פועל בדיקות, דוחף לרישום, ופריסה לסביבות היעד (פיתוח, עוקץ, ייצור) על פני עננים פרטיים וציבוריים כאחד.

  • (ב) ,0) מקורות שליטה (Gyt) 1 (Gyt) דוחף את הצינור.
  • (FLT:0BuildalFLT:1) - השתמש ב-Docker Multi-שלב בונה כדי לייצר תמונות ייצור. Tools: GitHub Actions, GitLab CI, ג'נקינס, טנטון.
  • (ב) ,0) ,TestveFLT:1 , יחידת ריצה, שילוב וסריקות אבטחה במיכלים זהים לייצור.
  • (ב) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • (ב) ,0) ,DeployveFLT:1 - עדכונים מתגלגלים באמצעות Swarm (ראהים: 22) או Kubernetes (ראה FLT:23) להשתמש בכלים GitOps (ArgoCD, Flux) עבור פריסות הבהרתיות.

דוגמה ל- GitLab CI שלב הפורצת אל אשכול Kubernetes:

deploy-production:
 stage: deploy
 image: bitnami/kubectl:latest
 script:
 - kubectl set image deployment/myapp myapp=$CI_REGISTRY_IMAGE:$CI_COMMIT_TAG
 - kubectl rollout status deployment/myapp
 only:
 - tags

בענן היברידי, להבטיח רץ CI /CD שלך יכול לאמת את שני הרשומות ואת הסקטורים על פני עננים שונים.

עקבו אחרי and Logging

תאימות לבריאות מכולה על פני סביבות ענן היברידית היא חיונית.מרכז מאגרים ומדדים בפלטפורמה המאגדת נתונים מכל הריבועים.

  • (FLT:0)Metricssph 1 (עם יצואנים) עבור מכולה CPU, זיכרון, רשת. השתמש ב- Thanos או VictoriaMetrics עבור אחסון חוצה-קלוסטר, לטווח ארוך.
  • (FLT:0)LogingFLT:1) - כלכלים פולטים יומנים כדי להזיז / סטודר; להשתמש נהג כניסה (למשל, פלונטד, Logstash) כדי לשלוח לחנות מרכזית (מחקרים אחרונים, Loki, CloudWatch Logs).
  • (ב) ,0) ,TracingFLT:1 - OpenTelemetry עבור מסלולים מבוזרים על פני שירותים פרוסים בעננים שונים.
  • (ב) ,0) ,(DashboardsFLT:1) - Grafana עבור לוחות מחוונים מאוחדים המציגים הן על גבי מהדורות והן על ביצועי מיכל בענן.

התראה יעילה (למשל, באמצעות התראה) מסייעת לצוותים להגיב במהירות לבעיות ללא קשר למקום בו מכולות פועלות.

Best Practices summary

ציור מהדיונים לעיל, הנה רשימה מאוחדת של שיטות הטובות ביותר לשימוש Docker בפיתוח יישומים ענן היברידי:

  • (ב) [ה]התערו על פלטפורמת תזמורת אחת, ההרחבה של ה-AWS: Prefer Kubernetes for its Ecosystem and Portability Over ספקים.
  • (FLT:0) תשתיות כמו קודFLT:1 - אשכולות Define, רשתות, ועומסי עבודה ב-YAML או Terraform מבוקרת.
  • (ב) ⁇ :0 (ההדגשה של ג'ט-אופס) 1 (הופנה מהדף ג'ט) , שמור על המדינה הרצויה ב- Git; תן כלים אוטומטיים לסנכרן אשכולות.
  • (ב) עיין בשרשרת האספקה: 1:1 - תמונות של סימנים, סריקות כל הזמן, וסובב סודות.
  • (FLT:0)Plan for Network latencyFLT:1) - יישומי אדריכלים לסבול שקיפות גבוהה יותר באתר; להשתמש בהודעות כיס וזיכרון במידת האפשר.
  • (ב) תרחישים היברידיים מוקדמים (FLT:1) - מבחנים לשילוב לאורך גבולות ענן במהלך פיתוח, לא לאחר הפריסה.
  • (ב) ⁇ :0) ממורמרים כל דבר FLT:1 - חוסר יכולת מרכזית מסייע לך לזהות ולאבחון בעיות שעלולות להתעורר מהתנהגויות ענן שונות.

מסקנה

Docker, בשילוב עם תזדורות ואוטומציה מתחשבים, מספק בסיס איתן לפיתוח יישומים היברידיים של הענן.על ידי מיכל היישומים שלך, אתה מקבל את היכולת לפרוס את אותו חפץ במרכזי נתונים פרטיים וענני ציבור עם ביטחון עצמי.הצבת Docker נכון - החל ההתקנה והדימויים בניין לרשת, אבטחה, ניטור - מספק את הדרך עבור מערכות סטנדרטיות, גמישות שיכול להתאים את צרכי העסק.