中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在TKE中實現DevOps

發布時間:2022-01-11 17:48:10 來源:億速云 閱讀:156 作者:iii 欄目:云計算

這篇“如何在TKE中實現DevOps”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“如何在TKE中實現DevOps”文章吧。

概述

DevOps 理念被越來越多的企業采納,DevOps 是 Development 和 Operations 的組合詞,代表著重視「軟件開發人員(Dev)」和「IT 運維技術人員(Ops)」之間溝通合作的文化;旨在透過自動化「軟件交付」和「架構變更」的流程,使得構建、 測試、發布軟件的過程能夠更加地快捷、頻繁和可靠。在云原生時代,我們更需要 Devops 思維來實現敏捷開發, 本文將介紹和實踐專為云原生打造的 TKE 容器 DevOps 服務,實現從代碼提交時觸發鏡像的自動構建,再到鏡像構建成功時觸發自動部署流程將應用部署、更新到 TKE 集群中的一整套無縫銜接的 Devops 流水線。

TKE 容器 DevOps 簡介

TKE 容器 DevOps 是 容器服務 TKE、容器鏡像服務 TCR 和 CODING DevOps 三個服務緊密結合,面向容器業務場景,具備自動化代碼編譯、容器鏡像構建、鏡像推送及應用部署等功能,為客戶提供強大的一站式云原生 DevOps 服務。容器 DevOps 快速入門請參考 TKE 和 Coding 協同業務實現快速迭代 最佳實踐文檔。

TKE 容器 DevOps 業務流程

TKE 容器 DevOps 服務貫穿了整個應用開發和部署流程的全生命周期管理,實現了從更新代碼到應用部署、更新的自動化,如下圖所示:

如何在TKE中實現DevOps

如何使用 TKE 容器 DevOps

操作場景

TKE 容器 Devops 功能提供了強大的云原生 Devops服務,下面將按照上述 TKE 容器 Devops 業務流程圖來實現從源碼更新到業務發布的整套自動化流程。

前提條件

  • 創建 TKE 測試集群

    關于如何創建可參考文檔 部署容器服務TKE。

  • 開通 容器鏡像服務 TCR 服務

    已創建可訪問的 TCR 測試實例和生成測試實例訪問憑證。 TCR 需要開通企業標準版或高級版支持云原生交付工作流,詳情請參考 容器鏡像服務購買指南,目前 TCR 支持區域請參考 支持地域。

  • 開通 CODING DevOps 服務

    已創建和完善了 Coding Devops 團隊。如使用子賬號進行操作,請使用主賬號在 CODING DevOps 控制臺快速創建擁有權限的子用戶或參考 子用戶權限設置 提前為子賬號授予對應實例的操作權限。

操作步驟

TKE 容器 Devops 訪問入口

在 TKE 控制臺左側功能菜單欄點擊【Devops】功能鏈接即可進入【容器 Devops】介紹界面,如下圖所示:

如何在TKE中實現DevOps

點擊 【立即使用】即可跳轉到所屬團隊的 Coding 主頁面使用相關 DevOps 功能。

配置代碼托管

在 Coding 團隊主頁面創建一個測試項目和測試代碼倉庫,關于 Coding 代碼托管介紹請參考 代碼托管介紹 。創建步驟如下:

**步驟 1:**在 Coding 團隊主頁面【 項目】中創建測試項目,如下圖所示:

如何在TKE中實現DevOps

**步驟 2:**點擊已創建的測試項目 “test-jokey” 進入項目主頁面,在【代碼倉庫】菜單中新建測試代碼倉庫,如下圖所示:

如何在TKE中實現DevOps

創建構建計劃

在測試項目 “test-jokey” 主頁面左側菜單【持續集成】的子菜單 【構建計劃】中創建一個構建計劃,構建計劃是持續集成的基本單元,可以通過選擇構建計劃模版快速創建一個構建計劃,詳情請參考文檔 快速開始持續集成。

