چه چیزی در Red Hat OpenShift 4.2 و 4.3 جدید است؟

چه چیزی در Red Hat OpenShift 4.2 و 4.3 جدید است؟
نسخه چهارم OpenShift نسبتاً اخیراً منتشر شد. نسخه فعلی 4.3 از اواخر ژانویه در دسترس است و تمام تغییرات در آن یا چیزی کاملاً جدید است که در نسخه سوم وجود نداشت یا یک به روز رسانی بزرگ از آنچه در نسخه 4.1 ظاهر شد. همه چیزهایی که اکنون به شما خواهیم گفت باید توسط کسانی که با OpenShift کار می کنند و قصد تغییر به نسخه جدید را دارند، بدانند، درک کنند و در نظر بگیرند.

با انتشار OpenShift 4.2، Red Hat کار با Kubernetes را آسان‌تر کرده است. ابزارها و پلاگین های جدیدی برای ایجاد کانتینرها، خطوط لوله CI/CD و استقرار بدون سرور ظاهر شده اند. نوآوری‌ها به توسعه‌دهندگان این فرصت را می‌دهد که روی نوشتن کد تمرکز کنند، نه روی برخورد با Kubernetes.

در واقع، چه چیزی در نسخه های OpenShift 4.2 و 4.3 جدید است؟

حرکت به سمت ابرهای ترکیبی

هنگام برنامه ریزی یک زیرساخت جدید فناوری اطلاعات یا هنگام توسعه چشم انداز فناوری اطلاعات موجود، شرکت ها به طور فزاینده ای رویکرد ابری را برای ارائه منابع فناوری اطلاعات در نظر می گیرند که برای آن راه حل های ابر خصوصی را پیاده سازی می کنند یا از قدرت ارائه دهندگان ابر عمومی استفاده می کنند. بنابراین، زیرساخت‌های مدرن فناوری اطلاعات به طور فزاینده‌ای بر اساس یک مدل ابری ترکیبی ساخته می‌شوند، زمانی که هم از منابع داخلی و هم منابع ابر عمومی با یک سیستم مدیریت مشترک استفاده می‌شود. Red Hat OpenShift 4.2 به طور ویژه برای ساده سازی انتقال به یک مدل ابری ترکیبی طراحی شده است و اتصال منابع از ارائه دهندگانی مانند AWS، Azure و Google Cloud Platform را به خوشه، همراه با استفاده از ابرهای خصوصی در VMware و OpenStack آسان می کند.

رویکرد جدید نصب

در نسخه 4 رویکرد نصب OpenShift تغییر کرده است. Red Hat یک ابزار ویژه برای استقرار یک خوشه OpenShift ارائه می دهد - openshift-install. این ابزار یک فایل باینری منفرد است که در Go نوشته شده است. Openshit-installer یک فایل yaml را با پیکربندی مورد نیاز برای استقرار آماده می کند.

در صورت نصب با استفاده از منابع ابری، باید حداقل اطلاعات را در مورد خوشه آینده مشخص کنید: منطقه DNS، تعداد گره های کارگر، تنظیمات خاص برای ارائه دهنده ابر، اطلاعات حساب برای دسترسی به ارائه دهنده ابر. پس از تهیه فایل پیکربندی، خوشه را می توان با یک دستور مستقر کرد.

در صورت نصب بر روی منابع محاسباتی خودتان، به عنوان مثال، هنگام استفاده از یک ابر خصوصی (vSphere و OpenStack پشتیبانی می شوند) یا هنگام نصب بر روی سرورهای فلزی خالی، باید زیرساخت را به صورت دستی پیکربندی کنید - حداقل تعداد ماشین های مجازی را آماده کنید یا سرورهای فیزیکی مورد نیاز برای ایجاد یک کلاستر Control Plane، پیکربندی خدمات شبکه. پس از این پیکربندی، یک خوشه OpenShift را می توان به طور مشابه با یک دستور از ابزار openshift-installer ایجاد کرد.

به روز رسانی زیرساخت

ادغام CoreOS

