اگر پیش از این از کوبرنتیز استفاده کردهاید و برای قسمتهای مختلف مورد نیاز برای اجرا شدن اپلیکیشن خود، مانیفست های لازم را نوشتهاید، با استفاده از پنل کاربری ابر آروان میتوانید آنها را بهشکل مستقیم روی کانتینر ابری آروان مستقر کنید.
نکته: میتوانید مانیفستهای خود را به زبان YAML بنویسید و با جدا کننده “—” در انتهای فایل، هر تعداد مانیفست را از هم جدا و بهشکل یکجا روی کانتینر ابری مستقر کنید.
بهعنوان مثال در کد زیر، سه مانیفست متفاوت با “—” از هم جدا شده، در یک فایل ذخیره و روی کانتینر قابل اجرا هستند.
--- apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment ... --- apiVersion: v1 kind: Service metadata: name: nginx-service ... --- apiVersion: route.openshift.io/v1 kind: Route metadata: name: nginx-route ...
نکته مهم دیگر که باید در کانتینر ابری رعایت شود، تعیین منابع مصرفی برای هر کانتینر است. این مورد باید در Deployment نوشته شده در قسمت Containers مشخص شود. برای مثال در نمونه زیر، در قسمت Containers مقدارهای لازم برای Resourceها که شامل CPU ،Memory و Ephemeral Storage است، مشخص شده اند. دقت کنید که مقادیر مربوط به Limits و Requests باید یکسان باشند.
apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment ... containers: - name: nginx image: nginx ports: - containerPort: 80 resources: limits: cpu: '1' ephemeral-storage: 2G memory: 1G requests: cpu: '1' ephemeral-storage: 2G memory: 1G
بعد از اعمال شرایط بالا میتوانیم مانیفستهای مربوط به Service و Route را هم برای در دسترس قرار گرفتن اپلیکیشن روی اینترنت اضافه کنیم. توجه داشته باشید که در کد زیر و در قسمت Route باید YOUR_PROJECT را با اسم پروژهای که قبلن در پنل ساختهاید تغییر دهید.
--- apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment 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: '1' ephemeral-storage: 2G memory: 1G requests: cpu: '1' ephemeral-storage: 2G memory: 1G --- apiVersion: v1 kind: Service metadata: name: nginx-service spec: selector: app: nginx ports: - name: http protocol: TCP port: 80 targetPort: 80 --- apiVersion: route.openshift.io/v1 kind: Route metadata: name: nginx-route spec: host: nginx-YOUR_PROJECT.apps.ir-thr-at1.arvan.run to: kind: Service name: nginx-service tls: termination: edge insecureEdgeTerminationPolicy: Allow port: targetPort: http
پس از پایان نوشتن مانیفستها، از طریق پنل کاربری به قسمت PaaS و ساخت اپلیکیشن بروید، K8S Manifest را انتخاب کنید و در انتها، مانند تصویر مانیفستهای نوشته شده را در ادیتور Paste کنید.
سپس روی گزینهی مرحله بعد کلیک کرده و اطلاعات مربوط به منابع درخواستی را بررسی کنید. در صورت مورد تایید بودن این اطلاعات، اپلیکیشن خود را بسازید.
پس از پایان این تنظیمات، میتوانید از طریق پیشخان پنل کاربری ابر آروان به اپلیکیشن خود دسترسی داشته باشید.