第四周: Openshift 以及相關服務
第四周: Openshift 以及相關服務¶
關於Docker、kubernetes請參考前幾篇資訊
什麼是OpenShift
OpenShift是一個基於Kubernetes的容器平台,提供了更多的擴展功能,例如可擴展性、彈性、開源、可攜式容器、增強開發者體驗、自動安裝與升級、自動化流程、邊緣架構、集群管理、安全性、存儲以及多種合作環境等。
OpenShift提供的服務:
- REST APIs:讓各種核心項目可取用。
- Controller:讀取REST API,控制變動,回報狀態,管理集群。
- OpenShift CLI (oc):提供命令行界面,讓使用者可以透過終端進行開發。
Build:
將源代碼轉化為映像,並通過構建配置文件(BuildConfig)定義構建策略和輸入源。常見的構建策略包括Source to Image (S2I)、Docker和Custom。
Imagestream:
在OpenShift中負責指引容器映像,通過更改標籤可以讓映像指向不同的註冊表或Docker Hub。
自動化構建觸發方式:
- Webhook觸發:發起端(如GitHub)發送請求給OpenShift容器API端點,這是OpenShift如何通過GitHub更新的方式。
- 映像變更觸發:當有更新的映像時,保持版本最新。
- 配置變更觸發:當創建新的BuildConfig時觸發。
Operator:
在Pods內運行,讓集群流程自動化,並讓使用者可以控制外部API。使用Operator的好處是通過自動化程序達成重複的安裝和更新、定期系統健檢、空中下載技術(over the air)、溝通工具和一體化(integration)。
CRD (Custom Resource Definition):
儲存和取用Kubernetes API物件,可以安裝在集群中,並通過kubectl進行存取。
Custom Controllers:
結合CRD和Controller(運行在Pod中的操作)來控制集群,這也被稱為“Operator Pattern”。
Operator Framework通常分為以下幾種:
- Operator SDK:協助作者建立、測試和封裝Operators。
- Operator Lifecycle Manager (OLM):控制Operator的安裝、升級和RBAC(權限控制)。
- Operator Registry:保存CRDs和Operator元數據。
- Operator Hub:讓集群管理員可以搜尋和安裝Operators(例如Red Hat提供的套件Llama等)。
Istio:
首先介紹Service Mesh,用來控制微服務間的溝通,包括流量安排、安全性和可觀察性(如流量、錯誤日誌),提供這些連結,讓使用者可以不用煩惱這些事。
Comments
Loading comments…
Leave a Comment