1.k8s入门文章

k8s命令行:

Kubernetes kubectl 与 Docker 命令关系 _ Kubernetes(K8S)中文文档_Kubernetes中文社区

K8s configMap:

Kubernetes 重新配置活动集群中节点的 Kubelet _ Kubernetes(K8S)中文文档_Kubernetes中文社区

K8s kubectl :命令表:

Kubernetes kubectl 命令表 _ Kubernetes(K8S)中文文档_Kubernetes中文社区

k8s yaml文件详解:

Kubernetes之yaml文件详解(汇总-详细) - 老耿博客 - 博客园

使用YAML创建一个 Kubernetes Depolyment_Kubernetes中文社区

k8s中文社区:

Kubernetes(K8S)中文文档_Kubernetes中文社区

kubetcl命令:

Kubernetes kubectl 命令表 _ Kubernetes(K8S)中文文档_Kubernetes中文社区

其他教程:

教程:

Kubernetes-mac上安装docker以及k8s_adson1987的博客-CSDN博客_mac 安装k8s

基础教程:

https://blog.csdn.net/u011510825/article/details/83008663

k8s问题汇总:

折腾kubernetes各种问题汇总 - ericnie - 博客园

解决deployment失败的问题:

使用describe命令进行Kubernetes pod错误排查-阿里云开发者社区

2.k8s命令

命令

用途

备注

kubectl get pods -n xxx

获取各个pod信息

-n后接namespace,另外可以使用-o wide 获取更详细信息

kubectl describe pod  -n search

获取pod的描述信息

kubectl apply -f xxx.yaml

部署k8s服务

使用-f指定k8s文件

kubectl logs xxx_pod -n xxx_namespace

获取pod中的日志信息

xxx_pod表示pod名称,xxx_namespace表示命名空间

kubectl delete -f  xxx.yaml

根据k8s配置文件删除服务

根据yaml内容,可能删除的是service,也有可能是

ConfigMap或其他类型

kubectl get services -n xxx_namespace

或:

kubectl get svc -n xxx_namespace

获取某个命名空间下的所有服务

services可以替换为缩写的svc

kubectl exec -it xxx_pod -n xxx_namespace -- bash

进入pod查看

-- bash:指定进入pod时候的shell解释器,也可以用/bin/bash等其他shell解释器

kubectl get namespaces

获取所有的namespace

kubectl get nodes

获取节点信息

kubectl create namespace

创建命名空间

kubectl replace --force -f xxx.yaml

重启k8s

如果需要完全重启服务器,使用kubectl replace -f命令,可以实现几乎不停止的重启服务,不要先delete -f再apply -f

3.k8s通信协议相关资料

K8s : 连接外网:

k8s-访问外网服务的两种方式 - 简书

k8s跨namspace通信:

Kubernetes K8S之Pod跨namespace名称空间访问Service服务_踏歌行的专栏-CSDN博客_k8s 跨命名空间访问

Kubernetes K8S之Pod跨namespace名称空间访问Service服务 - 踏歌行666 - 博客园

K8s ipvs和iptable

K8S中iptables和ipvs区别_一念成佛_LHY的博客-CSDN博客_ipvs和iptables的区别

4.排查k8s的部署问题

排查k8s问题是个很大的命题,由于经验问题,在此我先提供一版自己的排查方法,希望大家积极补充:

一般k8s服务如果没有成功运行,可以按下述方式排查:

4.1获取错误pod

命令:kubectl get pods -n xxxx_namespace;

这时候根据状态信息,可以先找出一些问题,比如如果是ErrImagePull或ImagePullBackOff,基本就是镜像的问题,可能是镜像制作问题或镜像无法拉取。

可以docker pull 镜像查看是否镜像无法拉取;

4.2 排查pod问题

kubectl describe xxx_pod  -n xxx_namespace 查看pod信息;

kubectl logs xxx_pod -n xxx_namespace 查看日志信息;

4.3进入pod查看相信的日志信息:

kubectl exec -it xxx_pod -n xxx_namespace -- bash,查看具体日志

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