صبح امروز جلسهای در تیم معماری اپلیکیشن (متشکل از تیم دوآپس و توسعه نرم افزار) برگزار شد و در این جلسه نیاز به پیادهسازی تغییراتی بر روی سرویس زیر درخواست شد:
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
برای دانلود پروژه اولیه روی این لینک کلیک کنید.
لیست تغییرات
-
خواسته شده تا فایل
authبه دو فایلuser.txtاز نوع configmap وpass.txtاز نوع secret تغییر پیدا کند و در فولدر/tmpقرار بگیرد. -
قبل از در دسترس قرار گرفتن اپلیکشن نیاز است هربار فایلی از مسیر زیر:
https://raw.githubusercontent.com/Digiexercise/simple-socket/main/sample-socket.py
دانلود شده و در دایرکتوری /python جایگذاری شود. سپس با دستور زیر در اپلیکیشن اجرا شود:
python3 /python/sample-socket.py
توجه داشته باشید که محتوای دایرکتوری /python نباید persist باشد و در هر restart باید مجدد فایل جدید دانلود شود.
-
اپلیکیشن مورد نظر باید سه Replica داشته باشد و اطمینان حاصل شود که هر سه پاد در حال سرویسدهی به کاربران میباشند.
-
شناسه یکتا پاد را در مسیر
/root/pod_id.ymlذخیره شود.
توجه داشته باشید برای انجام اینکار از قابلیت lifecycle استفاده شود. همچنین شناسه ذخیره شده در pod_id.yml باید یک عدد یکتا، به ترتیب و طبیعی باشد و با restart پاد تغییر نکند.
نکات تکمیلی
-
برای اجرای کوبرنتیز میتوانید از Minikube روی سیستم خود استفاده نمایید.
-
فقط
manifest.ymlرا تغییر داده و ارسال نمایید. -
فایل
manifest.ymlباید دارای یک kind باشد.
نحوهی ارسال جواب
شما فقط میتوانید محتوای فایل manifest.yml را تغییر دهید. تغییرات خودتان را بر روی manifest.yml اعمال کنید و فایل اصلاح شده را ارسال نمایید.
ارسال پاسخ برای این سؤال