نیازمندی های تیم معماری


صبح امروز جلسه‌ای در تیم معماری اپلیکیشن (متشکل از تیم دوآپس و توسعه نرم افزار) برگزار شد و در این جلسه نیاز به پیاده‌سازی تغییراتی بر روی سرویس زیر درخواست شد:

extensionFromNamemanifest.yml
apiVersion: v1
kind: Pod
metadata:
  name: python
spec:
  containers:
  - name: python
    image: python:3.9.10
    args:
    - sleep
    - "3600"
    volumeMounts:
    - name: auth
      mountPath: /tmp
      subPath: auth
  volumes:
    - name: auth
      secret:
        secretName: auth
Config

برای دانلود پروژه اولیه روی این لینک کلیک کنید.

لیست تغییرات🔗

  1. خواسته شده تا فایل auth به دو فایل user.txt‍ از نوع configmap و pass.txt از نوع secret تغییر پیدا کند و در فولدر /tmp قرار بگیرد.

  2. قبل از در دسترس قرار گرفتن اپلیکشن نیاز است هربار فایلی از مسیر زیر:

https://raw.githubusercontent.com/Digiexercise/simple-socket/main/sample-socket.py
Plain text

دانلود شده و در دایرکتوری /python جایگذاری شود. سپس با دستور زیر در اپلیکیشن اجرا شود:

extensionFromNameterminal
python3 /python/sample-socket.py
Bash

توجه داشته باشید که محتوای دایرکتوری /python نباید persist باشد و در هر restart باید مجدد فایل جدید دانلود شود.

  1. اپلیکیشن مورد نظر باید سه Replica داشته باشد و اطمینان حاصل شود که هر سه پاد در حال سرویس‌دهی به کاربران می‌باشند.

  2. شناسه یکتا پاد را در مسیر /root/pod_id.yml ذخیره شود.

توجه داشته باشید برای انجام اینکار از قابلیت lifecycle استفاده شود. همچنین شناسه ذخیره شده در pod_id.yml باید یک عدد یکتا، به ترتیب و طبیعی باشد و با restart پاد تغییر نکند.

نکات تکمیلی🔗

  • برای اجرای کوبرنتیز می‌توانید از Minikube روی سیستم خود استفاده نمایید.

  • فقط manifest.yml را تغییر داده و ارسال نمایید.

  • فایل manifest.ymlباید دارای یک kind باشد.

نحوه‌ی ارسال جواب🔗

شما فقط می‌توانید محتوای فایل manifest.yml را تغییر دهید. تغییرات خودتان را بر روی manifest.yml اعمال کنید و فایل اصلاح شده را ارسال نمایید.

ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.