K8S详细搭建过程以及可视化界面
一:准备三台虚拟机【过程略】#所有主机关闭防火墙和selinuxsystemctl stop firewalldiptables –Fsetenforce 0#所有主机配置主机名与hosts映射hostname k8s-mastersbashvim /etc/hosts添加内容:192.168.43.78k8s-master master192.168.43.41...
一:准备三台虚拟机【过程略】
- #所有主机关闭防火墙和selinux
systemctl stop firewalld
iptables –F
setenforce 0 - #所有主机配置主机名与hosts映射
hostname k8s-masters
bash
vim /etc/hosts
添加内容:
192.168.43.78 k8s-master master
192.168.43.41 k8s-node1 nod1
192.168.43.22 k8s-node2 node2
scp /etc/hosts 192.168.43.41:/etc/
scp /etc/hosts 192.168.43.22:/etc/
二:安装Docker-re - 所有主机安装docker
yum -y install yum-utils device-mapper-persistent-data lvm2
curl https://download.docker.com/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker-ce.repo
yum –y install docker-ce
systemctl start docker
systemctl enable docker
docker version
- 阿里云镜像加速器
cat < /etc/docker/daemon.json
{
“registry-mirrors”:[“https://nyakyfun.mirror.aliyuncs.com”]
}
END
systemctl daemon-reload
systemctl restart docker
- 所有主机关闭swap
swapoff -a
echo “/usr/bin/swapoff -a” >>/etc/rc.local
chmod +x /etc/rc.local - 所有主机配置内核参数
vim /etc/sysctl.d/k8s.conf
填写内容:
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_nolocal_bind=1
net.ipv4.ip_forward=1
vm.swappiness=0
sysctl --system
5) 加载必要的内核模块
vim /etc/sysconfig/modules/ipvs.modules
填写内容:
#!/bin/bash
modprobe --ip_vs
modprobe --ip_vs_rr
modprobe --ip_vs_wrr
modprobe --ip_vs_sh
modprobe --nf_conntrack_ipv4
chmod +x /etc/sysconfig/modules/ipvs.modules
/etc/sysconfig/modules/ipvs.modules
6) 所有主机添加kubeadm的yum源【在此使用阿里的镜像站】
cat < /etc/yum.repos.d/kubernetes.repo
[kuberneten]
name=Kubernetes Repo
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
END
yum clean all && yum -y makecache
- 配置master节点
安装所需要的软件包
yum -y install kubeadm kubectl kubelet ipvsadm
初始化master节点
kubeadm init
–apiserver-advertise-address=192.168.43.78
–image-repository registry.aliyuncs.com/google_containers
–kubernetes-version v1.17.4
–service-cidr=10.1.0.0/16
–pod-network-cidr=10.244.0.0/16
8) 初始化时[kubeconfig]步骤生成的admin。conf拷贝到.kube/config
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown
(
i
d
−
u
)
:
(id -u):
(id−u):(id -g) $HOME/.kube/config
9) 验证master各组件运行状态
kubectl get cs
kubectl get pods –A
kubectl get nodes
10) 配置两台node节点,在node节点安装kubeadm kubelet ipvsadm
yum -y install kubeadm kubectl kubelet ipvsadm
kubeadm join 192.168.43.78:6443 --token yxg25n.7erwyjbntq82jgsy
–discovery-token-ca-cert-hash sha256:89d218c23a13672fab1f4601b9ff6002e37a0c0da7694d63ab460db3464e27f4
注意:
如果显示下图的值过期请执行:kubeadm token create --print-join-command,重新生成token
出现下图表示成功:
回到master节点查看node信息:
kubectl get nodes
11) 部署网络插件flannel,master节点NotRead的原因是没有使用任何的网络查件,此时node和master的连接还属于不正常,在此安装flannel。
【在master节点执行,执行后需要等flannel的pods运行起来会需要时间】
yum -y install wget
wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
sed -i ‘s@quay.io@quay.azk8s.cn@g’ kube-flannel.yml
kubectl apply -f kube-flannel.yml
kubectl get nodes
kubectl get pods -n kube-system
三:部署Dashboard仪表盘【在master主机操作】
- 下载下载kubernetes-dashboard.yaml文件,部署Dashboard
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta1/aio/deploy/recommended.yaml
将下载的yaml文件中的 images 修改为 lizhenliang/kubernetes-dashboard-amd64:v1.10.1,默认 Dashboard 只能集群内部访问,修改 type 为 NodePort 类型,暴露到外部 30001 端口:
kubectl apply -f kubernetes-dashboard.yaml #执行安装命令
- 使用火狐浏览器访问
访问地址:https://master节点IP:30001
- 创建用户
vim dashboard-adminuser.yaml
kubectl apply -f recommended.yaml
- 绑定角色
vim admin-user-role-binding.yaml
内容:
apiVersion: bac.authorization.k8s.io/ v1
kind: ClusterRoleBinding
metadata:
name: admin-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kube-system
kubectl create -f admin-user-role-binding.yaml
查看对外暴露的端口号:
kubectl get svc -n kubernetes-dashboard
- 获取tocken
kubectl get secret -n kubernetes-dashboard
kubectl describe secret kubernetes-dashboard-token-l2p57 -n kubernetes-dashboard
在这里插入图片描述 - 通过火狐浏览器访问https://master主机IP:3001
更多推荐
所有评论(0)