KubeEdge萌新的安装部署

虚拟机建立

第一步:建立两台虚拟机,本文使用的是centos7。通过前几回的失败教训,将磁盘空间设置的大一点40G,内存4GB,处理器4核。(最小安装便可)
两台虚拟机一台做为master一台做为node1
第二步:建立完成后登陆名须要记住!一会XSHELL使用的登陆名就是这个登陆名!虚拟机登录完成后必须先输入

javascript

echo ONBOOT=yes >> /etc/sysconfig/network-scripts/ifcfg-ens33    

#centos7打开网关的方法,输完之后要在使用一次 ip addr 查看一下地址否则不生效

输完后重启虚拟机java

XSHELL登录方式

链接两台虚拟机,主机部分填写虚拟机的ip地址
虚拟机的ip地址查询方式:ip addr(通常是192开头的那个)
若是链接成功就会提示输入用户名,用户名就是刚刚登录虚拟机时输入的用户名,密码就是登录时输入的密码。(这里建议记住用户名和密码,下次登录就会方便不少)

node

k8s部署

刚开始跟着官网的操做作了n次都失败了,看了不少帖子因而选择用部署kubernetes的方式进行部署master节点。(k8s部署的文件均来自于尚硅谷,具体操做也能够观看b站视频BV1GT4y1A756,具体连接https://www.bilibili.com/video/BV1GT4y1A756?p=7)再次感谢尚硅谷!!良心!!!能够从第6集开始看(只看master节点布置部分便可)
配置两台节点都须要配置的信息(选择发送键输入…可使全部节点共享输入信息)
在这里插入图片描述

linux

# 安装wget指令
$yum install wget

# 关闭防火墙
$systemctl stop firewalld
$systemctl disable firewalld

# 关闭selinux
$sed -i 's/enforcing/disabled/' /etc/selinux/config  # 永久
$setenforce 0  # 临时

# 关闭swap
$swapoff -a  # 临时
$sed -ri 's/.*swap.*/#&/' /etc/fstab    # 永久

# 根据规划设置主机名(<hostname>处填写本身想规定的名字,本文将master节点命名为m1,edge节点命名为m2。注:这<>两个符号不用输)
$hostnamectl set-hostname <hostname>

# 在master添加hosts(注:此处的ip地址写两台虚拟机的ip地址,名称写上一步设置的主机名,而且这一步操做仅在master节点内操做)
$cat >> /etc/hosts << EOF
192.168.44.146 k8smaster
192.168.44.145 k8snode1
192.168.44.144 k8snode2
EOF

# 将桥接的IPv4流量传递到iptables的链
$cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
$sysctl --system  # 生效

# 时间同步
$yum install ntpdate -y
$ntpdate time.windows.com

安装docker,同时也是两个节点都要安装git

$ wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
$ yum -y install docker-ce-18.06.1.ce-3.el7
$ systemctl enable docker && systemctl start docker
$ docker --version
Docker version 18.06.1-ce, build e68fc7a
$ cat > /etc/docker/daemon.json << EOF
{
  "registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"]
}
EOF

添加阿里云YUM软件源github

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

安装kubeadm,kubelet和kubectl(用比较稳定的版本)golang

$ yum install -y kubelet-1.18.0 kubeadm-1.18.0 kubectl-1.18.0
$ systemctl enable kubelet

部署Kubernetes Master

因为默认拉取镜像地址k8s.gcr.io国内没法访问,这里指定阿里云镜像仓库地址docker

$ kubeadm init \
  --apiserver-advertise-address=192.168.213.129 \
  --image-repository registry.aliyuncs.com/google_containers \
  --kubernetes-version v1.18.0 \
  --service-cidr=10.96.0.0/12 \
  --pod-network-cidr=10.244.0.0/16
#注意第一条命令要把ip地址改为master的ip地址
#其余指令的ip地址只要不和master的地址冲突便可
#而且要把每句指令后的\删除掉,再所有复制到xshell中执行

若是出现图中语句,则说明成功了,而且复制图中标白部分并执行
在这里插入图片描述
完成后输入

shell

$kubectl  get node

会发现此时的master节点是NotReady状态,而后咱们就须要部署CNI网络插件json

部署网络插件CNI

$kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
#这条指令可能会失败,能够多试几回(本身当时试了七八次才成功)
#若是出现关于swap的错误就输入 swapoff -a

$kubectl get pods -n kube-system
#这条指令用于查看文件的拉取情况
NAME                          READY   STATUS    RESTARTS   AGE
kube-flannel-ds-amd64-2pc95   1/1     Running   0          72s

在这里插入图片描述
必定要耐心等!!!由于本身用的是校园网,有一次等了2个小时…
成功后如图
在这里插入图片描述


$wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
$ubectl apply -f kube-flannel.yml
#这两句命令是在上面语句实在执行不了的时候再进行使用

此时再使用

$kubeclt get node

在这里插入图片描述
如图则说明master节点部署成功了!

edge端的Mosquitto安装

更新yum源

$yum -y update

添加EPEL软件库

$yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

下载mosquitto

$yum -y install mosquitto

KubeEdge的安装与配置

在master端执行便可
下载golang

$wget https://golang.google.cn/dl/go1.15.3.linux-amd64.tar.gz
#若是这步下的慢能够本身上官网下
$tar -zxvf go1.15.3.linux-amd64.tar.gz -C /usr/local

配置golang环境

$vim /etc/profile
#这一步不成功可能须要更新vim  指令为 yum -y install vim-enhanced
#把下面这段复制到文本末尾
export HOME=/root
export GOROOT=/usr/lib/go
export GOPATH=/usr/local/go
export PATH=$PATH:$GOPATH/bin
#按键盘上的Ins键为输入,复制好之后按ESC,再按shift  +   :     ,输入wq!便可保存退出

继续输入

$source /etc/profile
$mkdir -p /data/gopath && cd /data/gopath
$mkdir -p src pkg bin

下载KubeEdge源码

$git clone https://github.com/kubeedge/kubeedge $GOPATH/src/github.com/kubeedge/kubeedge
#git指令安装:  yum install -y git
#下载失败就多试几回

keadm安装

keadm的安装这个大佬已经讲的很清楚了,跟着步骤走就行,文中提示会出错的地方要在cloud端和edge端都进行修改,不能只修改cloud端!!!
连接:[link]

当修改完错误并执行./keadm init后,下载也会很慢(至少个人校园网是这样的…),耐心等待,按照步骤先进行cloud端的再进行edge端的
都结束后输入

$kubectl get node

成功啦!
在这里插入图片描述

总结

搭环境这个环节用了很长的时间,遇到了不少的坑,也是受到了网上不少文章视频的帮助,秉持开源理念,因此想要把这个过程记录下来分享给你们来也方便之后本身再看。本身是第一次接触边缘计算方面的知识,因此不少方面都不是那么熟悉,若是大佬们发现文中哪里写的有问题还请指出,但愿可以帮到你们!(本身的文字功底也很通常,若是哪里有看不懂或者指令有问题请评论私信告知我)

参考的文章及视频

《KubeEdge边缘计算框架,小白也能部署了!》连接:link
《Kubeedge1.4.0安装》连接:link
《解决GitHub的raw.githubusercontent.com没法链接问题》连接:link
《KubeEdge v1.3部署指南!》连接:link
《k8s教程由浅入深-尚硅谷》连接:link

相关文章
相关标签/搜索