国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

將 Terraform 生態(tài)粘合到 Kubernetes 世界

云計算 新聞
KubeVela 是一個現(xiàn)代的軟件交付控制平面, 面向開發(fā)者提供統(tǒng)一的 API 抽象,使開發(fā)者使用相同的 IaC 方式來同時交付普通應用和云服務。

背景

隨著各大云廠商產品版圖的擴大,基礎計算設施,中間件服務,大數(shù)據(jù)/AI 服務,應用運維管理服務等都可以直接被企業(yè)和開發(fā)者拿來即用。我們注意到也有不少企業(yè)基于不同云廠商的服務作為基礎來建設自己的企業(yè)基礎設施中臺。為了更高效,統(tǒng)一的管理云服務,IaC 思想近年來盛行,其中 Terrafrom 更是成功得到了幾乎所有的云廠商的采納和支持。以 Terrafrom 模型為核心的云服務 IaC 生態(tài)已經形成。然而在 Kubernetes 大行其道的今天,IaC 被冠以更廣大的想象空間,Terraform IaC 能力和生態(tài)成果如果融入 Kubernetes 世界,我們認為這是一種強強聯(lián)合。

理由一:構建統(tǒng)一的企業(yè)混合云 PaaS 平臺

目前大多數(shù)企業(yè)基于 Kubernetes 服務來構建 PaaS 平臺或基礎設施管理平臺,統(tǒng)一集成云上和自建基礎設施。但除了提供基礎設施以外,各種中間件,大數(shù)據(jù)服務,AI 服務,應用可觀測等也是云廠商重點提供的產品。企業(yè)平臺需要具備創(chuàng)建和銷毀更多云服務的能力,這時 Terraform 會進入平臺構建者的視線,那么他們還需要在 Kubernetes 之外再做一次對接開發(fā)嗎?而且同時還需要考慮持續(xù)發(fā)布,GitOps,灰度發(fā)布等需求。顯然如果直接 基于 Kubernetes 即可完成對接是更好的選項。

理由二:為開發(fā)者打造 Serverless 體驗

云計算的本質或目標就是 Serverless 化,然而自建的基礎設施總是有限的,無縫接入云服務可以開啟 “近乎無限”的資源池。同時開發(fā)者在架構業(yè)務應用時,除了在 Serverless 平臺上直接完成業(yè)務服務部署以外,還需要直接獲得例如消息中間件,數(shù)據(jù)庫等服務。更多的企業(yè)會采用對接云廠商的方案,運維管理成本更低。但對于開發(fā)者,這最好是透明的,一致的。

理由三:更徹底的 IaC 能力

一切皆服務,我們需要通過統(tǒng)一的模型來描述云資源、自建基礎設施和各種企業(yè)應用。Terraform 和 Kubernetes 可以整合并統(tǒng)一為面向開發(fā)者的 IaC 規(guī)范。帶來的好處是同時納管云資源和容器生態(tài)豐富的運維能力,以及面向復雜應用的統(tǒng)一編排

理由四:Terraform 開源版本是客戶端模式工作,無法像 Kubernetes 一樣進行終態(tài)維持。

Terraform 開源發(fā)行版只能以客戶端模式工作,即用戶進行完一次交付后無法維持服務狀態(tài),且如果遇到網絡故障交付失敗時需要手動進行重試處理。Kubernetes 為開發(fā)者帶來了面向終態(tài)的 IaC 思想,通過控制器模式實現(xiàn)對目標資源的狀態(tài)維持,這進一步提升了 Terraform 工具在自動化層面的優(yōu)勢。

KubeVela 是一個現(xiàn)代的軟件交付控制平面, 面向開發(fā)者提供統(tǒng)一的 API 抽象,使開發(fā)者使用相同的 IaC 方式來同時交付普通應用和云服務。KubeVela 向下直接支持 Terraform 的 API 和 Kubernetes API,無需修改可復用所有 Terraform 模塊和所有 Kubernetes 對象。通過 KubeVela 你可以非常簡單的實現(xiàn)上訴三方面訴求。我們也看到了另外一種模式的 Crossplane 項目,通過定義 Kubernetes 原生 CRD 的形式在對接云服務,使其體驗更加原生,KubeVela 也天然支持 Crossplane API。

