1. <legend id="jwpzh"></legend>

    2. <optgroup id="jwpzh"></optgroup>

      <optgroup id="jwpzh"></optgroup>
      1. 回到主頁

        UWinRelease |云原生產品線「工作空間」上線最新特性,等你來體驗!

        · 平臺發布

        前言

        早在二月新年伊始,優維科技云原生產品線就發布了全新產品——支持產品團隊在Kubernetes集群上進行服務部署、配置管理、團隊成員和角色管理的「工作空間」,在前兩期的UWinRelease中,我們詳細介紹了「工作空間」的設計背景和特性介紹。

        眾所周知,工作空間是一個可以將團隊的基礎設施、服務部署與發布、配置中心以及隔離資源訪問權限的邏輯單元。在這里,企業的不同產品團隊都將建立自己的工作空間,且它們之間相互隔離。工作空間內擁有該產品團隊使用的基礎設施、擁有容器配置管理的能力,成員可以使用這些資源進行服務部署和發布。

        特性解讀

        1、成員權限

        工作空間使得不同產品團隊之間的基礎設置、服務部署與發布、配置中心和資源訪問相互隔離,在這當中使得不同資源擁有訪問權限的,正是成員權限。

        「成員權限」模塊屬于某個工作空間實例,同一個用戶在不同的工作空間中可以被分配不同的身份,從而獲得不同的資源訪問和操作權限。

        有別于以往靈活、全開放的“用戶--角色--權限”系統,這次我們在工作空間中直接出廠自帶“管理員”、“部署人員”、“配置人員”和“訪客” 4 種身份,每種身份分別具有不同的權限范圍,從大到小依次為:

        管理員: 管理員在空間內具有最高權限;其可進行資源池、空間內成員管理,也可進行普通的服務部署與發布、配置管理等。(備注:“管理員”并非與生俱來,需要系統管理員統一規劃產品團隊的工作空間之后,在對應工作空間中添加成員并指派其為管理員,之后工作空間內的管理員就可獨自管理工作空間其他成員。)

        ?

        部署人員: “部署人員”的所擁有的權限僅次于“管理員”;其可訪問工作空間一切資源,出于運維工作的需要,亦可操作“部署管理”、“配置中心”模塊,但無法管理成員和資源池。

        ?

        配置人員: “配置人員”擁有的權限要高于“訪客”, 其可訪問工作空間一切資源,但僅能操作“配置中心”模塊進行配置管理,不能操作“部署管理”模塊、也無法管理成員、不能管理資源池。

        ?

        訪客: “訪客”所擁有的權限最低,僅可以在工作空間中訪問資源,對一切資源不具有操作權限。

        二、應用路由

        當我們在工作空間中使用“部署單元”來集合部署所需的一些資源(包括基礎設施、制品等),對其成功部署并正確初始化之后,我們就得到了一些服務,對于應用的某些服務來說(譬如一些前端服務),我們需要將其公開發布到集群之外的外部 IP 地址上,以便我們從外部訪問這些服務,具體Kubernetes 提供了幾種訪問服務的方式:

        ClusterIP: 服務的 Pod 實例會提供可以被集群內部其他服務訪問的地址,但不對外暴露;當我們需要調試一個服務時,也可以使用Kubernetes Proxy 來訪問它,實現集群外部的訪問;

        ?

        NodePort: 使用 NodePort 模式的服務會在其所有節點上打開一個特定的端口,所有請求該端口的流量都會被轉發給該服務,故我們可以通過 <NodeIP>:<NodePort> 來從外部訪問服務;但這種方式一來一個端口只能暴露一種服務,二來一旦節點/虛擬機 IP 發生改變,則需要手動處理這種情況,這也是不建議生產環境中使用這種方式的原因;

        ?

        LoadBalancer: 使用公有云提供商的負載均衡器來暴露服務,每個通過這種方式暴露的服務都將獲得一個自己的公網 IP,所有請求該IP 特定端口上的流量都將被轉發到對應服務,雖然這是向外部暴露服務最直接的方式,但我們必須為每一個獲得公網 IP 的服務支付相應的費用…

        ?

        Ingress: 這可能是暴露服務最強大的一種方式,因為 Ingress 可以在同一個 IP 地址上暴露多個服務——其實 Ingress 是在多個服務前面充當一個入口的角色,在這個入口上多個路由轉發規則被整合成為一個資源,即 Ingress。

        我們在工作空間中提供暴露外部訪問服務的方式正是 Ingress(應用路由)。Ingress 的類型有很多,分別具備不同的功能,在工作空間中我們使用了 Nginx 提供的 Ingress 控制器,從而使得 Kubernetes 集群中的服務暴露給外部訪問,基于此,用戶還可享受到 Nginx 提供的負載均衡、SSL/TLS 加密和對 URI 的重定向。

        應用路由生效的先決條件是至少要有一個“ingress 控制器”,在工作空間創建時我們將自動部署一個 Nginx-ingress-controller,用以識別路由規則和轉發外部訪問流量。

        其次是路由轉發規則,我們支持了原生 Ingress 的路由規則,用戶可以在一個應用路由實例中創建多個域名轉發規則,每個域名轉發規則下包含多個子路徑,這些子路徑都將把請求轉發給其對應的服務。如下圖:

        • 用戶訪問?http://next.easyops.cn?下的子路徑?/abc?將被轉發至?service1的?4200?端口;
        • 用戶訪問?http://next.easyops.cn?下的子路徑?/def?將被轉發至?service2的?8080?端口;
        • 用戶訪問?https://nginx.easyops.cn/?的流量將被轉發至?service3的?80?端口;
        • 對于想使用?HTTPS協議?的域名來說,我們還支持從工作空間的配置中心選擇?TLS密鑰?進行相關認證,以讓?https?訪問也能夠被應用路由所轉發。

        其他特性發布

        一、CI流水線支持模版
        • 可使用模板快速初始化你的流水線,模板主要保存了流水線的工作流描述(結構化Yaml文件)和一些變量;

        • 支持了從現有流水線“另存為”模板,修改模板可同步至所有實例化的流水線;

        • 模板自帶流水線所需變量,無需手動挨個添加變量。

        二、制品倉庫支持Harbor 1.9 界面的項目WebHook
        • 現在可通過 Webhook 可將企業內部的 Harbor 倉庫同步至制品管理小產品供部署系統使用。

        • 提供兩種方式—— 方式一:全局配置,可將整個鏡像倉庫的鏡像信息同步至制品管理,省時省力;方式二:單項目設置,按需同步 Harbor 項目的鏡像信息,保護隱私數據,也更加靈活。

        三、容器部署支持事件與日志
        • 現在可通過 Webhook 可將企業內部的 Harbor 倉庫同步至制品管理小產品供部署系統使用。

        • 在執行擴容/升級制品等操作后如有異常,可切換到「事件」選項卡,在這里可以實時獲取Pod和ReplicaSet的原因和信息,還可切換到「日志」選項卡,關注Pod下面每個容器的日志打印信息。

        四、容器部署支持重新部署
        • 在不改變容器設置/副本數設置的情況下,配合部署更新策略,可將滾動切換到已加載變更后的存儲卷、環境變量的實例。

        如果您想了解更多EasyOps產品能力、功能實現細節,歡迎您通過我們的商務銷售渠道建立溝通哦!

        所有文章
        ×

        還剩一步!

        確認郵件已發至你的郵箱。?請點擊郵件中的確認鏈接,完成訂閱。

        好的

        美女一级牲交视频