به روز رسانی کلیدی ادغام با Red Hat CoreOS است. گره های اصلی Red Hat OpenShift اکنون می توانند کار کنند تنها در سیستم عامل جدید این یک سیستم عامل رایگان از Red Hat است که به طور خاص برای راه حل های کانتینری طراحی شده است. Red Hat CoreOS یک لینوکس سبک وزن است که برای اجرای کانتینرها بهینه شده است.

اگر در 3.11 سیستم عامل و OpenShift به طور جداگانه وجود داشتند، در 4.2 به طور جدایی ناپذیری با OpenShift مرتبط است. اکنون این یک دستگاه واحد است - زیرساخت غیرقابل تغییر.

چه چیزی در Red Hat OpenShift 4.2 و 4.3 جدید است؟
برای خوشه‌هایی که از RHCOS برای همه گره‌ها استفاده می‌کنند، ارتقای OpenShift Container Platform یک فرآیند ساده و بسیار خودکار است.

پیش از این، برای به‌روزرسانی OpenShift، ابتدا باید سیستم عامل اصلی را که محصول روی آن اجرا می‌شد (در آن زمان Red Hat Enterprise Linux) به‌روزرسانی می‌کردید. تنها در این صورت می توان OpenShift را به تدریج، گره به گره به روز کرد. هیچ صحبتی از اتوماسیون این فرآیند وجود نداشت.

اکنون، از آنجایی که پلتفرم کانتینر OpenShift به طور کامل سیستم ها و خدمات هر گره، از جمله سیستم عامل را کنترل می کند، این کار با فشار دادن یک دکمه از رابط وب حل می شود. پس از این، یک اپراتور ویژه در داخل خوشه OpenShift راه اندازی می شود که کل فرآیند به روز رسانی را کنترل می کند.

CSI جدید

در مرحله دوم، CSI جدید یک کنترلر رابط ذخیره سازی است که به شما امکان می دهد سیستم های ذخیره سازی خارجی مختلف را به خوشه OpenShift متصل کنید. تعداد زیادی از ارائه دهندگان درایورهای ذخیره سازی برای OpenShift بر اساس درایورهای ذخیره سازی که توسط خود سازندگان سیستم ذخیره سازی نوشته شده اند پشتیبانی می شوند. لیست کاملی از درایورهای CSI پشتیبانی شده را می توان در این سند یافت: https://kubernetes-csi.github.io/docs/drivers.html. در این لیست می‌توانید تمام مدل‌های اصلی آرایه‌های دیسک را از تولیدکنندگان پیشرو (Dell/EMC، IBM، NetApp، Hitachi، HPE، PureStorage)، راه‌حل‌های SDS (Ceph) و فضای ذخیره‌سازی ابری (AWS، Azure، Google) بیابید. OpenShift 4.2 از درایورهای CSI با مشخصات CSI نسخه 1.1 پشتیبانی می کند.

مش سرویس RedHat OpenShift

بر اساس پروژه های Istio، Kiali و Jaeger، Red Hat OpenShift Service Mesh، علاوه بر وظایف معمول مسیریابی درخواست ها بین سرویس ها، امکان ردیابی و تجسم آنها را نیز فراهم می کند. این به توسعه دهندگان کمک می کند تا به راحتی با برنامه ای که در Red Hat OpenShift مستقر شده است ارتباط برقرار کنند، نظارت کنند و مدیریت کنند.

چه چیزی در Red Hat OpenShift 4.2 و 4.3 جدید است؟
تجسم یک برنامه کاربردی دارای معماری میکروسرویس با استفاده از کیالی

Red Hat OpenShift برای ساده‌سازی نصب، نگهداری و مدیریت چرخه عمر Service Mesh تا حد امکان، یک اپراتور ویژه به نام Service Mesh Operator را در اختیار مدیران قرار می‌دهد. این یک اپراتور Kubernetes است که به شما امکان می دهد بسته های Istio، Kiali و Jaeger مجدد پیکربندی شده را در یک خوشه مستقر کنید و بار مدیریتی مدیریت برنامه ها را به حداکثر برسانید.

CRI-O به جای Docker

