پرش به مطلب اصلی

ساخت اپلیکیشن با مانیفست

راهکارهای متفاوتی برای استقرار اپلیکیشن بر بستر کانتینر ابری آروان وجود دارد که می‌توانید متناسب با نیازتان یکی از آن‌ها را انتخاب کنید. اگر پیش از این از کوبرنتیز استفاده کرده‌اید و برای قسمت‌های مختلف اپلیکیشن خود، Manifestهای لازم را نوشته‌اید، روش «درج مانیفست» به شما کمک می‌کند تا اپلیکیشن‌های خود را به‌شکل مستقیم پیاده‌سازی و اجرا کنید.

وارد پنل کاربری آروان و بخش «ساخت اپلیکیشن» در منوی کانتینر ابری شوید. سپس از میان شیوه‌های ساخت اپلیکیشن «درج مانیفست» را انتخاب کنید.

درج مانیفست

مانیفست کوبرنتیز یک فایل YAML است که اجزای مختلفی مانند Deployment ،Replica Set ،Service و ... کلاستر در آن تعریف شده است. اگر از پیش برای اپلیکیشن‌تان مانیفست نوشته‌اید،‌ می‌توانید آن را در این بخش Paste کرده و روی «شروع» کلیک کنید تا فرآیند ساخت اپلیکیشن آغاز شود.

نکته‌ی مهمی که باید در مانیفست‌ها رعایت شود، تعیین منابع مصرفی برای هر کانتینر است. این مورد باید در Deployment و در قسمت Containers مشخص شود. اگر میزان منابع در مانیفست تعیین نشود به‌طور پیش‌فرض ۱ هسته CPU و ۲ گیگ رم برای آن انتخاب می‌شود. هم‌چنین باید نسبت ۱ به ۲ پردازنده و رم را در مقدار تعیین‌شده در نظر بگیرید.

دقت کنید که مقادیر مربوط به Limits و Requests باید یکسان باشند.

apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx
labels:
app: nginx
spec:
replicas: 1
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx
ports:
- containerPort: 80
resources:
limits:
cpu: "0.5"
ephemeral-storage: 1G
memory: 1G
requests:
cpu: "0.5"
ephemeral-storage: 1G
memory: 1G
---
apiVersion: v1
kind: Service
metadata:
name: nginx-svc
spec:
selector:
app: nginx
ports:
- name: http
protocol: TCP
port: 80
targetPort: 80
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: nginx-ingress
spec:
ingressClassName: nginx
rules:
- host: [your_domain]
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: nginx-svc
port:
name: http

شما می‌توانید مانیفست‌های خود را به زبان YAML بنویسید و با جدا کننده "---" در انتهای هر فایل، آن‌ها را از هم جدا و به‌شکل یک‌جا روی کانتینر ابری مستقر کنید.

هم‌چنین توجه داشته باشید که برای استفاده از نسل ۲ یا ۳ پردازنده‌های آروان باید مانند نمونه‌ی زیر در مانیفست‌تان Affinity تعیین کنید.

affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: node-role.kubernetes.io/cloud-container-g2
operator: In
values:
- "true"

فرآیند ساخت اپلیکیشن

پس از درج مانیفست، تنها دو گام تا ساخت اپلیکیشن فاصله دارید.

گام نخست: جزییات پروژه

ابتدا باید دیتاسنتر و زیرساخت میزبان اپلیکیشن‌تان را انتخاب کنید. در حال حاضر دو منطقه‌ی بامداد و شهریار بر بستر Kubernetes‌ در اختیارتان قرار دارد. سپس از میان پروژه‌های موجود یکی را برای استقرار این اپلیکیشن انتخاب کنید یا یک پروژه‌ی جدید بسازید.

در پایان روی دکمه‌ی «ادامه» کلیک کنید.

گام دوم: بررسی و تایید نهایی

در آخرین گام کافی است نسل CPUهای اپلیکیشن را انتخاب و صورت‌حساب را بررسی کنید.

در این صفحه می‌توانید برآورد هزینه را به‌شکل ساعتی، روزانه، هفتگی یا ماهانه و به‌تفکیک هر یک از اجزا بررسی کنید. هم‌چنین می‌توانید این صورت‌حساب را دانلود و ذخیره کنید.

هر زمان اپلیکیشن خود را خاموش یا حذف کنید هزینه‌ای برای CPU، رم و حافظه‌ی موقت محاسبه نمی‌شود.

در پایان روی دکمه‌ی «ایجاد» کلیک کنید تا اپلیکیشن شما ساخته شود.

وضعیت اپلیکیشن

پس از تکمیل فرآیند ساخت، اپلیکیشن شما ایجاد می‌شود و از طریق بخش اپلیکیشن‌ها قابل مشاهده خواهد بود.

هم‌چنین برای جزییات بیش‌تر می‌توانید تا پایان نصب و فعال شدن اپ، از طریق بخش دسترسی سریع به رویداد‌ها، لاگ و کنسول اپلیکیشن دسترسی داشته باشید.

از این پس می‌توانید به‌کمک راهنمای «مدیریت اپلیکیشن» تنظیمات اپ خود را مدیریت کنید.