**步驟 1:**選擇 “構建鏡像并推送到 TCR 企業版” 模版快速創建一個構件計劃,創建示例如下:

如何在TKE中實現DevOps

**步驟 2:**根據構建計劃模版選擇要檢出的代碼源和配置 TCR 訪問憑證相關環境變量, 右邊可以看到模版生成的 Jenkinsfile 預覽,如下圖:

提示:Coding devops 和 TCR 實例之間內網互通,鏡像 push 默認使用內網傳輸,無需另外配置。

如何在TKE中實現DevOps

使用構建模版生成的構建項目,也可以通過點擊構建項目的【設置】菜單再對構建詳情進行自定義配置,構建計劃配置頁面的功能說明如下:

如何在TKE中實現DevOps

【基礎信息】: 基礎配置頁面可選擇代碼源和節點池等基礎配置,節點池相關說明請參考文檔 構建節點。

【流程配置】:用來配置運行構建任務的環境,相關說明請參考 構建環境。

【觸發規則】:用來配置構建計劃的觸發規則,可支持通過多種方式來觸發構建計劃,相關說明請參考 觸發規則。

【變量與緩存】:環境變量與緩存配置,相關說明請參考 環境變量 和 緩存目錄 。

【通知提醒】:構建計劃完成時可向指定的 Coding 團隊成員發送通知提醒。

另外還可以在【項目配置 -> 開發者選項 -> WebHook】 中新建 WebHook 的方式將事件通知推送到企業微信等即時通信平臺,詳情請參考 WebHook 和 綁定企業微信群機器人,配置示例如下圖:

如何在TKE中實現DevOps

想了解更多關于 Coding 持續集成的詳細介紹請參考 持續集成介紹。

創建持續部署

在測試項目 “test-jokey” 主頁面左側菜單 【持續集成】的子菜單 【Kubernetes】中根據步驟引導創建持續部署流水線,如下圖所示:

如何在TKE中實現DevOps

配置云賬號

請參考 云賬號 文檔,添加配置部署云上資源的訪問云賬號信息,可以選擇【騰訊云 TKE】或者【Kubernetes】 類型的云賬號,輸入相關認證配置添加云賬號,這里選擇了【Kubernetes】方式綁定。

如何在TKE中實現DevOps

配置應用和流程

關于 Coding 應用與項目相關說明請參考文檔 應用與項目和 流程配置 ,這里僅簡單說明下在配置應用和流程過程中的關鍵配置項。

在創建應用時,需要勾選【 Kubernetes(TKE) 部署】方式:

如何在TKE中實現DevOps

在新建的應用中創建部署流程時,選擇【Kubernetes】流程模版,再根據實際需要選擇模版下的流程,這里選擇了下圖中第二個流程,部署 Deployment 和 Service 到 Kubernets 集群的流程:

如何在TKE中實現DevOps

在【部署流程】中配置部署流程時,【啟動所需制品】選項關聯之前的持續集成環節生成的 TCR 倉庫鏡像制品:

如何在TKE中實現DevOps

使用【自動觸發器】綁定 TCR 倉庫鏡像制品,這里是重點,作用是當有新版本鏡像構建成功時,將自動觸發部署流程,配置方式如下:

如何在TKE中實現DevOps

接下來就是配置【部署 Deployment】和【部署 Service】部署階段,兩個階段的配置方式類似,選擇之前添加的有部署權限的云賬號和填寫自定義的 Manifest,即自定義部署 YAML 模版。

如何在TKE中實現DevOps

自定義 Deployment YAML 示例如下:

提示:關于持續部署更新策略

本示例僅使用了一個簡單的 Deployment YAML 部署到 Kubernetes 集群,使用了默認的滾動部署(RollingUpdate)更新策略。實際上,可以借助 Nginx-ingress / Istio 等工具配置更高級的更新策略,如藍綠發布、金絲雀、A/B 測試等,具體使用方法請參閱 藍綠發布 、 Nginx-ingress 實現自動化灰度發布、 持續部署 + TKE Mesh 灰度發布實踐。