Docker پیش‌فرض Container Runtime با CRI-O جایگزین شده است. استفاده از CRI-O قبلاً در نسخه 3.11 امکان پذیر بود، اما در 4.2 به نسخه اصلی تبدیل شد. خوب یا بد نیست، اما نکته ای که باید هنگام استفاده از محصول در نظر داشت.

اپراتورها و استقرار برنامه

اپراتورها موجودیت جدیدی برای RedHat OpenShift هستند که در نسخه چهارم ظاهر شدند. این روشی برای بسته بندی، استقرار و مدیریت یک برنامه کاربردی Kubernetes است. می توان آن را به عنوان یک افزونه برای برنامه های کاربردی در کانتینرها در نظر گرفت که توسط Kubernetes API و ابزارهای kubectl هدایت می شود.

اپراتورهای Kubernetes به خودکارسازی هرگونه کار مرتبط با مدیریت و مدیریت چرخه عمر برنامه‌ای که در کلاستر خود مستقر می‌کنید، کمک می‌کنند. به عنوان مثال، اپراتور می تواند به روز رسانی، پشتیبان گیری و مقیاس بندی برنامه را خودکار کند، پیکربندی را تغییر دهد و غیره. لیست کاملی از اپراتورها را می توان در اینجا یافت https://operatorhub.io/.

OperatorHub مستقیماً از رابط وب کنسول مدیریت قابل دسترسی است. این یک فهرست برنامه برای OpenShift است که توسط Red Hat نگهداری می شود. آن ها تمامی اپراتورهای تایید شده Red Hat تحت پوشش پشتیبانی فروشنده قرار خواهند گرفت.

چه چیزی در Red Hat OpenShift 4.2 و 4.3 جدید است؟
پورتال OperatorHub در کنسول مدیریت OpenShift

تصویر پایه جهانی

این مجموعه ای استاندارد از تصاویر RHEL OS است که می تواند برای ساخت برنامه های کاربردی کانتینری شما استفاده شود. مجموعه های مینیمال، استاندارد و کامل وجود دارد. آنها فضای بسیار کمی را اشغال می کنند و از تمام بسته های نصب شده لازم و زبان های برنامه نویسی پشتیبانی می کنند.

ابزارهای CI/CD

در RedHat OpenShif 4.2، امکان انتخاب بین Jenkins و OpenShift Pipelines بر اساس Tekton Pipelines فراهم شد.

OpenShift Pipelines مبتنی بر Tekton است که با رویکرد Code و GitOps توسط Pipeline بهتر پشتیبانی می شود. در خطوط لوله OpenShift، هر مرحله در ظرف مخصوص به خود اجرا می شود، بنابراین منابع فقط در حین اجرای مرحله استفاده می شوند. این به توسعه دهندگان کنترل کاملی بر خطوط لوله تحویل ماژول، پلاگین ها و کنترل دسترسی بدون سرور مرکزی CI/CD برای مدیریت می دهد.

OpenShift Pipelines در حال حاضر در پیش‌نمایش توسعه‌دهنده است و به عنوان یک اپراتور در خوشه OpenShift 4 در دسترس است. البته، کاربران OpenShift همچنان می‌توانند از Jenkins در RedHat OpenShift 4 استفاده کنند.

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

در OpenShift 4.2، رابط وب به طور کامل برای توسعه دهندگان و مدیران به روز شده است.

در نسخه‌های قبلی OpenShift، همه در سه کنسول کار می‌کردند: فهرست سرویس، کنسول سرپرست و کنسول کار. اکنون این خوشه تنها به دو بخش تقسیم می شود - کنسول مدیر و کنسول توسعه دهنده.

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

چه چیزی در Red Hat OpenShift 4.2 و 4.3 جدید است؟
پورتال توسعه دهنده در کنسول مدیریت OpenShift

ODO

Odo یک ابزار خط فرمان توسعه‌دهنده است که توسعه برنامه‌ها را در OpenShift ساده می‌کند. با استفاده از ارتباطات سبک git push، این CLI به توسعه دهندگان تازه وارد کوبرنتیس کمک می کند تا برنامه های کاربردی را در OpenShift بسازند.

