K8S 通過 yaml 檔案建立資源

2022-03-17 14:03:01 字數 2630 閱讀 2584

cd ~

vi pod-demo.yaml

# 內容如下

apiversion: v1

kind: pod

metadata:

name: pod-demo

namespace: default

labels:

tier: frontend

spec:

containers:

- name: busybox

image: busybox:latest

command:

- "/bin/sh"

- "-c"

- "sleep 3600"

# 使用 kubectl create 建立 pod

kubectl create -f pod-demo.yaml

# 檢視日誌

# 進入 pod 中的容器內部

vi deploy-demo.yaml

# 內容如下

# 通過 kubectl describe 檢視 deployment 資訊
deamonset 用於每個 node 最多隻執行乙個 pod 副本的場景。正如其名稱所揭示的,daemonset 通常用於執行 daemon。如果乙個 yaml 檔案中需要定義兩種資源需要使用 --- 進行分割。

vi ds-demo.yaml 

# 內容如下

kind: deployment

metadata:

name: redis

namespace: default

spec:

replicas: 1

selector:

matchlabels:

role: logstor

template:

metadata:

labels:

role: logstor

spec:

containers:

- name: redis

image: redis:4.0-alpine

ports:

- name: redis

containerport: 6379

---kind: daemonset

metadata:

namespace: default

spec:

selector:

matchlabels:

release: stable

template:

metadata:

labels:

release: stable

spec:

containers:

- name: filebeat

image: ikubernetes/filebeat:5.6.5-alpine

env:

- name: redis_host

value: redis.default.svc.cluster.local

- name: redis_log_level

value: info

kubectl expose deployment redis --port=6379

# 內容如下:

apiversion: v1

kind: service

metadata:

namespace: default

spec:

selector:

release: canary

clusterip: 10.99.99.99

type: nodeport

ports:

- port: 80

targetport: 80

nodeport: 30080

# 說明

port :service 暴露在 cluster ip上的埠

targetport :targetport 是 pod 上的埠

nodeport : 暴露在集群物理節點上 node 的埠

可以使用其他機器訪問 kubernets 上的 30080 埠來訪問頁面

eg:192.168.31.205:30080

192.168.31.206:30080

192.168.31.207:30080

K8S 服務編排YAML

yaml 是一種簡潔的非標記語言。語法格式 在k8s部署乙個應用的yaml內容大致分為兩部分 控制器定義 定義控制器屬性 被控制物件 pod模板,定義容器屬性 具體字段意義 apiversion api版本 kind 資源型別 metadata 資源元資料 spec 資源規格 replicas 副本...

k8s中的yaml檔案詳解

yaml格式的pod定義檔案完整內容 apiversion v1 必選,版本號,例如v1 kind pod 必選,pod metadata 必選,元資料 name string 必選,pod名稱 namespace string 必選,pod所屬的命名空間 labels 自定義標籤 name str...

k8s中yaml檔案的詳解

yaml格式的pod定義檔案完整內容 apiversion v1 必選,版本號,例如v1 kind pod 必選,pod metadata 必選,元資料 name string 必選,pod名稱 namespace string 必選,pod所屬的命名空間 labels 自定義標籤 name str...