apiVersion: apps/v1
kind: Deployment
metadata:
  name: devops-app
spec:
  replicas: 2
  selector:
    matchLabels:
      app: devops-app
  template:
    metadata:
      labels:
        app: devops-app
    spec:
      containers:
        - image: xxx-test.tencentcloudcr.com/xxx-test/jokey-test  # 示例鏡像地址
          name: devops-app
          ports:
            - containerPort: 5000
      imagePullSecrets:  # 私有倉庫訪問憑證配置 
        - name: tcr-secret # 訪問憑證 secret

其中, 對于 spec.template.spec.containers.*.image 的鏡像地址字段 Coding 會有一個轉換匹配規則, 關于轉換匹配規則的說明請參考文檔 在 manifest 中綁定制品。

關于 TKE 拉取 TCR 私有倉庫鏡像有兩種方式:

  • 在 TCR 支持區域內可配置 TKE 免密拉取 TCR 容器鏡像,關于 TCR 支持區域請參考 支持地域,關于如何配置可參考文檔 TKE 集群使用 TCR 插件內網免密拉取容器鏡像。

  • 手動配置 TKE 拉取 TCR 私有倉庫鏡像的訪問憑證,配置方式可參考 TKE 配置私有倉庫訪問示例 。

注意:上面的 Deployment YAML 示例使用了 “手動配置 TKE 拉取 TCR 私有倉庫鏡像的訪問憑證” 的方式。

自定義的 Service Manifest YAML 示例:

apiVersion: v1
kind: Service
metadata:
  labels:
    app: devops-svc
  name: devops-svc
spec:
  ports:
    - port: 5000
      protocol: TCP
  selector:
    app: devops-app

另外可以為部署流程的每個階段配置自定義事件通知(可選),以便方便快捷的獲知部署流程執行情況,這里配置了企業微信通知方式,獲取企業微信 Webook 機器人鏈接的方法可參考 創建企業微信群機器人。

如何在TKE中實現DevOps

關聯項目和應用

關聯項目和應用配置請參考文檔 項目和應用關聯。

提單發布

提單發布使用和配置請參考文檔 新建發布單。

想了解更多關于 Coding 持續部署的詳細介紹請參考 持續部署介紹。

測試驗證

在項目代碼文件中修改添加如下所示的 v2 API 代碼后提交 master 分支:

如何在TKE中實現DevOps

由于【持續集成】中的構建計劃使用了 “代碼更新時自動執行” 的事件觸發配置, 了解相關觸發配置請參考 觸發規則。當提交修改的代碼時,會自動觸發關聯的構建計劃執行:

如何在TKE中實現DevOps

如果為持續集成配置了企業微信 Webhook 通知,企業微信也會收到相應的即時通知消息,如下圖所示:

如何在TKE中實現DevOps

當構建計劃生成 Docker 鏡像制品時,又會自動觸發關聯的【持續部署】流程,將新的鏡像應用更新到 TKE 集群中:

如何在TKE中實現DevOps

如果部署流程有配置企業微信通知的話,當部署流程任務完成時,會收到對應的企業微信部署完成通知,如下圖所示:

如何在TKE中實現DevOps

此時,可以在 TKE 中看到已經成功更新了工作負載:

如何在TKE中實現DevOps

以上就是關于“如何在TKE中實現DevOps”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

盐源县| 高邮市| 花莲县| 肇庆市| 册亨县| 绩溪县| 承德县| 台湾省| 高邮市| 凤翔县| 大港区| 荣昌县| 互助| 仙桃市| 大厂| 罗源县| 哈尔滨市| 镇赉县| 冀州市| 朝阳市| 梅河口市| 察雅县| 武山县| 齐河县| 林芝县| 郎溪县| 梅河口市| 南阳市| 沁阳市| 北安市| 博野县| 禹州市| 东宁县| 张家川| 汪清县| 临猗县| 万盛区| 邯郸县| 仁怀市| 同江市| 武宣县|