二进制安装kubernetes
xxxxxxxxxxxxxxxxxx此处先省略,博主还在测试安装笔记。flannel遇到点问题,解决了就补上
kubeadm和二进制方式对比
这里就说一下单节点的k8s不同安装方式的对比
kubeadm方式安装k8s集群
1 安装虚拟机,安装Linux操作系统的虚拟机3台
2 对操作系统初始化,环境的搭建
3 所有节点(master和node)安装Docker,kubeadm,kubelet,kubectl
- 1)修改docker仓库地址,yum源地址修改为阿里云地址;
- 2)安装docker、使用yum安装,不指定版本默认安装最新docker版本;
- 3)安装kubeadm、kubelet和kubectl
- k8s已经发布最新的 版本,可以指定安装最新版本
- yum -y install kubelet-xxx kubectl-xxx kubeadm-xxx
4在master节点执行初始化命令
- kubeadm init
- 默认拉取镜像地址k8s.gcr.io,需要修改使用国内地址
5再所有的node节点上,使用join命令,把node添加到master节点上
6安装网络插件(CNI)
- kubectl apply -f kube-flannel.yml
7 测试kubernetes集群
- kubectl get node
- kubectl get pod -n kube-system
二进制方式安装K8s集群
1 安装虚拟机,安装3台Linux操作系统的虚拟机
2 对操作系统进行初始化操作,部署基础的环境
3 生成cfssl自签证书,并拷贝到对应节点
- ca.pem、ca-key.pem、admin.pem、admin-key.pem、kubelet-key.pem、kubelet.pem、kube-controller-manager-key.pem、kube-controller-manager.pem、kube-proxy.pem、kube-proxy-key.pem、scheduler.pem、scheduler-key.pem、kube-apiserver.pem、kube-apiserver-key.pem、service-account-key.pem
service-account.pem- 下载kubectl二进制包,通过kubectl生成kubelet.kubeconfig、kube-proxy.kubeconfig、kube-controller-manager.kubeconfig、kube-scheduler.kubeconfig、admin.kubeconfig
4 部署etcd集群
- 部署的本质,就是把etcd集群交给systemd管理
- 创建etcd.service文件,启动,设置开机启动
5 通过base64算法给集群通信设置加密配置
6 部署master组件,并对kubelet授权,角色绑定
- kube-apiserver、controller-manager、scheduler交给systemd管理,并设置开机启动
- 检查各个组件的状态
kubectl get componentstatuses --kubeconfig admin.kubeconfig7 部署node组件
- docker、kubelet、kube-proxy交给systemd管理,设置开机启动
8 部署安装CNI插件
- 常见的有flannel calico weave
9 测试kubernetes集群
- 安装nginx测试访问
欢迎各位更看到的朋友留下自己宝贵的意见!源潮一定万分感激!!!