ادغام با محیط های توسعه

توسعه دهندگان اکنون می توانند برنامه های خود را در OpenShift بدون ترک محیط توسعه کد مورد علاقه خود، مانند Microsoft Visual Studio، JetBrains (از جمله IntelliJ)، Eclipse Desktop و غیره، بسازند، اشکال زدایی و استقرار دهند.

برنامه افزودنی استقرار OpenShift Red Hat برای Microsoft Azure DevOps

افزونه Red Hat OpenShift Deployment برای Microsoft Azure DevOps منتشر شد. کاربران این مجموعه ابزار DevOps اکنون می توانند برنامه های خود را مستقیماً از Microsoft Azure DevOps در Azure Red Hat OpenShift یا هر خوشه OpenShift دیگر مستقر کنند.

انتقال از نسخه سوم به چهارم

از آنجایی که ما در مورد یک نسخه جدید صحبت می کنیم، و نه یک به روز رسانی، شما نمی توانید نسخه چهارم را در بالای نسخه سوم قرار دهید. به روز رسانی از نسخه XNUMX به نسخه XNUMX پشتیبانی نمی شود..

اما یک خبر خوب وجود دارد: Red Hat ابزارهایی برای انتقال پروژه ها از 3.7 به 4.2 فراهم می کند. شما می توانید بارهای کاری برنامه را با استفاده از ابزار Cluster Application Migration (CAM) انتقال دهید. CAM به شما این امکان را می دهد که مهاجرت را کنترل کنید و زمان خرابی برنامه را به حداقل برسانید.

OpenShift 4.3

نوآوری های اصلی شرح داده شده در این مقاله در نسخه 4.2 ظاهر شد. تغییرات اخیراً منتشر شده در نسخه 4.3 چندان بزرگ نیستند، اما هنوز چیزهای جدیدی وجود دارد. لیست تغییرات بسیار گسترده است، در اینجا مهمترین آنها به نظر ما آمده است:

نسخه Kubernetes را به 1.16 به روز کنید.

نسخه به طور همزمان با دو مرحله ارتقاء یافت؛ در OpenShift 4.2 1.14 بود.

رمزگذاری داده ها در etcd

با شروع نسخه 4.3، امکان رمزگذاری داده ها در پایگاه داده etcd فراهم شد. پس از فعال شدن رمزگذاری، می‌توانید منابع OpenShift API و Kubernetes API زیر را رمزگذاری کنید: Secrets، ConfigMaps، Routes، نشانه‌های دسترسی و مجوز OAuth.

سکان

پشتیبانی از Helm نسخه 3، یک مدیر بسته محبوب برای Kubernetes اضافه شد. در حال حاضر، پشتیبانی دارای وضعیت PREVIEW TECHNOLOGY است. پشتیبانی Helm به پشتیبانی کامل در نسخه‌های بعدی OpenShift گسترش خواهد یافت. ابزار cli helm همراه با OpenShift ارائه می شود و می توان آن را از کنسول وب مدیریت کلاستر دانلود کرد.

به روز رسانی داشبورد پروژه

در نسخه جدید، داشبورد پروژه اطلاعات اضافی را در صفحه پروژه ارائه می دهد: وضعیت پروژه، استفاده از منابع و سهمیه پروژه.

نمایش آسیب پذیری برای اسکله در کنسول وب

قابلیتی به کنسول مدیریت اضافه شده است تا آسیب پذیری های شناخته شده را برای تصاویر در مخازن Quay نمایش دهد. نمایش آسیب پذیری ها برای مخازن محلی و خارجی پشتیبانی می شود.

ایجاد ساده شده اپراتور هاب آفلاین

در مورد استقرار یک خوشه OpenShift در یک شبکه ایزوله، که دسترسی به اینترنت از آن محدود یا وجود ندارد، ایجاد یک "آینه" برای رجیستری OperatorHub ساده شده است. اکنون این کار تنها با سه تیم قابل انجام است.

نویسنده:
ویکتور پوچکوف، یوری سمنیوکوف

منبع: www.habr.com

اضافه کردن نظر