接下來讓我們通過兩部分內容,來詳細看看 KubeVela 是如何應用 Terraform 來為用戶提供統(tǒng)一 IaC 體驗的。

  • Part.1 將介紹如何將 Terraform 與 KubeVela 粘合,這需要一些 Terraform 和 KubeVela 的基礎知識。
  • Part.2 將介紹 KubeVela 交付云服務的一個實踐案例,包括 :

1)通過 KubeVela 提供一個公網 IP 的 Cloud ECS 實例;

2)使用 ECS 實例作為隧道服務器,為內網環(huán)境中的任何容器服務提供公共訪問。

將 Terraform 模塊轉化為 KubeVela 組件

準備 Terraform Module

如果你已經有一個經過良好測試的 Terraform 模塊,那么可以跳過該步驟。

在開始之前,請確保您擁有:

  • 安裝 Terraform CLI[1]
  • 準備一個云服務賬號(AK/SK),本文用例使用阿里云。
  • 學習一些使用 Terraform 的基礎知識。

這是我用于此演示的 Terraform 模塊[2]

1.下載 Terraform 模塊。

git clone https://github.com/wonderflow/terraform-alicloud-ecs-instance.git
cd terraform-alicloud-ecs-instance

2.初始化并下載最新穩(wěn)定版本的阿里云 Provider。

terraform init

3.配置阿里云授權賬號信息。

export ALICLOUD_ACCESS_KEY="your-accesskey-id"
export ALICLOUD_SECRET_KEY="your-accesskey-secret"
export ALICLOUD_REGION="your-region-id"

你也可以通過創(chuàng)建 provider.tf 文件來配置賬號信息。

provider "alicloud" {
access_key = "your-accesskey-id"
secret_key = "your-accesskey-secret"
region = "cn-hangzhou"
}

4.測試資源創(chuàng)建是否正常。

terraform apply -var-file=test/test.tfvars

5.測試正常后銷毀所有已創(chuàng)建的資源。

terraform destroy  -var-file=test/test.tfvars

到此你也可以根據(jù)需要將此模塊推送到你自己的代碼倉庫中。

轉化 Terrafrom 模塊作為 KubeVela 擴展組件類型

這一步是核心,在開始之前,請確保您已經安裝了 Kubevela 控制平面[3],如果您沒有 Kubernetes 集群也不用擔心,快速演示時通過 VelaD 一鍵安裝完成就足夠了。

我們將使用我們剛剛準備好的 Terraform 模塊來進行下述動作。

生成 KubeVela 組件定義。

vela def init ecs --type component --provider alibaba --desc "Terraform configuration for Alibaba Cloud Elastic Compute Service" --git https://github.com/wonderflow/terraform-alicloud-ecs-instance.git > alibaba-ecs-def.yaml
vela kube apply -f alibaba-ecs-def.yaml

如果你已自定義過 Module ,請直接使用自己的代碼倉庫地址。

到此你已經成功的將 ECS 模塊添加為 KubeVela 的擴展組件類型,您可以從這里[4]了解更多詳細信息。Vela 平臺上的開發(fā)者可以開始直接使用該類型的組件。你可以通過下述命令來查閱自動生成的組件使用文檔:

vela show alibaba-ecs
# OR
vela show alibaba-ecs --web

是不是非常簡單?KubeVela 對 Terraform 有完善的工具鏈,但你也不必擔心需要為所有的 Terraform 模塊重復做該操作,因為社區(qū)已經為用戶提供了開箱即用的插件,只需要安裝對應云廠商的插件即可獲得已經轉化好的組件。接下來讓我們來應用這項能力實驗一些有意思的場景。

使用云服務將本地容器應用暴露到公網

在這一部分中,我們將介紹一種解決方案,您可以使用特定端口將任何 Kubernetes 服務公開。解決方案由以下組成:

  1. KubeVela 環(huán)境,如果你在第 1 部分練習過,你已經擁有了。
  2. 阿里云 ECS,KubeVela 會通過 Access Key 自動創(chuàng)建一個 tiny ECS(1u1g)。
  3. FRP[5],KubeVela 將在服務器端和客戶端啟動這個代理。

