【Kubernetes专项】温故而知新,重温技术原理(1)
1.简单说说什么是kubernetes?K8s 是一个开源的容器编排平台;用来自动调度、弹性扩缩容、自愈修复及管理容器化应用 核心作用统一管理容器生命周期简化大规模容器集群的部署、运维及管理的难题。2.Pod是什么和容器有什么区别Pod 是 K8s 最小调度单元一个 Pod 里可以包含一个或多个容器共享网络、存储、命名空间、统一调度与启停 区别1.容器只负责运行单个程序2.Pod可包含多个容器共享资源紧密协作3.Pod一直处于Pending状态常见原因有哪些1.资源不足 CPU/Memory/磁盘/资源限制过高...2.节点调度问题 节点亲和性、污点、标签不匹配...3.镜像异常 镜像地址错误、拉取镜像失败、私有镜像未配置秘钥ImagePullSecret...4.存储挂载失败 PVC未绑定、PV不存在、存储权限或挂载路径异常...5.网络限制 网络策略、防火墙限制...6.集群配额不足 namespace资源配额耗尽无法创建Pod4.简述Kubernetes和Docker的关系?Docker Container Runtime 负责打包应用、创建并运行单个容器、解决应用隔离与部署问题。 Kubernetes 容器编排平台 不直接运行容器依靠容器运行时Docker/Containerd,统一管理集群中大量的容器。 我来总结一下 Docker 负责造容器跑容器 K8s 负责批量调度运维及管理大量容器。 二者分工协作Docker是底层载体K8s是上层管理。5.Kubernetes中什么是kubeadm,Kubectl,Kubelet?kubeadm集群部署引导工具 快速搭建K8s集群的工具核心引导集群初始化 kubeadm init 初始化控制平面 kubeadmjoin让工作节点加入集群 kubeadm upgrade 实现集群版本升级 kubeadm reset 集群拆除 kubectl集群命令行管理工具 用户与K8s集群交互的命令行接口 kubectl create/get/describe/apply/delete -pod/deployment/service/configmap kubectlexec-itpod-name-- /bin/sh(bash)kubectl logs(-f)pod-name# -f 实时跟踪kubelet节点代理守护进程 代理服务运行在每个节点的进程 Pod生命值周期管理 节点状态上报 资源管理 Volume挂载与管理 网络协调