<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      用99元買的服務(wù)器搭一套CI/CD系統(tǒng)

      故事的開(kāi)始是這樣的:無(wú)聊的時(shí)候在阿里云買了一個(gè)99/年的服務(wù),上面部署了一個(gè)Git服務(wù),用于托管自己無(wú)聊時(shí)寫的一些代碼,順便也拿它做開(kāi)發(fā)服務(wù)器。為了方便應(yīng)用管理,起初用docker來(lái)管理和部署應(yīng)用,后來(lái)升級(jí)了一把,用上了docker-compose,畢竟跟手撕命令相比聲明式部署更顯科學(xué),docker-compose對(duì)于依賴項(xiàng)目的管理更是深得我心。于是,這樣和諧的過(guò)了很久,直到不久前無(wú)聊的時(shí)候在騰訊云上領(lǐng)了一個(gè)體驗(yàn)服務(wù)器,免費(fèi)的。雖然是體驗(yàn)版,但不用起來(lái)談何體驗(yàn)?zāi)兀紒?lái)想去感覺(jué)應(yīng)該組個(gè)集群,順便搞一套 CI/CD,這樣做不僅能大幅提升編碼幸福感,也能對(duì)K8s有個(gè)體面的認(rèn)識(shí)。

      K3S

      K3s 是輕量級(jí)的、一個(gè)完全兼容的 Kubernetes 發(fā)行版。K3s 易于安裝,僅需要 Kubernetes 內(nèi)存的一半,所有組件都在一個(gè)小于 100 MB 的二進(jìn)制文件中(~70MB)。官方說(shuō)希望安裝的 Kubernetes 只占用一半的內(nèi)存。Kubernetes 是一個(gè) 10 個(gè)字母的單詞,他們只用5個(gè),所以叫K3s。

      K3s很輕,適合2核2GB的云服務(wù)器裝著玩。雖然程序只有~70MB,但實(shí)際上包含Server和Agent兩個(gè)應(yīng)用(同Master-Slave)。不僅如此,K3s 打包了所需的依賴,包括containerd、Flannel、Traefik、Service LB等等。看上去還是挺優(yōu)秀的,實(shí)際上手還是有一些門檻的,由于基礎(chǔ)知識(shí)的缺失,單是kubectl這個(gè)工具都熟悉兩天。加上Flannel、LoadBalancer這些內(nèi)容,服務(wù)器都重裝了好幾輪。好在,所有的問(wèn)題都有一個(gè)標(biāo)準(zhǔn)答案,一路踩坑一路成長(zhǎng),總算把 K3s 給跑起來(lái)了。

      Harness(open source)

      記得它曾經(jīng)叫Gitness,他們家東西挺多的,比如Drone?,F(xiàn)在做強(qiáng)做大了,Gitness也改名叫Harness了,它資源消耗很小。Harness自帶Pipeline功能,這也是我比較喜歡的方式,CI的配置直接存項(xiàng)目里。它的服務(wù)是go寫的、ui是react、打包用webpack,或許是他們那里的網(wǎng)絡(luò)帶寬足夠大吧,它打包的時(shí)候沒(méi)有打壓縮包(像比較熟悉的gzip),服務(wù)上也沒(méi)做內(nèi)容壓縮,部署在只有3M帶寬的服務(wù)器上加載速度著實(shí)感人,所以只能在代理層手動(dòng)做 gzip 壓縮(順便還加上了http cache)。

      ArgoCD

      Argo CD是一款適用于Kubernetes 的聲明式GitOps 持續(xù)交付工具。應(yīng)用程序的定義、配置和環(huán)境應(yīng)該是聲明式的,并受版本控制。 應(yīng)用程序的部署和生命周期管理應(yīng)該是自動(dòng)化的、可審計(jì)的,并易于理解。這是官方給出的介紹,簡(jiǎn)單來(lái)說(shuō),它可以:

      1. 從Git倉(cāng)庫(kù)拉取Kubernetes配置,并自動(dòng)同步到集群。
      2. 提供可視化UI,支持應(yīng)用管理、版本回滾等操作。
      3. 聲明式管理,所有變更都由Git驅(qū)動(dòng),保證部署一致性。

      在我的架構(gòu)中,ArgoCD負(fù)責(zé)盯緊Git倉(cāng)庫(kù)中的deployment.yaml,一旦檢測(cè)到更新,就會(huì)自動(dòng)部署最新的版本。如果出現(xiàn)問(wèn)題,直接在UI里點(diǎn)回滾,幾秒鐘搞定,優(yōu)雅又高效。

      CI/CD 流程效果

      CI階段(Harness Pipeline)
      代碼push到Git倉(cāng)庫(kù)后,Harness觸發(fā)Pipeline:

      1. Checkout代碼
      2. 安裝依賴 & 構(gòu)建應(yīng)用
      3. 構(gòu)建Docker鏡像
      4. 上傳鏡像到阿里云鏡像倉(cāng)庫(kù)(個(gè)人版免費(fèi))
      5. 修改deployment.yaml里的鏡像版本號(hào)。

      CI 到此結(jié)束,下一步交給 ArgoCD。

      CD階段(ArgoCD部署)

      1. 自動(dòng)拉取最新配置deployment.yaml(deployment.yaml存放在Git倉(cāng)庫(kù)中)。
      2. 自動(dòng)同步或手動(dòng)同步應(yīng)用部署。

      最終,實(shí)現(xiàn)了代碼提交 → 自動(dòng)構(gòu)建 → 自動(dòng)部署的完整閉環(huán),整個(gè)過(guò)程無(wú)需手動(dòng)干預(yù),更新全自動(dòng)完成!

      防坑指南

      最坑的還是AI大模型的幻覺(jué)問(wèn)題,當(dāng)下AI已成為生活必需品,它能快速的分析問(wèn)題并給出解決方案,也正是因此被他帶著滿世界跑,兜兜轉(zhuǎn)轉(zhuǎn)還是回到了起點(diǎn),下面盤點(diǎn)一下這次AI帶我跳過(guò)的坑。

      1、禁用Traefik
      安裝K3s時(shí)它就讓我直接把Traefik禁用,然后用Nginx或Caddy做反向代理。正好Caddy我熟,這坑跳得是無(wú)怨無(wú)悔。老實(shí)說(shuō),Caddy配置著實(shí)簡(jiǎn)單,尤其是在開(kāi)啟Let‘s Encrypt和gzip壓縮這件事上,于是果斷選擇了Caddy。起初手動(dòng)部署項(xiàng)目的時(shí)候用著還挺順手的,直到安裝了ArgoCD要開(kāi)始自動(dòng)部署時(shí),我忽然意識(shí)到了問(wèn)題,程序雖自動(dòng)部署了,域名綁定什么的咋整?又要上服務(wù)器嗎?哎!這才明白Ingress Controller是不可替代的。不過(guò)這一路也不虧,不僅提高了對(duì)Ingress Controller的認(rèn)知,中間還因?yàn)镕lannel配置導(dǎo)致的問(wèn)題將LoadBalancer的知識(shí)也擼了不少(AI讓我把自帶的ServiceLB禁用了,自己安裝MetalLB,竟然也老老實(shí)實(shí)的跟著干了)。

      2、Harness Pipeline配置
      這個(gè)其實(shí)有點(diǎn)甩鍋,畢竟工具是我選的。在使用Pipeline插件構(gòu)建docker鏡像這件事上,Harness自己的插件文檔給出來(lái)的代碼并不適用于Harness Pipeline。但又確實(shí)是AI胡編亂造的給我的配置文件,折騰到了幾乎要放棄的地步。好在放棄的前一刻,自己根據(jù)pipeline示例配置結(jié)合官方文檔魔改了一份,最后竟成功蒙混過(guò)關(guān)。

      最后

      從最初的99元服務(wù)器,到搭建完整的K3s + CI/CD體系,這一路踩了不少坑,但收獲也不少。Kubernetes的學(xué)習(xí)門檻確實(shí)不低,但只要愿意折騰,總能找到答案。
      如果對(duì)K3s感興趣,可以看看我的詳細(xì)筆記:https://www.aser1989.cn/docs/k3s/intro/

      posted @ 2025-04-01 22:38  ASER_1989  閱讀(1822)  評(píng)論(1)    收藏  舉報(bào)
      主站蜘蛛池模板: 夜夜高潮次次欢爽av女| 成人久久精品国产亚洲av| 亚洲性日韩一区二区三区| 国产成人a在线观看视频免费| 白丝乳交内射一二三区| 国产精品视频全国免费观看| 亚洲一区二区偷拍精品| 亚洲最大成人免费av| 婷婷色香五月综合缴缴情香蕉| 爱色精品视频一区二区| 精品人妻伦九区久久aaa片| 内射一区二区三区四区| 人妻少妇精品视频三区二区| 亚洲色大成网站www永久男同| av中文无码韩国亚洲色偷偷| 岛国中文字幕一区二区 | 国产精品极品美女自在线观看免费| 国产亚洲精品久久77777| 国产美女久久久亚洲综合| 茄子视频国产在线观看| 午夜色大片在线观看免费| 99riav国产精品视频| 中文成人在线| 天天综合色天天综合色h| 国产午夜亚洲精品国产成人| 黄山市| 日韩无专区精品中文字幕| 在线观看成人永久免费网站| 羞羞影院午夜男女爽爽免费视频| 免费国产好深啊好涨好硬视频| 国产精品视频中文字幕| 亚洲av日韩av综合在线观看| 亚洲国产成人无码影片在线播放 | 非会员区试看120秒6次| 国语精品自产拍在线观看网站| 自拍偷拍第一区二区三区| 人人妻人人狠人人爽| 精品午夜福利在线视在亚洲| 国产成人一区二区不卡| 国产精品美女一区二区三| 给我免费观看片在线|