文章目录

  • 虚拟机安装
  • ssh:本地终端连接虚拟机
  • zsh安装
  • K8S安装过程笔记
  • 拉去镜像脚本
  • 复制虚拟机
  • 修改主机名
  • 修改网卡ip地址
  • 修改sshd监听地址
  • virtualbox端口转发
  • 参考


杂项:

window 查看网卡:我的电脑——管理——设备管理器————网络适配器

私有IP地址:

A类: 10.0.0.0 ~ 10.255.255.255

B类:172.16.0.0 ~ 172.31.255.255

C类:192.168.0.0 ~ 192.168.255.255

我觉得关于K8S安装的问题,在【参考】链接中能够找到答案,同时还有视频讲解,因此,以下内容是,我安装过程中一些视频中没有的东西。(可能大佬觉得很简单,就没有细说了!!!)

虚拟机安装

在虚拟机安装过程中,需要注意 设定,CPU个数 大于2, 内存大于4G,按照视频中讲解的步骤安装,就没有问题。记录下安装过程中比较重要的一点:网卡的设置;

虚拟机中,我们安装了两个网卡:

  1. NAT:虚拟机和外界沟通的网卡,访问百度就走这个网卡
  2. 仅主机访问:主机与虚拟机,虚拟机之间交流的网卡

关于这个具体区别,docker总结那章在详细介绍!!

查看网卡信息:

╰─# ip addr                                                     
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:f9:a1:f1 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.20/24 brd 10.0.2.255 scope global noprefixroute enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::10d1:ceea:43f:5be1/64 scope link noprefixroute
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:d3:08:cf brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.20/24 brd 192.168.56.255 scope global noprefixroute enp0s8
       valid_lft forever preferred_lft forever
    inet6 fe80::ee80:9e9a:1895:76c9/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

查看网卡设置:

╰─# ls /etc/sysconfig/network-scripts                           
ifcfg-enp0s3  ifcfg-enp0s
╰─# cat /etc/sysconfig/network-scripts/ifcfg-enp0s3
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
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="enp0s3"
UUID="0dec5067-3dcb-4ceb-ab4a-c500ef4d9ed6"
DEVICE="enp0s3"
ONBOOT="yes"
IPADDR="10.0.2.20"
PREFIX="24"
GATEWAY="10.0.2.2"
DNS1="10.0.2.2"
DNS2="114.114.114.114"
IPV6_PRIVACY="no"
╰─# cat /etc/sysconfig/network-scripts/ifcfg-enp0s8
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
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=enp0s8
UUID=7cab2f72-b546-48a5-9296-eef455f21ed5
DEVICE=enp0s8
ONBOOT=yes
IPADDR="192.168.56.20"
NETMASK="255.255.255.0"
GATEWAY="192.168.56.1"

注意一下几点:

  1. ONBOOT设置为yes
  2. 可以修改以上两个文件的设置,然后执行nmcli c reload (Centos:重启网卡的指令)

因为虚拟机终端的操作有诸多限制,因此,利用ssh,使得本地终端连接虚拟机。

由于我是用的window系统,因此利用wsl来连接虚拟机终端,需要首先需要配置:

ssh:本地终端连接虚拟机

  1. 查看ssh服务是否安装:
rpm -qa | grep openssh
  1. 如果没安装,以下命令安装:
yum install openssh openssh-server openssh-clients openssl-libs
  1. 查看sshd服务是否启动了.
systemctl status sshd.service
  1. 启动服务
systemctl start sshd.service
  1. 重启sshd服务
systemctl restart sshd.service
  1. 设置为开机启动:
systemctl enable sshd.service

虚拟机端口的配置:

端口转发的意思:访问 主机ip:主机端口,其实就是访问 子系统:子系统端口;

k8s集群安装ingress controller windows安装k8s集群_k8s

同时,我们需要设计ssh服务再虚拟机中监听22号端口,在虚拟机中修改 /etc/ssh/sshd_config

k8s集群安装ingress controller windows安装k8s集群_docker_02

然后根据以上指令重启就可以辣。

如果是在window上的话,我们可以 通过wsl 来连接虚拟机:

ssh -p 2220 root@127.0.0.1

zsh安装

为了使得界面好看,首先安装zsh: oh my zsh

wget sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

安装以后,我们还需要更改相应的shell:

# 显示系统的shell
cat /etc/shells
# 显示当前shell
echo $SHELL
# 更改sh
chsh -s /bin/zsh

如果出现 chsh command not found,执行以下命令

sudo dnf install util-linux-user

CentOS 8.0.1905-‘chsh’: command not found

到这里,应该终端应该出现不同了;

K8S安装过程笔记

这个安装过程按照链接笔记和视频做就不会出错,以下为一个预先拉去所需镜像的脚本,适当修改应该就能用/

预先拉取所需镜像:

$ kubeadm config images list
k8s.gcr.io/kube-apiserver:v1.19.4
k8s.gcr.io/kube-controller-manager:v1.19.4
k8s.gcr.io/kube-scheduler:v1.19.4
k8s.gcr.io/kube-proxy:v1.19.4
k8s.gcr.io/pause:3.2
k8s.gcr.io/etcd:3.4.13-0
k8s.gcr.io/coredns:1.7.0
拉去镜像脚本

建立help.sh脚本:

images=(
         kube-apiserver:v1.19.4
         kube-controller-manager:v1.19.4
         kube-scheduler:v1.19.4
         kube-proxy:v1.19.4
         pause:3.2
         etcd:3.4.13-0
         coredns:1.7.0
  )
for imageName in ${images[@]} ; do
    docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/${imageName}
    docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/${imageName} k8s.gcr.io/${imageName}
    docker rmi registry.cn-hangzhou.aliyuncs.com/google_containers/${imageName}
done

复制虚拟机

master主机配置好之后,我们就需要复制子节点了

虚拟机复制以后,需要作得操作:

  • 修改主机名
  • 修改网卡ip地址
  • 修改sshd监听端口
修改主机名
# 显示主机名
cat /etc/hostname

# 修改主机名
hostnamectl set-hostname k8snode1
修改网卡ip地址

由于虚拟机时复制的,因此所有设置都是一致的。为了避免ip冲突,因此我们修改虚拟机两张网卡的ip地址。

# 查看ip地址
ip addr

# 修改NAT网卡ip地址
vim /etc/sysconfig/network-scripts/ifcfg-enp0s3
# 修改host网卡ip地址
vim /etc/sysconfig/network-scripts/ifcfg-enp0s8

# 重载网卡设置
nmcli c reload
修改sshd监听地址

我们复制之前,sshd监听的是源虚拟机的ip地址,因此在这里,我们将其修改成host网络的ip地址,如下:

vim /etc/ssh/sshd_config

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-13SZjcEx-1607431694204)(C:\Users\fanzhihao\AppData\Roaming\Typora\typora-user-images!在这里插入图片描述 )]

virtualbox端口转发

k8s集群安装ingress controller windows安装k8s集群_k8s

参考