k8s学习笔记

一、Master内部组件

*apiserver:集群统一入口,以restful方式,交给etcd存储

*scheduler:节点调度,选择node节点应用部署

*controller-manager:处理集群中常规后台任务,一个资源对应一个控制器

*etcd:存储系统,用于保存集群相关的数据

 

二、node内部组件

*kubelet:master派到node节点代表,管理本机容器

*kube-proxy:提供网络代理,负载均衡等操作

 

三、k8s核心概念:

1、Pod:

*最小的部署单元

*一组容器的集合

*共享网络

*生命周期是短暂的

2、controller:

*确保预期的Pod副本的数量

*无状态应用部署/有状态应用部署

*确保所有的node运行同一个Pod

*一次性任务和定时任务

3、service

*定义一组Pod的访问规则

 

四、搭建k8s环境平台的规划

平台规划:

1、单master集群:正式环境中局限性太大,不满足高可用

2、多master集群:master通过一个负载均衡管理node

五、服务器硬件配置要求

测试环境:

*master:2核4G 20G *node:4核8G 40G

生成环境:

*master:8核16G 100G *node:16核32G 200G

六、搭建k8s集群部署方式

1、kubeadm

   Kubeadm 是一个K8s部署工具,提供kubeadm init 和 kubeadm join,用于快速部署Kubernetes集群

2、二进制包

   从GitHub下载发行版的二进制包,手动部署每个组件,组成Kubernetes集群。

   Kubeadm降低部署门槛,但屏蔽了很多细节,遇到问题很难排查。如果想更容易可控,推荐使用二进制包部署Kubernetes集群,虽然手动部署麻烦,期间可以学习很多工作原理,也利于后期维护。

 

posted @ 2022-04-15 14:44  time随风  阅读(71)  评论(0)    收藏  举报