準備 KubeVela 環(huán)境

  • 安裝 KubeVela
curl -fsSl https://static.kubevela.net/script/install-velad.sh | bash
velad install

查看文檔 1[6]以了解更多安裝細節(jié)。

  • 啟用 Terraform Addon 和 Alibaba Provider
vela addon enable terraform
vela addon enable terraform-alibaba
  • 添加授權信息
vela provider add terraform-alibaba --ALICLOUD_ACCESS_KEY <"your-accesskey-id"> --ALICLOUD_SECRET_KEY "your-accesskey-secret" --ALICLOUD_REGION <your-region> --name terraform-alibaba-default

查看文檔 2[7]以獲取有關其他云的更多詳細信息。

部署帶有公網 IP 地址的 ECS 實例并啟動 FRP 服務

cat <<EOF | vela up -f -
# YAML begins
apiVersion: core.oam.dev/v1beta1
kind: Application
metadata:
name: ecs-demo
spec:
components:
- name: ecs-demo
type: alibaba-ecs
properties:
providerRef:
name: terraform-alibaba-default
writeConnectionSecretToRef:
name: outputs-ecs
name: "test-terraform-vela-123"
instance_type: "ecs.n1.tiny"
host_name: "test-terraform-vela"
password: "Test-123456!"
internet_max_bandwidth_out: "10"
associate_public_ip_address: "true"
instance_charge_type: "PostPaid"
user_data_url: "https://raw.githubusercontent.com/wonderflow/terraform-alicloud-ecs-instance/master/frp.sh"
ports:
- 8080
- 8081
- 8082
- 8083
- 9090
- 9091
- 9092
tags:
created_by: "Terraform-of-KubeVela"
created_from: "module-tf-alicloud-ecs-instance"
# YAML ends
EOF

此應用定義將部署一個帶有公網 IP 地址的 ECS 實例。

你可以通過下述命令詳細了解每一個字段說明:

vela show alibaba-ecs

執(zhí)行完上述部署命令后,你可以通過下面的方式查看應用部署狀態(tài):

vela status ecs-demo 
vela logs ecs-demo

應用部署完成后可以通過下述命令獲取到 IP 地址:

$ kubectl get secret outputs-ecs --template={{.data.this_public_ip}} | base64 --decode
["121.196.106.174"]

你可以通過 IP:9091 地址訪問到 FRP 服務的管理頁面,初始賬號密為:admin:vela123 至此我們完成了 ECS 服務的部署。

使用 FRP 服務

FRP 客戶端的使用非常簡單,我們可以為集群內的任何服務提供公共 IP。

1.單獨部署 FRP-Proxy。

cat <<EOF | vela up -f -
apiVersion: core.oam.dev/v1beta1
kind: Application
metadata:
name: frp-proxy
spec:
components:
- name: frp-proxy
type: worker
properties:
image: oamdev/frpc:0.43.0
env:
- name: server_addr
value: "121.196.106.174"
- name: server_port
value: "9090"
- name: local_port
value: "80"
- name: connect_name
value: "velaux-service"
- name: local_ip
value: "velaux.vela-system"
- name: remote_port
value: "8083"
EOF

在這種情況下,我們通過 velaux.vela-system 指定 local_ip,這意味著我們正在訪問命名空間 vela-system 中名為 velaux 的 Kubernetes 服務。你可以通過公網 IP:8083來訪問該服務。

2.將代理和普通應用共同部署。

cat <<EOF | vela up -f -
# YAML begins
apiVersion: core.oam.dev/v1beta1
kind: Application
metadata:
name: composed-app
spec:
components:
- name: web-new
type: webservice
properties:
image: oamdev/hello-world:v2
ports:
- port: 8000
expose: true
- name: frp-web
type: worker
properties:
image: oamdev/frpc:0.43.0
env:
- name: server_addr
value: "121.196.106.174"
- name: server_port
value: "9090"
- name: local_port
value: "8000"
- name: connect_name
value: "composed-app"
- name: local_ip
value: "web-new.default"
- name: remote_port
value: "8082"
EOF

