我在github上准备好了相关文件的下载:https://github.com/anakin/k8s-install
最近在看有关k8s的一些知识,想手动搭建一套环境来体验一下,本文详细记录一下搭建的过程。
环境
三台Ubuntu系统的虚拟机,其中一台作为master,另外两台作为worker节点
步骤1:安装虚拟机
我的笔记本是一台Macbook Pro,首选安装一个虚拟机软件Vmware Fusion,过程略。
1. 下载好Ubuntu镜像,我选择的是`19.04`版本。
2. 打开Fusion,选择New,然后选择“Install from disk or image”,continue
3. 设置好用户名和密码,中间还可以修改使用的硬盘空间等等,这个过程就不详述了。
4. 安装好之后,进入系统,找到“terminal”,安装net-tools和ssh server
sudo apt install net-tools ssh
步骤2:安装docker
1. 更新包列表:
sudo apt update
2. 让apt支持https方式
sudo apt install apt-transport-https ca-certificates curl software-properties-common
3. 添加GPG密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
4. 添加docker源
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"
5. 再次更新apt
sudo apt update
6. 确保从Docker repo安装而不是默认的Ubuntu repo
apt-cache policy docker-ce
7. 开始安装docker
sudo apt install docker-ce
8. 检查一下是否已经在运行
sudo systemctl status docker
步骤3:系统设置
1. 关闭防火墙
ufw disable
2. 设置系统转发参数
cat < /etc/sysctl.d/k8s.conf net.ipv4.ip_forward = 1 net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.ipv4.conf.all.rp_filter = 0 EOF sysctl -p /etc/sysctl.d/k8s.conf
3. 安装ntp服务,同步时钟
sudo apt install ntp
步骤4:复制虚拟机
使用fusion的复制功能,复制出另外两台虚拟机
关掉刚装好的虚拟机,选择Fusion菜单Virtual Machine下面的Create Full Clone,Fusion就会clone出一个一模一样的虚拟机出来,是不是很方便
步骤5:设置免登陆和hosts文件
1. 打开三台虚拟机,进入terminal,执行
ifconfig
找到各自的ip地址
2. 打开Mac的terminal,输入下面的命令生成ssh公钥
ssh-keygen -t rsa
3. 将公钥分别拷贝到三台虚拟机上
scp .ssh/id_rsa.pub [email protected]:
user是虚拟机上的用户名,xxx代表各自的ip地址
4. 在虚拟机上将公钥追加到.ssh/authorized_keys文件,并修改权限
cat id_rsa.pub >> .ssh/authorized_keys chmod 600 authorized_keys
5. 分别修改每台虚拟机上的hosts文件,用vim编辑器打开/etc/hosts,添加三台虚拟机的hosts信息,下面是我自己的host信息:
192.168.32.131 server01 192.168.32.132 server02 192.168.32.133 server03
ok,到现在为止,基本的安装环境应该是准备好了。