快速部署 k8s 集群
部署3个节点的k8s 集群,三个虚机的信息如下所示:
主机名 | ip地址 | 角色 | 系统os |
---|---|---|---|
k8s-master | 192.168.1.38 | worker | Ubuntu 18.04.2 LTS |
k8s-node1 | 192.168.1.39 | node | Ubuntu 18.04.2 LTS |
k8s-node2 | 192.168.1.40 | node | Ubuntu 18.04.2 LTS |
1.2 设置hosts
设置三个节点的hosts文件,映射主机名和ip地址:
root@k8s-master:~# cat /etc/hosts 127.0.0.1 localhost # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts 192.168.1.38 k8s-master 192.168.1.39 k8s-node1 192.168.1.40 k8s-node2
1.3 配置apt源
配置apt源为阿里的源,替换sources.list内容为:
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
root@k8s-master:~# apt-get update
2. 安装docker
2.1 安装docker
在三个节点上都需要安装docker,执行如下命令来安装docker:
apt-get update && apt-get install apt-transport-https ca-certificates curl software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - add-apt-repository \"deb [arch=amd64] https://download.docker.com/linux/ubuntu \$(lsb_release -cs) \stable"apt-get update && apt-get install docker-ce cat > /etc/docker/daemon.json <<EOF {"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"],"exec-opts": ["native.cgroupdriver=systemd"],"log-driver": "json-file","log-opts": {"max-size": "100m"},"storage-driver": "overlay2" } EOF mkdir -p /etc/systemd/system/docker.service.d systemctl daemon-reload systemctl restart docker
2.2 查看版本
root@k8s-master:~# docker version Client: Docker Engine - CommunityVersion: 19.03.5API version: 1.40Go version: go1.12.12Git commit: 633a0ea838Built: Wed Nov 13 07:29:52 2019OS/Arch: linux/amd64Experimental: false Server: Docker Engine - CommunityEngine:Version: 19.03.5API version: 1.40 (minimum version 1.12)Go version: go1.12.12Git commit: 633a0ea838Built: Wed Nov 13 07:28:22 2019OS/Arch: linux/amd64Experimental: falsecontainerd:Version: 1.2.10GitCommit: b34a5c8af56e510852c35414db4c1f4fa6172339runc:Version: 1.0.0-rc8+devGitCommit: 3e425f80a8c931f88e6d94a8c831b9d5aa481657docker-init:Version: 0.18.0GitCommit: fec3683
3. 安装k8s
3.1 安装kubeadm, kubelet and kubectl
在三个节点上执行如下命令来安装:
curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add - cat <<EOF >/etc/apt/sources.list.d/kubernetes.list deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main EOF apt-get update apt-get install -y kubelet kubeadm kubectl apt-mark hold kubelet kubeadm kubectl
3.2 查看版本
root@k8s-master:~# kubectl version --short Client Version: v1.16.3 Server Version: v1.16.3
4. 初始化k8s集群
4.1 初始化
在master节点执行如下命令来初始化一个集群:
kubeadm init --pod-network-cidr=10.244.0.0/16 --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers --apiserver-advertise-address 192.168.1.38
mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config
4.2 安装pod网络
k8s支持多种网络插件,这里选用calico网络插件:
kubectl apply -f https://docs.projectcalico.org/v3.8/manifests/calico.yaml
5. 添加node节点
5.1 生成hash值
在master节点执行如下命令来生成ca cert的hash值:
root@k8s-master:~# openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^.* //' 2e8e6c9991a0f90623593458dc1fe8ac04c6f636d60d33ca1917ed69755f3675
5.2 添加node节点
分别在node1和node2两个节点上执行如下的join命令来将它们添加到集群中:
kubeadm join --token cw6ahy.p8qkc7grox56kf2l 192.168.1.38:6443 --discovery-token-ca-cert-hash sha256:2e8e6c9991a0f90623593458dc1fe8ac04c6f636d60d33ca1917ed69755f3675
其中,token可以通过如下命令来获取到:
root@k8s-master:~# kubeadm token list TOKEN TTL EXPIRES USAGES DESCRIPTION EXTRA GROUPS cw6ahy.p8qkc7grox56kf2l 5h 2019-11-16T11:11:08Z authentication,signing The default bootstrap token generated by 'kubeadm init'. system:bootstrappers:kubeadm:default-node-token
如果过期了,可以重新建一个:kubeadm token create
。
6.创建完成
6.1 查看集群
至此,一个简单的k8s集群已经创建完成:
root@k8s-master:~# kubectl get node NAME STATUS ROLES AGE VERSION k8s-master Ready master 18h v1.16.3 k8s-node1 Ready <none> 17h v1.16.3 k8s-node2 Ready <none> 3h46m v1.16.3 root@k8s-master:~# root@k8s-master:~# root@k8s-master:~# kubectl get pod -A -o wide NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES kube-system calico-kube-controllers-55754f75c-64lrg 1/1 Running 0 18h 192.168.235.195 k8s-master <none> <none> kube-system calico-node-d9qjv 1/1 Running 0 17h 192.168.1.39 k8s-node1 <none> <none> kube-system calico-node-h6nfh 1/1 Running 0 18h 192.168.1.38 k8s-master <none> <none> kube-system calico-node-pgjhf 1/1 Running 0 3h46m 192.168.1.40 k8s-node2 <none> <none> kube-system coredns-67c766df46-ltz7b 1/1 Running 0 18h 192.168.235.193 k8s-master <none> <none> kube-system coredns-67c766df46-zprgv 1/1 Running 0 18h 192.168.235.194 k8s-master <none> <none> kube-system etcd-k8s-master 1/1 Running 0 18h 192.168.1.38 k8s-master <none> <none> kube-system kube-apiserver-k8s-master 1/1 Running 0 18h 192.168.1.38 k8s-master <none> <none> kube-system kube-controller-manager-k8s-master 1/1 Running 0 18h 192.168.1.38 k8s-master <none> <none> kube-system kube-proxy-9wjqk 1/1 Running 0 3h46m 192.168.1.40 k8s-node2 <none> <none> kube-system kube-proxy-ckzw5 1/1 Running 0 18h 192.168.1.38 k8s-master <none> <none> kube-system kube-proxy-xp82s 1/1 Running 0 17h 192.168.1.39 k8s-node1 <none> <none> kube-system kube-scheduler-k8s-master 1/1 Running 0 18h 192.168.1.38 k8s-master <none> <none>
快速部署 k8s 集群相关推荐
- 2、使用 kubeadm 方式快速部署K8S集群
文章目录 一.kubernetes 官方提供的三种部署方式 二.使用kubeadm搭建k8s集群 2.1 基础环境设置 2.2 安装Docker 2.3 添加kubernetes软件源 2.4 安装k ...
- 使用Kubeadm快速部署K8S集群
一.简介 Kubeadm 是官方社区推出的一个用于快速部署 Kubernetes 集群的工具,能通过指令快速完成一个 Kubernetes 集群的部署.需要注意的是,Kubeadm 方式部署的 Kub ...
- k8s ubuntu cni_手把手教你使用RKE快速部署K8S集群并部署Rancher HA
作者:杨紫熹 原文链接: https://fs.tn/post/PmaL-uIiQ/ RKE全称为Rancher Kubernetes Engine,是一款经过CNCF认证的开源Kubernetes发 ...
- 使用minikube快速部署k8s集群
本文个人博客地址:http://www.huweihuang.com/article/kubernetes/install-k8s-by-minikube/ 以下内容基于Linux系统,特别为Ubun ...
- sealos快速部署k8s集群
1.测试环境 主机名 IP地址 配置 操作系统 系统密码 master 192.168.1.200 1C2G40G centos7.9 123456.com node1 192.168.1.201 1 ...
- kubeadm部署k8s集群
1.准备环境 虚拟机操作系统: Centos7 角色 IP Master 192.168.150.140 Node1 192.168.150. ...
- 教你在Kubernetes中快速部署ES集群
摘要:ES集群是进行大数据存储和分析,快速检索的利器,本文简述了ES的集群架构,并提供了在Kubernetes中快速部署ES集群的样例:对ES集群的监控运维工具进行了介绍,并提供了部分问题定位经验,最 ...
- 部署k8s集群(k8s集群搭建详细实践版)
1.部署k8s的两种方式: 目前生产部署Kubernetes集群主要有两种方式: kubeadm Kubeadm是一个K8s部署工具,提供kubeadm init和kubeadm join,用于快速部 ...
- ② kubeadm快速部署Kubernetes集群
文章目录 1. 安装要求 2. 目标 3. 准备环境 4. 所有节点安装Docker/kubeadm/kubelet 4.1 安装Docker(以一台为例,其他相同) 4.2 添加kubernetes ...
最新文章
- Compiere去掉启动时的下面显示的进度条
- 九度OJ—题目1032:ZOJ
- ActionContext.getContext()的用法总结
- 理论与哲学就是梳理无限感性经验和知性知识的工具
- 永磁直驱风力发电机结构图_国内首台10MW海上永磁直驱风力发电机研制成功
- 自学Java必看的知识点,猿们怎么看?
- NumPy Beginner's Guide 2e 带注释源码 三、熟悉 NumPy 常用函数
- Oracle的order by关键字
- 使用Notepad++编辑器查看二进制bin文件
- oracle11 odac,oracle 11g odac 下载
- C# 如何给Excel添加水印
- 计算机网络:计算路由表下一跳
- tom邮箱 服务器类型,Tom邮箱 - 帮助中心
- 怎样实现在微信中直接下载APK
- 全国高中数学联赛——几何
- linux下生成dump文件方法及设置
- 如何实现链表的逆序?
- MOSFET原理学习
- yama搜集的超超…全的下载音效的网站,持续更新
- html5按键声音,HTML5+Tone.js 声音合成按钮
热门文章
- /dev/random 和 /dev/urandom 的原理
- 【DNN】DIEN算法原理
- 为什么中国人没有发明计算机,假如计算机是中国人发明的,代码是不是该用中文写了?...
- mysql创建角色集_mysql8之新增角色
- 【光学】基于matlab GUI维达尔之眼计算【含Matlab源码 2545期】
- 惠普笔记本电脑关闭功能键
- vue v-drag 拖动 拖拽 移动div 拖拽滑动div
- matlab和自然语言处理,《自然语言处理》课程简介
- Silk.Net Opengl 创建基于WPF或者Winform 的显示控件
- 竞品分析报告各要素解析