目前生产部署Kubernetes集群主要有两种方式:,Kubeadm是一个K8s部署工具,提供kubeadm init和kubeadm join,用于快速部署Kubernetes集群。,从github下载发行版的二进制包,手动部署每个组件,组成Kubernetes集群。,本实验采用kubeadm的方式搭建集群。,服务器要求:,软件环境:,服务器规划:(本实验采用虚拟机),
,安装docker:,
,配置镜像下载加速器:,
,添加阿里云软件源:,安装kubeadm、kubelet、kubectl:,
, 初始化之后,会输出一个join命令,先复制出来,node节点加入master会使用。,
,查看工作节点:,
,注:由于网络插件还没有部署,还没有准备就绪 NotReady,继续操作。 ,
,默认token有效期为24小时,当过期之后,该token就不可用了。这时就需要重新创建token,可以直接使用命令快捷生成:,Calico是一个纯三层的数据中心网络方案,是目前Kubernetes主流的网络方案。,下载YAML:,下载完后还需要修改里面定义Pod网络(CALICO_IPV4POOL_CIDR),与前面kubeadm init的 –pod-network-cidr指定的一样。,修改完后文件后,进行部署:,
,等Calico Pod都Running后,节点也会准备就绪。,
,注:以后所有yaml文件都只在Master节点执行。,安装目录:/etc/kubernetes/,组件配置文件目录:/etc/kubernetes/manifests/,Dashboard是官方提供的一个UI,可用于基本管理K8s资源。,YAML下载地址:,默认Dashboard只能集群内部访问,修改Service为NodePort类型,暴露到外部:,
,访问地址:https://NodeIP:30001 ,
,创建service account并绑定默认cluster-admin管理员集群角色:,
,使用输出的token登录Dashboard。 ,
,注: ,以上为本人实际搭建过程中的经验总结,