如此部署完成后可通過公網 IP:8082 來訪問該服務。還有一種玩法是將 FRP-Proxy 定義為 Trait,直接掛載到需要暴露服務的組件上,這種方式希望你通過閱讀 KubeVela 的文檔來探索實現(xiàn)啦。

清理環(huán)境

通過下述命令完成測試過程中創(chuàng)建應用的清理動作:

vela delete composed-app -y 
vela delete frp-proxy -y
vela delete ecs-demo -y

云服務組件也會隨著應用刪除被銷毀。

到此我們通過一個具體的使用案例來描述了 KubeVela 是如何完成云服務和普通應用的統(tǒng)一描述和交付,希望你已經掌握并在自己的環(huán)境中進行多樣化嘗試。通過這個案例你也應該大概了解了 KubeVela 結合 Terraform 的最終效果。更多關于 KubeVela 的玩法,可通過閱讀 KubeVela 官方文檔獲得。

責任編輯:張燕妮 來源: 阿里云云棲號
相關推薦

2025-03-05 11:23:44

2015-10-19 10:53:03

2023-01-26 11:56:31

Kubernete虛擬機k3s

2019-01-15 08:58:40

Kubernetes生態(tài)圈Docker

2018-05-25 11:28:51

2022-05-31 19:03:10

微軟Windows 11賬戶

2023-02-02 19:12:24

ChatGPT人工智能

2020-12-03 18:29:30

KubernetesDocker容器

2024-02-28 08:13:32

2019-05-13 15:13:42

華為

2015-04-21 17:23:59

華為

2020-11-04 08:00:57

虛擬機stio網格

2025-09-22 08:43:11

2018-05-13 15:47:31

2022-01-06 14:33:42

Kubernetes容器

2019-04-01 09:17:23

Kubernetes公共云祼機

2023-04-03 09:41:39

技術數(shù)字博物館

2018-03-04 22:41:04

區(qū)塊鏈互聯(lián)網信息傳遞

2020-05-06 11:16:10

疫情遠程辦公自動化
點贊
收藏

51CTO技術棧公眾號

