別再手動(dòng)編碼了!發(fā)現(xiàn)這個(gè)一鍵生成 K8S YAML 的神器!
在日常的K8S運(yùn)維工作中,我們通常會(huì)通過以下兩種友好的方式來獲取YAML模板:
- 平時(shí)自己收集和整理各種YAML模板文件。
- 通過試運(yùn)行的方式臨時(shí)生成所需的YAML模板文件。例如,可以通過以下命令生成一個(gè)deployment的YAML文件。
kubectl create deploy deploy-nginx -o yaml \
--port=80 --image=nginx --dry-run=client
執(zhí)行上述命令后,會(huì)在終端生成一個(gè)deploy的YAML文件,如下所示:
apiVersion: apps/v1
kind: Deployment
metadata:
creationTimestamp: null
labels:
app: deploy-nginx
name: deploy-nginx
spec:
replicas: 1
selector:
matchLabels:
app: deploy-nginx
strategy: {}
template:
metadata:
creationTimestamp: null
labels:
app: deploy-nginx
spec:
containers:
- image: nginx
name: nginx
ports:
- containerPort: 80
resources: {}
status: {}
以上的基本的信息都已經(jīng)生成了。但是如果需要部署到其他的命名空間,就需要自行添加命名空間。或者在命令行中添加參數(shù)指定部署的命名空間,命令如下:
kubectl create deploy deploy-nginx -o yaml \
--port=80 --image=nginx \
--namespace=dev \
--dry-run=client
插件安裝
今天為大家介紹一個(gè)非常好用的工具,可以一鍵生成K8S資源的YAML模板,使用這個(gè)工具需要提前準(zhǔn)備以下環(huán)境:
安裝Visual studio Code(版本要>=1.38)
安裝Red Hat YAML,該插件是一款為Visual Studio Code 提供全面YAML語言支持的插件。
安裝Kubernetes Templates插件,該插件可以幫助我們一鍵生成K8S資源YAML模板文件。
以上兩個(gè)插件安裝好,最后重啟一下vscode。
基本使用
使用方式也十分簡單,打開vscode,新建文件,然后文件格式選擇YAML,如下圖所示:
例如,我們想創(chuàng)建一個(gè)deploy模板文件,只需要在文件輸入k,然后,vscode就會(huì)智能的提示有關(guān)k開頭的所有模板,如下圖所示:
當(dāng)我們選擇k8sDeployment回車時(shí),就會(huì)生成非常詳細(xì)的模板。如下圖所示:
這個(gè)工具真是太棒了,讓我們不再為尋找K8S資源模板而煩惱,它幾乎覆蓋了K8S所有的資源文件。使用之后,我們的工作效率得到了顯著提升。