容器的编排与运维

任务 1 容器云平台环境初始化(10 分)

  1. 容器云平台的初始化

master节点主机名设置为 master、node1节点主机名设置为 node1、node2节点主机名设为 node2、harbor节点主机名设置为 harbor,所有节点关闭 swap,并配置 hosts映射。
修改主机名
[root@master ~]# hostnamectl set-hostname master

配置映射
[root@master ~]# vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.18.4.10 master
10.18.4.11 node

关闭SELinux和防火墙
[root@master ~]# systemctl stop firewalld.service
[root@master ~]# systemctl disable firewalld.service

所有节点关闭SELinux
[root@master ~]# vi /etc/selinux/config

修改SELINUX=disabled 
[root@master ~]# setenforce 0

删除iptables防火墙规则
所有节点清除iptables规则:
[root@master ~]# iptables -F
[root@master ~]# iptables -X
[root@master ~]# iptables -Z
[root@master ~]# /usr/sbin/iptables-save
  1. 挂载镜像持久化挂载

将镜像文件 CentOS-7-x86_64-DVD-1804.iso 永久挂载到 centos 目录下,将镜像文件chinaskills_cloud_paas.iso 永久挂载到 /opt/paas 目录下。


创建目录
mkdir /opt/centos 

挂载目录
mount -o loop CentOS-7-x86_64-DVD-2009\(7.9\).iso  /opt/centos
mount -o loop chinaskills_cloud_paas.iso /opt/
查看挂载情况
df -Th
修改fstab文件
vi /etc/fstab 
添加如下内容
/dev/loop0 /opt/centos iso9660 defaults 0 0
/dev/loop0 /opt/paas iso9660 defaults 0 0
重启就可以永久挂载
  1. 配置yum源

所有yum源移动到home目录下
mv /etc/yum.repos.d/* /home
创建yum文件
vi /etc/yum.repos.d/local.repo
添加如下内容
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
[k8s]
name=k8s
baseurl=file:///opt/paas/kubernetes-repo
gpgcheck=0
enabled=1
清除yum源 yum源刷新
yum clean all 
yum repolist
安装vsftpd服务
yum -y install vsftpd
共享/opt目录
vi /etc/vsftpd/vsftpd.conf 
添加如下内容
anon_root=/opt
启动并开机自启vsftpd服务
systemctl start vsftpd
systemctl enabled vsftpd

node1/node2节点:
[root@node1 ~]# mv /etc/yum.repos.d/* /home
[root@node1 ~]# vi /etc/yum.repos.d/local.repo 
[centos]
name=centos
gpgcheck=0
enabled=1
baseurl=ftp://master/centos
[k8s]
name=k8s
gpgcheck=0
enabled=1
baseurl=ftp://master/paas/kubernetes-repo
清除yum源 yum源刷新
yum clean all 
yum repolist
  1. 设置时间同步服务器

安装chrony
yum -y install chrony
配置文件修改
vi  /etc/chrony.conf
修改第22行
allow 192.168.24.0/16
修改第29行设置同步,Serve time even if not synchronized to any NTP server.,打开注释即可,即:
local stratum 10
重启下服务端chrony服务,
systemctl restart chronyd.service

客户端配置
配置文件修改
vi  /etc/chrony.conf
修改server即可,删掉其他的,添加要同步时间的源服务器ip,格式如下:
server 192.168.24.13 iburst
重启下客户端chrony服务
systemctl restart chronyd.service
客户端使用chronyc sources -v命令完成同步即可
  1. 设置免密登录

生成密钥
ssh-keygen -t rsa
追加到各个节点 各节点都要执行以下命令
ssh-copy-id master
ssh-copy-id node1
ssh-copy-id node2
ssh-copy-id harbor
  1. k8s搭建任务

  1. 安装 docker 应用

在master节点执行脚本k8s_harbor_install.sh即可完成harbor仓库的搭建
cd /opt/
./k8s_harbor_install.sh 
重启服务
systemctl restart docker
  1. 安装 docker 应用

每个节点执行
sudo sh -c 'echo {\"registry-mirrors\": [\"https://5twf62k1.mirror.aliyuncs.com\"]} > /etc/docker/daemon.json'
[root@master ~]# vi /etc/docker/daemon.json 
[root@master ~]# cat /etc/docker/daemon.json 
{
        "registry-mirrors": [ "https://5twf62k1.mirror.aliyuncs.com"],
        "exec-opts": ["native.cgroupdriver=systemd"]
}
  1. 安装 docker-compose

挂载镜像
mount chinaskills_cloud_paas.iso /opt/paas/
赋予权限
chmod +x /opt/paas/docker-compose/v1.25.5-docker-compose-Linux-x86_64
复制文件到bin目录下
cp -rvf /opt/paas/docker-compose/v1.25.5-docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
安装完成后执行 docker-compose version 命令
  1. 搭建 horbor 仓库

  1. 上传 docker 镜像

  1. 安装 kubeadm 工具

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF


yum -y install kubeadm-1.15.1 kubectl-1.15.1 kubelet-1.15.1

# 开机自启
systemctl enable kubelet.service
----------------------------------
  1. 删除污点

使用命令删除 master 节点的污点,使得 Pod 也可以调度到 master 节点上。
kubectl taint nodes --all node-role.kubernetes.io/master-
  1. 安装网络插件

使用 kube-flannel.yaml 安装 kubernetes 网络插件
kubectl apply -f kube-flannel.yml
  1. 安装图形界面

kubectl apply -f recommended.yaml

  1. 给 kubernetes 创建证书

1 [root@k8smaster01 ~]# cd /opt/k8s/work
  2 [root@k8smaster01 work]# cat > kubernetes-csr.json <<EOF
  3 {
  4   "CN": "kubernetes",
  5   "hosts": [
  6     "127.0.0.1",
  7     "192.168.24.11",
  8     "192.168.24.12",
  9     "192.168.24.13",
 10     "${CLUSTER_KUBERNETES_SVC_IP}",
 11     "kubernetes",
 12     "kubernetes.default",
 13     "kubernetes.default.svc",
 14     "kubernetes.default.svc.cluster",
 15     "kubernetes.default.svc.cluster.local."
 16   ],
 17   "key": {
 18     "algo": "rsa",
 19     "size": 2048
 20   },
 21   "names": [
 22     {
 23       "C": "CN",
 24       "ST": "Shanghai",
 25       "L": "Shanghai",
 26       "O": "k8s",
 27       "OU": "System"
 28     }
 29   ]
 30 }
 31 EOF
 32 #创建Kubernetes的CA证书请求文件

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Roesonly

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值