日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

KubernetsPod分析

發(fā)布時間:2023/12/20 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 KubernetsPod分析 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一個Pod代表集群上正在運行的一個進程。Pod是Kubernetes創(chuàng)建或部署的最小/最簡單的基本單位。 由一個或多個容器(container)構成的>集合,作為一個整體被部署到一個單一節(jié)點。同一個 pod 中的容器共享 IP 地址、進程間通訊(IPC)、主機名以及其它資源。Pod 將底層>容器的網(wǎng)絡和存儲抽象出來,使得集群內(nèi)的容器遷移更為便捷。


pod的狀態(tài)

kubectl -n namespace get pod #查看一個命名空間下所有pod和其狀態(tài)


遇到的問題

可以看到一些pod的狀態(tài)為ImagePullBackOff、CrashLoopBackOff、Pending

kubectl -n hummingbird describe pod mysql-hb-7c5cc54bd8-m8tmm #查看hummingbird命名空間下的pod mysql-hb-7c...的詳細信息 kubectl -n hummingbird logs mysql-hb-7c5cc54bd8-m8tmm #查看指定pod的日志

可能會遇到報錯:

Error from server (BadRequest): a container name must be specified for pod mysql-hb-7c5cc54bd8-m8tmm, choose one of: [mysql-hb metrics] or one of the init containers: [remove-lost-found]

這是因為 pod mysql-hb-7c5cc54bd8-m8tmm 啟動了兩個容器 mysql-hb metrics 和 remove-lost-found,
查看日志時需要指定查看那個容器,可通過命令 -c <container_name>指定

kubectl -n hummingbird logs -f pod/mysql-hb-7c5cc54bd8-m8tmm -c mysql-hb #查看mysql-hb日志 kubectl -n hummingbird logs -f pod/mysql-hb-7c5cc54bd8-m8tmm -c metrics #查看metrics日志

出現(xiàn)以下錯誤

2020-02-24 01:04:04+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.28-1debian9 started. 2020-02-24 01:04:04+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql' 2020-02-24 01:04:04+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.28-1debian9 started. 2020-02-24 01:04:05+00:00 [Note] [Entrypoint]: Initializing database files 2020-02-24T01:04:05.045945Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). mysqld: Can't create/write to file '/tmp/ibxkbsPe' (Errcode: 13 - Permission denied) 2020-02-24T01:04:05.082274Z 0 [ERROR] InnoDB: Unable to create temporary file; errno: 13 2020-02-24T01:04:05.082302Z 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error 2020-02-24T01:04:05.082324Z 0 [ERROR] Plugin 'InnoDB' init function returned error. 2020-02-24T01:04:05.082333Z 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. 2020-02-24T01:04:05.082347Z 0 [ERROR] Failed to initialize builtin plugins. 2020-02-24T01:04:05.082354Z 0 [ERROR] Aborting

mysqld: Can’t create/write to file ‘/tmp/ibxkbsPe’ (Errcode: 13 - Permission denied)
無法對文件進行寫入,初步推測是文件和路徑的問題,參考1;參考2
進一步分析發(fā)現(xiàn),mysql服務沒有啟動,

netstat -apn | grep 3306 #沒有反應 service mysql status #Unit mysql.service could not be found.找不到服務 systemctl restart mysqld.service #重啟還是找不到 chkconfig --list #查看服務列表,發(fā)現(xiàn)是沒有mysql服務的

按參考解決一下試試,使用root:root用戶,創(chuàng)建/data/mysql目錄,不知道是不是要重啟pod,不會重啟,沒有成功
按參考解決一下試試,還是沒有成功

kubectl -n namespace delete pods podname #刪除一個pod,刪除之后會被重建,只不過后綴名會不一樣

發(fā)現(xiàn)mysql的values.yaml與77有所不同
187的values.yaml:

# Custom mysql configuration files used to override default mysql settings configurationFiles:mysql_custom.cnf: |-[mysqld]innodb_buffer_pool_size=2Gmax_connections=1000innodb_temp_data_file_path=ibtmp1:12M:autoextend:max:5Ginnodb_file_per_table=1sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIONtmpdir=/data/mysql

77的values.yaml

修改為一樣的之后還是不行
最后

kubectl -n namespace edit deploy mysql-hb #查看服務的配置

參考文章
簡書----kubelet Pod 的狀態(tài)分析

總結

以上是生活随笔為你收集整理的KubernetsPod分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。