成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

K8S學習,你需要掌握的知識!

運維
通過kubectl命令可以操作和管理K8S資源,對于初學者可以在掌握K8S基礎命令的基礎上再去學習K8s的原理和架構,那么K8S常用的命令有哪些呢?來看一下吧。

1、K8S命令概述

在學習K8s基礎命令前,了解和學習docker命令是很有必要的,kubectl和docker很多命令都有相通之處。

docker ps #查看所有up狀態容器
docker ps -a#查看所有狀態的容器
docker inspect containerid#查看容器詳情
docker images #查看容器鏡像
docker start/stop/restart containerid #啟動/停止/重啟容器
docker exec -it containerid bash #進入容器
docker exec containerid bash -c 'uptime' #容器外執行命令
docker rmi imageid #刪除鏡像
docker rm containerid #刪除容器
  • K8S常用命令;

圖片

2、K8S集群資源操作

  • 集群資源查看
kubectl get cs  #集群健康情況
kubectl version #K8S集群版本查看
kubectl get node #查看集群節點
kubectl get pods -o wide -A #查看所有命命空間pod
-n #后跟指定命名空間
--all-namespaces #等同于-A
kubect get deployments -A
kubectl get svc,ep -A #查看svc和endpoints
  • 標簽查看
kubectl get pod --show-labels #查看pod標簽
kubectl get node --show-labels #查看node標簽
  • 資源配置查看

查看配置

kubectl get deployments.apps nginxtest-xxx -oyaml #查看deployment資源
kubectl get pods nginxtest-xxx -oyaml #查看pod資源配置
  • 資源限制

查看是否有資源限制

kubectl describe node 192.168.1.2Capacity:
cpu: 16
ephemeral-storage: 524030980Ki
hugepages-1Gi: 0
hugepages-2Mi: 0
memory: 82320508Ki
pods: 253
Allocatable:
cpu: 15100m
ephemeral-storage: 520373252Ki
hugepages-1Gi: 0
hugepages-2Mi: 0
memory: 79101052Ki
pods: 253

capacity代表減去系統預留的資源總量。

Allocatable可分配給K8S資源的總量。

pod資源限制,防止單個服務占用資源過高影響其他pod,達到limits數值后會oom重啟。

kubectl get pods  nginx-test -oyaml  | grep -A 6   resources
resources:
limits:
cpu: "5"
memory: 5000Mi
requests:
cpu: 55m
memory: 100Mikubectl --help 多用help

3、K8S運維場景

  • 副本擴容

通過副本擴容實現流量分攤,避免單個節點負載過高,建議資源中增加反親和性,達到不同副本調度到不同node

kubectl scale deployment nginx-test --replicas=2   #副本擴容
kubectl edit deployment nginx-test #直接編輯修改spec.replicas標簽擴容
  • 進入pod
kubectl exec -it podname bash  #或者sh
-n 指定名字空間
kubectl exec nginx-965048598-jt28d -n test uptime #不進入容器,只獲取命令輸出
  • pod刪除操作
kubectl delete  pods nginx-test-6fc6d8666b-mhl48 #常規刪除
kubectl delete pod -l app=test #基于標簽刪除,批量操作效率高
kubectl delete pods nginx-test -n dev --grace-period=0 --force #強制刪除,沒有terminationGracePeriodSeconds 30s的時間

還可以通過kubectl scale命令將副本縮為0的方式刪除pod

  • pod污點

對于設置了污點的服務,普通pod無法調用到此節點,只有增加了Tolerations容忍配置才可以。

[root@wpseco-node-1 log]# kubectl describe node 192.168.0.1  | grep Taints
Taints: <none>
kubectl taint node 192.168.0.1 test-access-node=:NoSchedule --overwrite=true #污點添加
kubectl taint node 192.168.0.1 test-access-node:NoSchedule- #污點刪除

其中[effect] 可取值: 

    NoSchedule :一定不能被調度(新來的不要來,在這的就別動了)

    PreferNoSchedule:盡量不要調度(盡量不要來,除非沒辦法) 

    NoExecute:不僅不會調度,還會驅逐Node上已有的Pod

  • pod文件拷貝
kubectl cp my_item.tar.gz redis-6c98cb5b5f-nxb59:/tmp/   #宿主機拷貝到容器內
kubectl cp redis-6c98cb5b5f-nxb59:/tmp/start.sh ./start.sh #pod內文件拷貝到宿主機
  • 靜態pod

靜態pod 是由 kubelet 管理的,只在特定node上存在的pod;靜態pod總是由kubelet創建的,并且只在kubelet所在的Node上運行。靜態pod 不能通過 api-server來管理,無法和 RC,RS,Deployment或者 DaemonSet進行關聯;并且 kubelet無法對靜態pod 進行健康檢查。

