ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

K8S-Demo集群实践:准备VMware虚拟机模板

2021-01-17 16:00:28  阅读:233  来源: 互联网

标签:安装 Demo 虚拟机 etc yum docker K8S root localhost


K8S-Demo集群实践:准备VMware虚拟机模板

一、安装VMware

1、安装VMware软件

  • 参考 https://www.cnblogs.com/fuzongle/p/12760193.html
  • k8s-demo 使用的安装包 VMware-workstation-full-15.5.2-15785246.exe

2、配置虚拟网络

在这里插入图片描述
在这里插入图片描述

  • 使用NAT模式,网络设置为 192.168.66.0

二、创建第一台虚拟机【虚拟机模板】

1、安装操作系统 CentOS Linux release 7.8.2003 (Core)

  • 这一步会设置root用户密码

2、配置IP地址 192.168.66.10

  • 编辑 /etc/sysconfig/network-scripts ,内容如下
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
IPADDR=192.168.66.10
GATEWAY=192.168.66.2
NETMASK=255.255.255.0
DNS1=10.8.0.2
DNS2=192.168.66.2
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=68b1d42c-83fa-4e41-b262-53dd7b844ae8
DEVICE=ens33
ONBOOT=yes
  • 重启网络服务
[root@localhost ~]# systemctl restart network.service

3、配置阿里云yum源

[root@localhost ~]# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
[root@localhost ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
[root@localhost ~]# yum clean all
[root@localhost ~]# yum makecache
[root@localhost ~]# yum upgrade
[root@localhost ~]# yum update

4、升级内核

  • CentOS 7.x 系统自带的3.10.x内核存在Bugs,导致运行的Docker不稳定,解决方案是升级内核到4.4.X以上
[root@localhost ~]# uname -a
Linux localhost 3.10.0-1160.6.1.el7.x86_64 #1 SMP Tue Nov 17 13:59:11 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
[root@localhost ~]# uname -sr
Linux 3.10.0-1160.6.1.el7.x86_64
[root@localhost ~]# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
[root@localhost ~]# yum --enablerepo=elrepo-kernel install -y kernel-lt
[root@localhost ~]# grub2-set-default 0
[root@localhost ~]# sync
[root@localhost ~]# reboot
... ... ... ...
[root@localhost ~]# uname -sr
Linux 4.4.248-1.el7.elrepo.x86_64
  • 安装完成后检查 /boot/grub2/grub.cfg 中对应内核 menuentry 中是否包含 initrd16 配置,如果没有,再安装一次
  • 设置开机从新内核启动
  • 重启机器,检查内核是否成功升级成功

5、设置系统时区、时钟同步

[root@localhost ~]# timedatectl set-timezone Asia/Shanghai
[root@localhost ~]# systemctl enable chronyd
[root@localhost ~]# systemctl start chronyd

三、完善虚拟机模板

1、安装依赖包

[root@localhost ~]# yum install -y epel-release
[root@localhost ~]# yum install -y chrony conntrack ipvsadm ipset jq iptables curl sysstat libseccomp wget socat git

2、设置开机自动加载IPVS模块

  • 编辑 /etc/modules-load.d/kubernetes.conf
[root@localhost ~]# cat >>/etc/modules-load.d/kubernetes.conf<<EOF
ip_vs_dh
ip_vs_ftp
ip_vs
ip_vs_lblc
ip_vs_lblcr
ip_vs_lc
ip_vs_nq
ip_vs_pe_sip
ip_vs_rr
ip_vs_sed
ip_vs_sh
ip_vs_wlc
ip_vs_wrr
nf_conntrack_ipv4
overlay
br_netfilter
EOF
  • 设置开机加载
[root@localhost ~]# systemctl enable systemd-modules-load.service
  • 重启后,检查ipvs模块是否加载
[root@localhost ~]# lsmod | grep -e ip_vs -e nf_conntrack_ipv4

3、关闭防火墙、SWAP分区及SELinux

  • 关闭防火墙,清理防火墙规则,设置默认转发策略
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@localhost ~]# iptables -F && iptables -X && iptables -F -t nat && iptables -X -t nat
[root@localhost ~]# iptables -P FORWARD ACCEPT
  • 关闭swap分区,否则kubelet会启动失败,也可以设置kubelet启动参数 --fail-swap-on为false关闭swap检查
[root@localhost ~]# swapoff -a
[root@localhost ~]# sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
  • 关闭 SELinux,否则 kubelet 挂载目录时可能报错Permission denied
[root@localhost ~]# setenforce 0
[root@localhost ~]# sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config

4、优化内核参数

  • 关闭tcp_tw_recycle,否则与NAT冲突,可能导致服务不通
[root@localhost ~]# cat > /etc/sysctl.d/sysctl.conf <<EOF
net.bridge.bridge-nf-call-iptables=1
net.bridge.bridge-nf-call-ip6tables=1
net.ipv4.ip_forward=1
net.ipv4.tcp_tw_recycle=0
vm.swappiness=0
vm.overcommit_memory=1
vm.panic_on_oom=0
fs.inotify.max_user_instances=8192
fs.inotify.max_user_watches=1048576
fs.file-max=52706963
fs.nr_open=52706963
net.ipv6.conf.all.disable_ipv6=1
net.netfilter.nf_conntrack_max=2310720
EOF
[root@localhost ~]# sysctl -p /etc/sysctl.d/sysctl.conf

5、关闭无关的服务

[root@localhost ~]# systemctl stop postfix && systemctl disable postfix

四、安装Docker

1、卸载旧版本(如果安装过旧版本的话)

[root@localhost ~]# rpm -qa | grep docker
[root@localhost ~]# yum remove docker docker-common docker-selinux docker-engine
[root@localhost ~]# rm -rf /var/lib/docker

2、安装Docker依赖的软件包

[root@localhost ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
  • yum-util提供yum-config-manager功能
  • 另外两个是devicemapper驱动依赖

3、设置yum源

[root@localhost ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
[root@localhost ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • 这里使用的是阿里云镜像

4、安装Docker的稳定版本

  • 更新yum缓存
  • 查看所有仓库中所有docker版本
  • 选择特定版本安装
[root@localhost ~]# yum clean all
[root@localhost ~]# yum makecache fast
[root@localhost ~]# yum list docker-ce --showduplicates | sort -r
[root@localhost ~]# yum install docker-ce-18.09.9-3.el7.x86_64

5、设置开机启动

[root@localhost ~]# systemctl start  docker
[root@localhost ~]# systemctl enable docker

6、验证Docker是否安装成功

[root@localhost ~]# docker version
[root@localhost ~]# docker info
[root@localhost ~]# docker -h

标签:安装,Demo,虚拟机,etc,yum,docker,K8S,root,localhost
来源: https://blog.csdn.net/jasonhe2018/article/details/112744381

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有