随笔分类 - k8s,kubernetes
the kubernetes learing
摘要:haproxy global maxconn 2000 ulimit-n 16384 log 127.0.0.1 local0 err stats timeout 30s defaults log global mode http option httplog timeout connect 500
阅读全文
摘要:本文将引入一个思路:“在 Kubernetes 集群发生网络异常时如何排查”。文章将引入 Kubernetes 集群中网络排查的思路,包含网络异常模型,常用工具,并且提出一些案例以供学习。 Pod 常见网络异常分类 网络排查工具 Pod 网络异常排查思路及流程模型 CNI 网络异常排查步骤 案例学习
阅读全文
摘要:endpoint是k8s集群中的一个资源对象,存储在etcd中,用来记录一个service对应的所有pod的访问地址。service配置selector,endpoint controller才会自动创建对应的endpoint对象;否则,不会生成endpoint对象. apiVersion: v1
阅读全文
摘要:example 设置node不可调度 $kubectl cordon 172.16.21.26 $ kubectl drain foo --force $ kubectl drain foo --grace-period=900 $ kubectl drain 172.16.21.26 --dele
阅读全文
摘要:apiVersion: apps/v1 kind: Deployment metadata: name: ebdp-interface-service namespace: ebdp-bigdata spec: replicas: 2 minReadySeconds: 40 strategy: ro
阅读全文
摘要:默认情况下,Kubernetes 允许创建一个有特权容器的 Pod,这些容器很可能会危机系统安全,而 Pod 安全策略pod security policy(PSP)则通过确保请求者有权限按配置来创建 Pod,从而来保护集群免受特权 Pod 的影响。 #Admission Controller Ad
阅读全文
摘要:遵循以下 Dockerfile 书写原则,不仅可以使得我们的 Dockerfile 简洁明了,让协作者清楚地了解镜像的完整构建流程,还可以帮助我们减少镜像的体积,加快镜像构建的速度和分发速度。 (1)单一职责 由于容器的本质是进程,一个容器代表一个进程,因此不同功能的应用应该尽量拆分为不同的容器,每
阅读全文
摘要:我们从 Docker Hub 拉取的官方操作系统镜像大多数都是 UTC 时间(世界标准时间)。如果你想要在容器中使用中国区标准时间(东八区),请根据使用的操作系统修改相应的时区信息: Ubuntu 和Debian 系统可以向 Dockerfile 中添加以下指令: RUN ln -sf /usr/s
阅读全文
摘要:通过查看json格式的pod信息,并通过jq去处理获取到想要的字段 [root@devma01 test-storageclass]# kubectl get pods --all-namespaces -o=json | jq -c '.items[] | {name: .metadata.nam
阅读全文
摘要:部署Dashboard $kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.3/aio/deploy/recommended.yaml 参考:https://github.com/kubernet
阅读全文
摘要:概念 PV 的全称是:PersistentVolume(持久化卷),是对底层的共享存储的一种抽象,PV 由管理员进行创建和配置,它和具体的底层的共享存储技术的实现方式有关,比如 Ceph、GlusterFS、NFS 等,都是通过插件机制完成与共享存储的对接。 PVC 的全称是:PersistentV
阅读全文
摘要:1、修改基础环境 更改主机名,关闭防火墙和selinux hostnamectl set-hostname 7niu systemctl stop firewalld systemctl disable firewalld setenforce 0 sed -i 's/SELINUX=enforci
阅读全文
摘要:1、日志错误: 当 Kubernetes 集群日志中出现 certificate has expired or is not yet valid 错误信息时,表明证书过期 2、证书过期原因 务器时间不对,导致证书过期 确实证书过期了 证书过期,很多同学会很疑惑,我证书明明签署10年有效期或者更久,怎
阅读全文
摘要:Kubernetes核心概念 Pod • 最小部署单元 • 一组容器的集合 • 一个Pod中的容器共享网络命名空间 • Pod是短暂的 Controllers • ReplicaSet : 确保预期的Pod副本数量 • Deployment : 无状态应用部署 • StatefulSet : 有状态
阅读全文
摘要: 自我修复 在节点故障时重新启动失败的容器,替换和重新部署,保证预期的副本数量;杀死健康检查失败的容器,并且在未准备好之前不会处理客户端请求,确保线上服务不中断。 弹性伸缩 使用命令、UI或者基于CPU使用情况自动快速扩容和缩容应用程序实例,保证应用业务高峰并发时的高可用性;业务低峰时回收资源
阅读全文
摘要:1、k8s部署es的时候需要初始化很多linux的内核参数。 但是文件系统挂载到pod容器中就会变成read only,难以进行操作实现需求。 所以需要给POD privileged权限,然后在容器的初始化脚本或代码中去修改sysctl参数。 创建POD/deployment/daemonset等对
阅读全文
摘要:对于使用共享目录的volumeMounts,比如一个目录有数据目录和日志目录都需要挂载,只需定义一个name。
阅读全文
摘要:apiVersion: apps/v1 kind: Deployment metadata: name: nginx deployment spec: selector: matchLabels: app: nginx replicas: 2 template: metadata: labels:
阅读全文
摘要:pod的不同阶段的不同状态: Pending 创建pod的请求已经被k8s接受,但是容器并没有启动成功,可能处在:写数据到etcd,调度,pull镜像,启动容器这四个阶段中的任何一个阶段,pending伴随的事件通常会有:ADDED, Modified这两个事件的产生。 Running pod已经绑
阅读全文
摘要:节点资源耗尽状态 1、查看节点组件的状态 2、查看节点上pod的状态 查看日志内容发现如下内容: 1、Node emay CMPP01 status is now: NodeHasDiskPressure 2、Warning: “EvictionThresholdMet Attempting to
阅读全文