日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Rancher upgrade webhook之CI/CD

發布時間:2025/3/21 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Rancher upgrade webhook之CI/CD 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

概述


結合大家CI/CD的應用場景,本篇Blog旨在介紹如何通過Rancher的webhook微服務來實現CI/CD的聯動。


流程介紹


本次實踐的主要流程如下:


  • CI/CD console從代碼托管、配置中心、第三方依賴平臺拉取應用相應的代碼,配置、依賴、并構建應用鏡像。

  • 將構建好的應用鏡像推送到鏡像倉庫。

  • 通過Rancher Server暴露出來的API/UI/CLI創建并啟動應用棧。

  • 在Rancher Server上創建upgrade類型的webhook。

  • 更新應用、重新構建應用鏡像,同時推送到鏡像倉庫。

  • 觸發Dev環境的webhook,完成Dev環境的服務升級。

  • Dev環境驗證升級是否成功,應用是否正常。

  • 觸發Beta環境的webhook,完成Beta環境的服務升級。

  • Beta環境驗證升級是否成功,應用是否正常。

  • 出發Prod環境的webhook,完成Prod環境的服務升級。

  • Prod環境驗證升級是否成功,應用是否正常。



  • webhook介紹


    Rancher webhook的服務流程大致如下:


  • router根據用戶提交過來的method和url初始化對應的handler。

  • handler解析請求參數里面的key和projectid初始化對應的webhook driver。

  • driver調用升級接口,返回并相應觸發webhook的請求。



  • 環境準備


    Platform


    Mac,Windows,Linux,Docker Cloud,AWS,Azure均可部署。



    本次準備的平臺是Ubuntu發行版(14.04),為了兼容docker,選擇linux發行版的時候內核需控制在3.10以上。


    Docker


    • 根據用戶選擇的平臺安裝docker引擎,安裝指導可參考官方文檔,搭配Rancher使用,docker引擎版本最優選擇1.12.6或者1.13.1。

    • 本次準備的docker引擎版本是1.12.6。


    Rancher



    CI/CD


    Build應用鏡像


    示例應用基于NGX官方鏡像build,修改了NGX welcome頁面信息



    Push應用鏡像


    推送NGX應用鏡像到指定的遠程鏡像倉庫



    創建Stack&Service


    通過API創建webapp stack,NGX service,命令行如下

    curl?-u?"xxx:xxx"?\ -X?POST?\ -H?'Accept:?application/json'?\ -H?'Content-Type:?application/json'?\ -d?'{ "description":?"validate?the?upgrade?service?using?webhook", "name":?"webapp", "system":?false, "dockerCompose":?"version:?'2'\nservices:\n??NGX:\n????p_w_picpath:?anzersy/nginx:20170801\n????stdin_open:? true\n????tty:?true\n????cpuset:?\"0\"\n????ports:\n????-?8787:80/tcp\n????cpu_shares:?1024\n???? labels:\n??????io.rancher.container.pull_p_w_picpath:?always\n??????servicename:?nginx", "rancherCompose":?"version:?'2'\nservices:\n??NGX:\n????scale:?1\n????start_on_create:?true", "binding":?null, "startOnCreate":?true }'?'http://a.b.c.d:e/v2-beta/projects/1a107/stacks'


    驗證服務


    打開瀏覽器,訪問NGX服務,確認應用的內容。



    創建webhook


    進入webhook創建頁面,通過UI為Dev,Beta,Prod 環境創建service upgrade webhook。


    (注意設置好對應的鏡像TAG和服務標簽)



    更新并push應用鏡像


    更新NGX應用、構建鏡像,并推送到遠程倉庫。



    觸發upgrade webhook


    觸發upgrade webhoook,實現服務自動升級。

    curl?-u?"xxx:xxx"?\ -X?POST?\ -H?'Accept:?application/json'?\ -H?'Content-Type:?application/json'?\ -d?'{"push_data":?{"tag":?"20170801"},"repository":?{"repo_name":?"anzersy/nginx"} }'?'http://a.b.c.d:e/v1-


    驗證更新


    打開瀏覽器,訪問NGX服務,驗證服務升級內容是否正常。



    CD


    循環3.7&3.8的步驟,完成并驗證測試環境和線上環境的持續部署。


    原文來源:Rancher Labs


    9月27日,北京海航萬豪酒店,容器技術大會Container Day 2017即將舉行。


    CloudStack之父、海航科技技術總監、華為PaaS部門部長、恒豐銀行科技部總經理、阿里云PaaS工程總監、民生保險CIO······均已加入豪華講師套餐!


    11家已容器落地企業,15位真·云計算大咖,13場純·技術演講,結合實戰場景,聚焦落地經驗。免費參會+超高規格,詳細議程及注冊鏈接請戳

    轉載于:https://blog.51cto.com/12462495/1955094

    《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

    總結

    以上是生活随笔為你收集整理的Rancher upgrade webhook之CI/CD的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。