
مقدمه
Kubernetes به استانداردی برای استقرار برنامه های کاربردی بزرگ تبدیل شده است. این به توسعه دهندگان کمک می کند تا از مزایای قابل توجهی برخوردار شوند و ویژگی هایی را ارائه می دهد که در میزبانی سرور سنتی موجود نیستند. Kubernetes مقیاس افقی را بدون مشکلات زیرساخت امکان پذیر می کند. همچنین با رشد برنامه، هزینه به دست آوردن و حفظ زیرساخت را کاهش می دهد.
با این حال، مدیریت برنامه ها در Kubernetes نیز می تواند پیچیده باشد و به مهارت های پیشرفته نیاز دارد. استقرار برنامهها با استفاده از Kubernetes و فرآیند یکپارچهسازی و استقرار مداوم (CI/CD) به غلبه بر این فرآیند پیچیده با ارائه انتزاع کمک میکند. GitOps یکی از ابزارهایی است که می تواند به دستیابی به انتزاع کمک کند.
در این آموزش، ما نحوه استفاده از Argo CD را برای ادغام و استقرار مداوم برنامه ها در Kubernetes نشان خواهیم داد. هر زمان که هر تغییری به مخزن فشار داده شود، در خوشه هدف مستقر می شود. Argo CD همچنین کنترل نسخه، تنظیمات و محیط های کاربردی را با ادغام با کل چرخه عمر توسعه نرم افزار فراهم می کند. اگر مدیر بسته Kubernetes مانند Helm دارید، یا اگر یک مخزن میزبانی شده در BitBucket یا GitLab دارید، Argo CD می تواند به طور یکپارچه با همه این پلتفرم ها نیز ادغام شود.
پیش نیازها
برای تکمیل این آموزش باید داشته باشید:
مرحله 1 – Argo CD را نصب کنید
قبل از اینکه بتوانیم آرگو سی دی را نصب کنیم، باید یک محیط Kubernetes در حال اجرا باشیم
کوبکتل. با اجرای دستور زیر می توانید آن را تست کنید:
شما باید حداقل یک گره Kubernetes را ببینید که در حال اجرا است
آماده وضعیت. اگر هیچ گره ای در دسترس نیست، باید نصب Kubernetes خود را دوباره بررسی کنید. در مرحله بعد، یک فضای نام جداگانه برای نصب Kubernetes خود ایجاد می کنیم. بیایید آن را صدا کنیم
argocd. ما سرویس مرتبط Argo CD را در این فضای نام ذخیره می کنیم:
kubectl فضای نامی را argocd ایجاد کرد
کوبکتل من می آفرینم – درست می کنم فضای نام argocd |
سپس اسکریپت های Argo CD را با اجرای دستور زیر در فضای نام جدید ایجاد شده بالا نصب کنید:
kubectl application -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
کوبکتل درخواست دادن –n argocd –f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml |
برای بررسی وضعیت پادهای Kubernetes، دستور زیر را اجرا کنید:
watch kubectl get pods -n argocd
من نگاه می کنم کوبکتل دریافت می کنم زیرمجموعه –n argocd |
نتیجه ای مانند زیر دریافت خواهید کرد:
در اینجا شما با موفقیت نصب Argo CD را به پایان رساندید. برای خروج از
من نگاه می کنم رابط، می توانید فشار دهید
Ctrl + درجه سانتی گراد. برای دسترسی به خدمات در این خوشه Kubernetes باید پورت ها را فوروارد کنیم. در مرحله بعدی نحوه انجام این کار را به شما نشان خواهیم داد.
مرحله 2 – پورت ها را برای دسترسی به CD Argo هدایت کنید
Kubernetes می تواند برنامه شما را در هر پورت دلخواه شما مستقر کند. بنابراین، لازم است پورت های برنامه Kubernetes را برای دسترسی به آنها از ماشین محلی فوروارد کنید. آرگو سی دی سرویسی به نام را نمایش می دهد
argocd–سرور که از پورت استفاده می کند 443. بندر 443 پورت پیش فرض برای سرویس های HTTPS و HTTP است. شما می توانید پورت های Kubernetes را به پورت مورد نظر خود ارسال کنید. در مثال زیر ما پورت را به آن فوروارد کرده ایم
8080. برای ارسال پورت ها، دستور زیر را در ترمینال اجرا کنید:
kubectl port-forward svc/argocd-server -n argocd 8080:443
کوبکتل بندر–رو به جلو svc/argocd–سرور –n argocd 8080:443 |
هنگامی که پورت را فوروارد کردید، مسدود می شود تا سایر سرویس ها نتوانند به آن دسترسی داشته باشند. برای دسترسی مداوم همیشه توصیه می شود دستور بالا را در ترمینال جدید اجرا کنید. پس از اتمام، می توانید فشار دهید
Ctrl+درجه سانتی گراد برای خروج از فرآیند ارسال پورت
هنگامی که پورت را فوروارد کردید، می توانید با رفتن به سی دی Argo بروید
میزبان محلی:8080. از شما خواسته می شود اعتبارنامه هایی را که می توانید از خط فرمان در مرحله بعد دریافت کنید.
مرحله 3 – Argo CD را از خط فرمان مدیریت کنید
برای مدیریت نصب Argo CD باید خط فرمان Argo CD را نصب کنیم. روش توصیه شده برای نصب آرگو سی دی استفاده از یک مدیریت بسته مانند Homebrew است. Homebrew یک ابزار مدیریت بسته محبوب برای نصب macOS و Linux است. می توانید Homebrew را با استفاده از دستور زیر نصب کنید:
/bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”
/صندوقچه/ضربه شدید –درجه سانتی گراد “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)” |
باید داشته باشی
جوشیدن بر روی دستگاه شما نصب شده است. ممکن است از شما یک رمز ورود برای ورود خواسته شود. با اجرای دستور زیر می توانید آن را اجرا کنید:
دریافت خواهید کرد
argocd دستور بعد از نصب بالا ما باید رمز عبور مدیریت را با استفاده از آن بازیابی کنیم
کوبکتل فرمان در حین نصب به طور خودکار تولید می شود. در زیر دستور دریافت آن آمده است:
kubectl -n argocd دریافت مخفی argocd-initial-admin-secret -o jsonpath=”{.data.password}” | base64 -d; اکو
کوبکتل –n argocd دریافت می کنم یک راز argocd–اولیه–مدیر–یک راز –Fr jsonpath=“{.data.password}” | پایه 64 –ه; اکو |
اکنون که CD Argo را نصب کرده اید، می توانید با استفاده از دستور وارد شوید
argocd دارم میام داخل زیر:
لاگین argocd localhost:8080
argocd دارم میام داخل میزبان محلی:8080 |
هنگام استفاده از خط فرمان، برای استقرار برنامه باید وارد شوید:
ممکن است یک هشدار امنیتی دریافت کنید. اگر چنین است، فشار دهید
آقای برای حرکت به جلو بسیاری از کاربران ممکن است بخواهند پس از ورود رمز عبور را تغییر دهند. اگر چنین است، دستور را اجرا کنید
argocd حساب به روز رسانی–کلمه عبور برای تغییر رمز عبور ما اکنون یک پیکربندی Argo CD کاملاً کاربردی داریم.
در نهایت، ما یک برنامه را با استفاده از آرگو سی دی نصب شده در خوشه Kubernetes مستقر خواهیم کرد.
مرحله 4 – از چند خوشه استفاده کنید
قبل از شروع به راه اندازی برنامه خود، لازم است ماشین هدفی را که می خواهید آن را روی آن استقرار دهید، بشناسید. برای بسیاری از سناریوها، آرگو سی دی و برنامه مستقر شده می توانند روی یک کلاستر اجرا شوند. این رفتار پیشفرض Argo CD است، اما محدودیت نیست. اگر می خواهید برنامه را در سایر ماشین های هدف مستقر کنید، ابتدا اجرا کنید
کوبکتل پیکربندی در دستگاه شما:
پیکربندی kubectl get-contexts -o name
کوبکتل پیکربندی دریافت می کنم–زمینه ها –Fr نام |
فرض کنید دو خوشه دریافت می کنید:
تست–استقرار–خوشه و
تست–هدف–خوشه. اگر الان
تست–استقرار–خوشه جایی است که آرگو سی دی شما قرار دارد و می خواهید آن را نصب کنید
تست–هدف–خوشهسپس دستور زیر را اجرا کنید:
خوشه argocd target-k8s را اضافه می کند
argocd خوشه اضافه کردن هدف–k8s |
دستور بالا جزئیات بیشتری در مورد خوشه CD Argo اضافه می کند. همچنین امکان استقرار خدمات را در خوشه آرگو CD هدف فراهم می کند.
مرحله 5 – یک برنامه نمونه را مستقر کنید
بالاخره زمان استقرار برنامه ها در خوشه Kubernetes فرا رسیده است. ما از نمونه برنامه های ارائه شده توسط آرگو سی دی استفاده خواهیم کرد. ما نیز استفاده خواهیم کرد
فرمان–کتاب مهمان که با استفاده از نمودار Helm ساخته شده است.
برای نصب اپلیکیشن از آن استفاده خواهیم کرد
زبان عامیانه برنامه من می آفرینم – درست می کنم فرمان ما به مخزن Git اشاره می کنیم،
فرمان–کتاب مهمان و عبور از مقصد و فضای نام پیش فرض شما:
برنامه argocd ایجاد helm-guestbook –repo https://github.com/argoproj/argocd-example-apps.git –path helm-guestbook –dest-server https://kubernetes.default.svc –dest- فضای نام پیش فرض
argocd برنامه من می آفرینم – درست می کنم فرمان–کتاب مهمان —مخزن https://github.com/argoproj/argocd-example-apps.git –path helm-guestbook –dest-server https://kubernetes.default.svc –dest-namespace پیش فرض |
با اجرای آن می توانید وضعیت برنامه جدید ایجاد شده را بررسی کنید
argocd برنامه دریافت می کنم:
برنامه argocd دریافت فرمان-کتاب مهمان
argocd برنامه دریافت می کنم فرمان–کتاب مهمان |
اگر دیدید تعجب نکنید
OutOfSync وضعیت. تا کنون نمودار Helm را دانلود کرده ایم و یک نقطه ورود به آن برای سی دی آرگو ایجاد کرده ایم. با این حال، هیچ منبعی برای آن در سمت Kubernetes اختصاص داده نشده است. به
هماهنگ سازی این برنامه دستور زیر را اجرا می کند:
دفترچه مهمان فرمان همگام سازی برنامه argocd
argocd برنامه هماهنگ سازی فرمان–کتاب مهمان |
هنگام کار با GitOps، همیشه لازم است برنامه را با upstream همگام کنید. بنابراین، هنگامی که تغییری در مخزن رخ می دهد، Argo CD برنامه را مستقر می کند.
ما برنامه را با استفاده از خط فرمان Argo CD مستقر کردیم. می توانید با استفاده از رابط وب Argo CD به همین نتیجه برسید. اگر می خواهید وضعیت و عملکرد برنامه را بررسی کنید، رابط وب بسیار مفید است. برای باز کردن رابط وب، باز کنید
میزبان محلی:8080:
برای تأیید نصب، برنامه را در مرورگر باز می کنیم. مال ما
فرمان–کتاب مهمان روی پورت کار می کند
80. اگر برنامه دیگری با استفاده از پورت دارید
80می توانید پورت را فوروارد کنید تا دیگر برنامه ها قطع نشوند:
kubectl port-forward svc/helm-guestbook 9090:80
کوبکتل بندر–رو به جلو svc/فرمان–کتاب مهمان 9090:80 |
در نهایت URL را باز کنید
میزبان محلی:9090 در مرورگر وب خود برای مشاهده نحوه عملکرد برنامه شما:
حال، اگر یک توسعهدهنده مقداری کد را به یک مخزن Github راه دور متعهد کند، ArgoCD آن را میگیرد و منعکس میکند. تنظیمات ArgoCD شما بر این اساس به روز می شود و در دسترس بودن مداوم را تضمین می کند.
نتیجه
در این آموزش نحوه نصب و استقرار اپلیکیشن های Kubernetes را با استفاده از آرگو سی دی به شما نشان دادیم. مهم است که اطمینان حاصل کنید که استقرارهای Kubernetes شما قابل نگهداری هستند. GitOps می تواند در این زمینه به شما کمک زیادی کند.
Kubernetes اکنون استانداردی برای استقرار ابر است. Cloudsigma چند راهنمای عالی در مورد Kubernetes دارد که می توانید در ادامه بررسی کنید:
کار کامپیوتر مبارک!

درباره Pranay Kapgate
مهندس نرم افزار | علاقه مندان به نرم افزارهای متن باز