91在线视频九色| 欧美俄罗斯乱妇| 九热视频在线观看| 韩国三级在线一区| 99久久精品免费看国产四区| 久久国产精品色av免费看| 亚洲高清久久久久久| 国产在线69| 欧美一区永久视频免费观看| 免费人成在线观看网站| 亚洲高清在线精品| av在线影视| 亚洲精选在线视频| 米奇777在线影院线| 亚洲视频在线观看三级| 色爱综合网站| 国产欧美精品在线观看| 日韩成人三级视频| 国产精品69毛片高清亚洲| 青少年xxxxx性开放hg| 天堂成人免费av电影一区| 免费看国产精品一二区视频| 国产精品社区| 日本免费高清一区二区| 六月丁香婷婷色狠狠久久| 中文字幕中文字幕99| 国产盗摄女厕一区二区三区| 免费成人午夜视频| 国产喂奶挤奶一区二区三区 | 伊人精品综合| 久久久久久久久久久久av| 丝袜美腿综合| 91精品综合久久久久久五月天| 亚洲美女视频| 日韩影片在线播放| 日韩不卡一二三区| 激情五月五月婷婷| 久久综合九色综合欧美就去吻 | 4438全国亚洲精品在线观看视频| 婷婷精品在线观看| 97碰碰视频| 日本视频在线一区| 欧美在线一区视频| 亚洲日本一区二区| av基地在线| 国产香蕉精品视频一区二区三区| 国产精品亚洲四区在线观看| 国产99视频精品免视看7| 国产主播精品| 正在播放久久| 中文文精品字幕一区二区| 午夜成人影视| 欧美v日韩v国产v| 亚洲精品自拍| 成人黄色免费网站在线观看| 蜜桃久久久久久久| 亚欧美在线观看| 欧美日韩精品一区视频| 欧美片第一页| 国产精品视频一区二区高潮| 久久在线精品| 激情综合色综合啪啪开心| 亚洲第一网站男人都懂| 99久热这里只有精品视频免费观看| 国产精品视频yy9099| 奇米精品一区二区三区四区 | 不卡欧美aaaaa| 中文字幕校园春色| 日韩av综合中文字幕| 成人h动漫免费观看网站| 99精品国产高清在线观看| 久久av老司机精品网站导航| 第四色亚洲色图| 日韩欧美国产综合一区| 加勒比中文字幕精品| 欧美午夜精品理论片a级大开眼界| 久久精品在线免费观看| 男人天堂手机在线| 97久久精品视频| 日韩avvvv在线播放| bt电影在线| 精品视频在线播放免| 日韩在线欧美| 鲁一鲁一鲁一鲁一色| 在线日韩一区二区| 国语一区二区三区| 国产精品一二三在线观看| 欧美日韩在线视频观看| 伊人久久亚洲| 中文字幕第50页| 在线日韩国产精品| 精品伊人久久久| 亚洲激情免费视频| 欧美专区日韩专区| 亚洲激情播播| 欧美网站免费观看| 亚洲加勒比久久88色综合| 亚洲激情久久| av高清日电影| 久久影院模特热| 国模无码大尺度一区二区三区| 免费国产在线观看| 亲子乱一区二区三区电影| 99精品视频一区二区三区| 懂色av一区| 国产精品.com| 亚洲成人中文在线| 国产精品22p| 少妇高潮喷水久久久久久久久久| 亚洲国产精品人人爽夜夜爽| 一区二区三区高清视频在线观看| 小香蕉视频在线| 日本不卡高字幕在线2019| 91蜜桃传媒精品久久久一区二区| 午夜伦理福利在线| 亚洲国产欧美不卡在线观看| 欧美日韩一区成人| 欧美国产免费| 亚洲综合在线一区| 国产精品偷伦免费视频观看的| 中文字幕中文字幕一区| 天堂av一区| 中文字幕第88页| 久久久亚洲成人| 国产日韩欧美一区二区三区综合 | 免费毛片在线| 欧美另类高清视频在线| 亚洲看片网站| 91网页版在线登录入口| 四虎影院在线域名免费观看| 五月综合久久| 日韩欧美网站| 国产一区高清| 又黄又www的网站| 婷婷亚洲天堂| 午夜久久久久久久久久久| 精品欧美日韩在线| 亚洲国产精品悠悠久久琪琪| 国产精品每日更新| 91在线观看视频| 狠狠干狠狠久久| 色哟哟国产精品| 亚洲资源在线观看| 免费av高清| 久久久久久久久久伊人| 6080yy精品一区二区三区| 国产欧美一区二区白浆黑人| 日韩在线视频观看| 不用播放器成人网| 久操成人在线视频| 成人免费网站在线| www.国产二区| 在线电影av不卡网址| 亚洲女人被黑人巨大进入| 色婷婷国产精品综合在线观看| 亚洲成人一区二区在线观看| 日本久久一区二区| 亚洲高清久久久久久| 亚洲欧美怡红院| 国精产品一区一区三区mba桃花| 亚洲国产精品综合久久久| 热久久免费视频| 国产精品久久久久久久岛一牛影视 | 琪琪一区二区三区| 国内综合精品午夜久久资源| 国产欧美高清视频在线| 久久影院100000精品| 俺要去色综合狠狠| 黄色日韩在线| 国产欧美高清视频在线| 亚洲综合网站| 93在线视频精品免费观看| 欧美日韩国产在线观看网站 | 日韩精品免费综合视频在线播放| 日韩视频免费观看高清完整版在线观看| 亚洲欧洲国产伦综合| 91精品综合久久| 丁香婷婷自拍| 在线三级av| 日韩免费成人| 国产欧美视频一区二区三区| 日本高清不卡aⅴ免费网站| 不卡av在线播放| 免费在线成人av| 国产黄页在线观看| 欧美精品18videosex性欧美| 亚洲小说欧美另类社区| 一级片在线视频| 成人在线免费观看黄色| 91观看网站| 妞干网在线视频观看| av在线电影观看| 国产剧情在线观看一区| 久久久久久久久一| 精品国产一区a| 国产精品一区二区三区免费观看| 日韩精品一区二区三区四| 亚洲52av| 精品午夜久久| 色综合久久网|