(十五)Kubernetes資源管理DaemonSet
阿新 • • 發佈:2022-05-11
一、Kubernetes DaemonSet(部署守護程序)
- 在每一個Node上執行一個Pod,或者是匹配的節點上部署一個Pod。
- 新加入的Node也同樣會自動執行一個Pod。
應用場景: - Agent
- 執行叢集儲存的daemon,比如ceph或者glusterd
- 節點的CNI網路外掛,calico
- 節點監控:node exporter
- 節點日誌收集:fluentd或filebeat
- 服務暴露:部署一個ingress nginx
官方文件:https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/
二、案例
1、建立yaml檔案
apiVersion: apps/v1 kind: DaemonSet metadata: name: ds-test labels: app: filebeat spec: # 標籤選擇器 selector: matchLabels: app: filebeat # 標籤型別 template: metadata: labels: app: filebeat spec: # 配置容器 containers: - name: logs containers: - image: nginx ports: - containerPort: 80 # 掛載目錄 volumeMounts: - name: varlog mountPath: /tmp/log volumes: - name: varlog hostPath: path: /var/log
2、建立容器
kubectl apply -f ds.yaml
3、檢視pod
kubectl get pods
NAME READY STATUS RESTARTS AGE
ds-test-8487j 1/1 Running 0 8s
ds-test-lkflr 1/1 Running 0 8s
4、進入容器測試掛在
kubectl exec -it ds-test-8487j bash root@ds-test-8487j:/# ls /tmp/log/ anaconda cron-20190825 secure audit dmesg secure-20190825 boot.log dmesg.old spooler boot.log-20190822 firewalld spooler-20190825 boot.log-20190823 grubby_prune_debug tallylog boot.log-20190824 lastlog tuned boot.log-20190825 maillog vmware-vgauthsvc.log.0 boot.log-20190827 maillog-20190825 vmware-vmsvc.log btmp messages wtmp chrony messages-20190825 yum.log containers pods cron rhsm