快速安装

1 环境的快速准备

1.1 安装ansible并设置免秘钥登录

chrony-server主机操作

# 安装ansible
yum -y install ansible
# 配置文件优化
sed -i "s/#host_key_checking/host_key_checking/g" /etc/ansible/ansible.cfg
sed -i "s/#deprecation_warnings = True/deprecation_warnings = False/g" /etc/ansible/ansible.cfg 
# 生成密钥
ssh-keygen
# 将公钥传到原有的ansible主机上
scp /root/.ssh/id_rsa.pub 192.168.162.119:/tmp/a.pub

原有ansible主机操作

# 将新开的9(除去chrony-server主机)台主机加到ansible主机列表中
cat > hosts <<EOF
192.168.166.178
192.168.166.217
192.168.166.38
192.168.166.99
192.168.166.51
192.168.166.205
192.168.166.73
192.168.166.111
192.168.166.221
EOF
# 传输chrony-server的主机公钥到9台新主机上
ansible -i hosts all -m authorized_key -a "user=root key='{{ lookup('file', '/tmp/a.pub') }}'"
# 传出主机列表到chrony-server主机上
scp hosts 192.168.166.229:/etc/ansible/hosts

1.2 修改主机名

chrony-server主机操作

1.3 升级内核 && 配置时间同步 && 系统参数调整

chrony-server主机操作

2 创建各种证书

2.1 创建CA证书

chrony-server主机操作

2.2 生成 kubeconfig 配置文件

chrony-server主机操作

2.3 生成 kube-proxy.kubeconfig 配置文件

chrony-server主机操作

2.4 生成kube-controller-manager.kubeconfig 配置文件

chrony-server主机操作

2.5 生成kube-scheduler.kubeconfig 配置文件

chrony-server主机操作

2.6 创建etcd证书

chrony-server主机操作

3 安装etcd集群

3.1 下载etcd/etcdctl 二进制文件

etcd三台主机操作

3.2 生成etcd证书

chrony-server主机操作

3.3 创建etcd 服务文件 etcd.service

etcd三台主机操作

根据实际情况,修改相关配置,需要修改的选项有:

--name=

--initial-advertise-peer-urls=

--listen-peer-urls

--listen-client-urls=

--advertise-client-urls=

--initial-cluster-token=

--initial-cluster=

3.4 启动并验证etcd服务

etcd三台主机操作

预期结果:

4 安装docker服务

chrony-server主机操作

5 安装kube-master节点

5.1 下载k8s-server二进制文件

k8s-master节点操作

5.2 生成相关证书文件

chrony-server主机操作

k8s-master节点操作

5.3 创建apiserver的服务配置文件

k8s-master节点操作

根据实际情况,修改相关配置,需要修改的选项有:

--advertise-address=

--bind-address=

--etcd-servers=

5.4 创建controller-manager 的服务文件

k8s-master节点操作

5.5 创建scheduler 的服务文件

k8s-master节点操作

5.6 master 集群的验证

k8s-master节点操作

预期结果:

6 安装kube-node节点

6.1 下载k8s-node二进制文件

k8s-node节点操作

6.2 安装配置haproxy

k8s-node节点操作

6.3 生产相关证书文件

chrony-server主机操作

k8s-node节点操作

6.4 创建kubelet的kubeconfig文件

k8s-node节点操作

6.5 创建kubelet服务文件

k8s-node节点操作

6.6 创建 kube-proxy的kubeconfig 文件

chrony-server主机操作

k8s-node节点操作

6.7 创建 kube-proxy服务文件

k8s-node节点操作

6.8 验证node状态

k8s-node节点操作

预期结果为:

状态为NotReady,因为我们还没有安装cni网络插件

7 kube-master节点安装kubelet和kube-proxy

7.1 下载k8s-node二进制文件

k8s-node节点操作

7.2 安装配置kubelet

k8s-master节点操作

7.3 安装配置kube-proxy

k8s-master节点操作

7.4 验证node状态

k8s-master节点操作

预期结果:

状态为NotReady,因为我们还没有安装cni网络插件

8 安装网络

8.1 安装flannel

k8s-master,kube-node节点操作

预期结果:

8.2 检验测试,网络的连通性

在任意主机ping pod内的ip,如果能ping通,代表网络连通性正常

9 安装coredns

9.1 安装coredns

从kubernetes github上下载coredns的yaml文件

修改以下字段

我根据yaml_base文件来改

chrony-server主机操作

k8s-node节点操作

预期结果:

9.2 验证coredns是否生效

k8s-master任一节点操作

10 安装kuboard

10.1 安装

k8s-master任一节点操作

输出结果如下所示:

10.2 获取Token

k8s-master任一节点操作

10.3 访问Kuboard

您可以通过NodePort、port-forward 两种方式当中的任意一种访问 Kuboard

  • 通过NodePort访问

  • 通过port-forward访问]

Kuboard Service 使用了 NodePort 的方式暴露服务,NodePort 为 32567;您可以按如下方式访问 Kuboard。

输入前一步骤中获得的 token,可进入 Kuboard 集群概览页

Last updated

Was this helpful?