概述
安装环境
系统版本
通过 cat /etc/redhat-release 查看,系统版本为:
CentOS Linux release 8.2.2004 (Core)
内核版本
通过 cat /proc/version 查看,内核版本为:
Linux version 4.18.0-193.el8.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 8.3.1 20191121 (Red Hat 8.3.1-5) (GCC)) #1 SMP Fri May 8 10:59:10 UTC 2020
ps:uname -a 或 uname -r 可以直接查看内核版本号。
安装工具 DNF
从 centos7开始,DNF 成为了默认的软件包管理器,虽然 yum 仍然是可用的,但是 DNF 或许是以后的趋势,所以本文我们使用 DNF进行安装,DNF 的命令 大部分和 yum 一样。
顺便科普一下:使用 DNF 代替 yum 是为了解决 yum 性能差、内存占用过多、依赖解析速度变慢 等问题;
DNF 使用 libsolv 进行依赖解析,而 yum 由python 编写。
安装Docker
部署Kubernetes(k8s)时,为什么要关闭swap、selinux、防火墙?
不止部署k8s,许多公司在装机过程就就直接关闭了swap、selinux和防火墙
selinux,这个是用来加强安全性的一个组件,但非常容易出错且难以定位,一般上来装完系统就先给禁用了
iptables防火墙,会对所有网络流量进行过滤、转发,如果是内网机器一般都会直接关闭,省的影响网络性能,但k8s不能直接关了,k8s是需要用防火墙做ip转发和修改的,当然也看使用的网络模式,如果采用的网络模式不需要防火墙也是可以直接关闭的
swap,这个当内存不足时,linux会自动使用swap,将部分内存数据存放到磁盘中,这个这样会使性能下降,为了性能考虑推荐关掉
SWAP就不太一样了,SWAP是让你在明确的OOM和没有报错但是莫名其妙服务就不能用了之间二选一,对于集群化的服务(比如etcd)来说是挂掉一个实例和整个集群都出毛病之间二选一,一般正常人都知道该选哪个
准备工作
1、 DNF 换源
如果是一台新服务器,为了保证下载速度,我们首先将 DNF 换源为国内源,常用的有 阿里的、清华的,以阿里的为例。
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
dnf makecache
dnf repolist
2、修改 hostname
因为以后要做 k8s集群,所以最好在服务器什么都没装时,先改好 k8s集群的每个节点的名称。
hostnamectl set-hostname k8s-172
3、修改 hosts 文件
echo "192.168.10.202 k8s-172" >> /etc/hosts
# 或者
cat >> /etc/hosts << EOF
192.168.10.202
k8s-172
EOF
4、关闭交换分区(为k8s准备)
swapoff -a
sed -i 's/.*swap.*/#&/' /etc/fstab
free -h
5、关闭 selinux
# 查看 selinux 状态
sestatus # 或者 sestatus -v 或者 getenforce
# 临时设置为 Permissive (宽松模式)
setenforce 0
# 永久关闭selinux
sudo sed -i "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
reboot
安装 Docker
1、安装必要工具
dnf install -y dnf-utils device-mapper-persistent-data lvm2
2、添加 Docker 软件源
dnf config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3、更新 DNF 源
dnf makecache
4、 查看可以安装的 Docker 版本
dnf list docker-ce --showduplicates | sort -r
5、安装 Docker-CE
dnf -y install docker-ce
如果是第一次安装 Docker,会报错:
Problem: package docker-ce-3:19.03.13-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but none of the providers can be installed
解决办法:
dnf -y install wget
wget https://download.docker.com/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
dnf -y install containerd.io-1.2.6-3.3.el7.x86_64.rpm
检查是否安装成功:
docker version
配置 与启动 Docker
1、新建 daemon.json 文件,并配置,这里主要配置了4个地方:
- registry-mirrors :镜像改为阿里云的镜像仓库,(需要到阿里云网站申请);
- insecure-registries :配置私有镜像仓库时,配置镜像不使用 https 传输,IP 是 私有镜像仓库的IP;
- exec-opts :为了与 k8s 的默认驱动保持一致;
- log :分别配置了日志的文件格式、每个容器的最大日志文件数 和 每个日志文件的最大尺寸;
mkdir -p /etc/docker
vim daemon.json
{
"registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"],
"insecure-registries": ["120.xxx.xx.174:5000"],
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "1"
}
}
2、使开机自启动,并启动 Docker
systemctl enable docker
systemctl start docker
3、查看配置是否生效
docker info
systemctl status docker -l
4、如果启动 Docker 后 修改了配置文件,则需要 使配置生效并重启 Docker
systemctl daemon-reload
systemctl restart docker
参考资料
1、通过 kubeadm 安装 k8s
https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/
2、k8s 官网的 Docker 安装方法
https://kubernetes.io/zh/docs/setup/production-environment/container-runtimes/
最后
以上就是英俊啤酒为你收集整理的【DevOps】CentOS8.2 安装 Docker(19.03.13)安装环境安装Docker参考资料的全部内容,希望文章能够帮你解决【DevOps】CentOS8.2 安装 Docker(19.03.13)安装环境安装Docker参考资料所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复