靜態pod資源文件默認存放路徑/etc/kubernetes/manifests,也可以直接查看kubelet啟動參數staticPodPath: /etc/kubernetes/manifests配置確定。?

kubectl exec -it  kafka-1-192.168.0.1 -c kafka sh #進入靜態pod
-c #po有多個容器要加-c指定
kubectl logs kafka-1-192.168.0.1 -c kafka

4、K8S問題定位

處理K8S環境問題,首先要了解pod的生命周期和pod的狀態

圖片

常見狀態原因

  • ImagePullBackOff    鏡像拉取失敗,網絡不通,鏡像名稱有誤或者鏡像倉庫認證失敗都可能有這個報錯。
  • CrashLoopBackOff  探針檢測失敗,服務對網絡或者其他pod服務有依賴等,此外宿主機上的安全軟件可能也會導致容器無法正常啟動。
  • Pending    一般是調度失敗,pod沒有可調度的節點,常見原因:節點有污點,不滿足節點親和性,或者節點處于notready狀態。
  • Evicted  當節點內存、磁盤或者cpu資源不足時,K8s 會按照 QoS 等級對節點上的某些 Pod 進行驅逐,釋放資源保證節點可用性,kubelet可以配置內存,cpu和磁盤的驅逐閾值。
  • Terminating  pod刪除后超過terminationGracePeriodSeconds參數時間還處于Terminating狀態可能是存在節點故障,和master節點失聯,可以檢查節點狀態或者嘗試重啟kubelet
  • Completed 此狀態通常是job類的pod執行完成了正常退出容器。
  • Init:Error pod初始化失敗,可以查看init pod的日志定位。

問題定位經常需要使用如下命令:

kubectl logs -f   podname
kubectl logs -f -l app=nginx-test #多副本情況下,可以看到所有pod日志
kubectl describe pods podname #pod啟動日志
kubectl describe node 192.168.0.1 #節點狀態日志
kubectl get events #查看集群事件
系統服務查看
systemctl status kubelet/docker/etcd
系統服務日志查看
journalctl -xeu kubelet/docker
--since指定時間
  • K8S學習資料

??https://kubernetes.io/zh-cn/docs/home/???

責任編輯:龐桂玉 來源: 運維之美
相關推薦

2022-08-15 09:49:28

K8s云原生

2022-12-07 17:33:50

K8Skubernetes

2023-11-06 07:16:22

WasmK8s模塊

2022-04-22 13:32:01

K8s容器引擎架構

2023-10-27 08:39:50

KubernetesK8s

2024-03-04 18:42:11

網絡策略k8s網絡通信

2023-12-05 18:16:59

LTS版本K8s

2025-02-27 08:09:52

2022-11-02 10:21:41

K8s pod運維

2025-01-07 14:36:12

2023-09-06 08:12:04

k8s云原生

2024-07-03 08:33:08

2020-04-16 09:00:00

機器學習Kubeflow人工智能

2021-08-31 09:55:57

服務開發K8S

2023-06-06 08:14:18

核心Docker應用程序

2022-06-30 10:22:26

K8s可觀測Prometheus

2024-01-26 14:35:03

鑒權K8sNode

2023-05-25 21:38:30

2023-08-03 08:36:30

Service服務架構

2023-08-04 08:19:02

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲视频在线播放 | 午夜精品一区二区三区在线观看 | 久久国产精品一区 | 一区二区三区四区不卡视频 | 久优草| 2018天天干天天操 | 精品久久久久久国产 | 国产欧美精品区一区二区三区 | 91麻豆精品国产91久久久更新资源速度超快 | 草草精品| 日韩影院在线观看 | 欧美一区二区三区久久精品 | 狠狠亚洲 | 亚洲国产精品一区二区三区 | 国产精品无码永久免费888 | 婷婷福利 | 欧美一区二区三区视频 | 久在线| 高清黄色毛片 | 一区二区成人 | 美女福利视频一区 | 日韩中文在线 | 人人玩人人添人人澡欧美 | 久久久久一区 | 亚洲国产精品久久久久秋霞不卡 | 久久99精品久久久久久 | 国产精品一区久久久 | 精品久久久久久久久久久久久久 | 一区二区av | 亚洲一区视频在线 | 99久久精品免费视频 | 日韩欧美国产一区二区 | 国产欧美三区 | 香蕉一区 | 极品销魂美女一区二区 | 国产精品久久亚洲 | 黑人精品欧美一区二区蜜桃 | 91私密视频 | 欧美视频 | 精品视频免费 | 国产黄色在线观看 |