KubeEdgeの新しいインストールと展開

仮想マシンの作成

最初のステップ:2つの仮想マシンを作成します。この記事ではcentos7を使用します。前の失敗とレッスンの後、ディスクスペースはより大きな40Gに設定され、メモリは4GBで、プロセッサは4コアです。(最小限のインストールで十分です)
2つの仮想マシン(1つはマスター、もう1つはノード1)。
ステップ2:作成が完了したら、ログイン名を覚えておく必要があります。XSHELLが使用するログイン名はこのログイン名です!仮想マシンのログインが完了した後に入力する必要があります

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

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

入力後に仮想マシンを再起動します

XSHELLログイン方法

2つの仮想マシンを接続
し、ホストセクションに仮想マシンのIPアドレスを入力します。仮想マシンのIPアドレスクエリ方法:(ip addr通常は192で始まる方法
接続が成功すると、ユーザー名を入力するように求められます。ユーザー名は、仮想マシンにログインするときに入力されます。ユーザー名とパスワードは、ログイン時に入力するパスワードです。(ユーザー名とパスワードを覚えておくことをお勧めします。次回のログインに非常に便利です)

k8sの展開

当初、公式サイトの運用をn回行って失敗しましたが、多くの投稿を読んだ後、kubernetesを導入してマスターノードを導入することにしました。(k8sによってデプロイされたファイルはすべてShang Silicon Valleyからのものです。特定の操作のBV1GT4y1A756特定のリンクであるステーションbのビデオも見ることができhttps://www.bilibili.com/video/BV1GT4y1A756?p=7ます)Shang Silicon Valleyにもう一度感謝します!良心!エピソード6から開始できます(マスターノードのレイアウト部分を見
てください)。両方のノードに構成する必要のある情報を構成します(入力する送信キーを選択します...すべてのノードが入力情報を共有できます)
ここに写真の説明を挿入

# 安装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をインストールしますが、両方のノードもインストールします

$ 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ソフトウェアソースを追加

$ 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をインストールします(より安定したバージョンを使用します)

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

Kubernetesマスターを展開する

中国ではデフォルトのプルミラーアドレスk8s.gcr.ioにアクセスできないため、ここでAlibabaCloudミラーウェアハウスアドレスを指定します

$ 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中执行

図のステートメントが表示された場合、それは成功を意味し、図の白い部分をコピーして実行
ここに写真の説明を挿入
します。

$kubectl  get node

この時点でマスターノードがNotReady状態になっていることがわかります。次に、CNIネットワークプラグインを展開する必要があります。

ネットワークプラグイン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

ここに写真の説明を挿入
この図は、マスターノードの展開が成功したことを示しています。

エッジへのモスキートの取り付け

yumソースを更新する

$yum -y update

EPELソフトウェアライブラリを追加する

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

モスキートをダウンロード

$yum -y install mosquitto

KubeEdgeのインストールと構成

マスター側で実行して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のインストールはすでに非常に明確です。手順に従ってください。記事のエラーは、クラウド側だけでなく、クラウド側とエッジ側で変更する必要があります。
リンク:[リンク]

エラーが修正されて実行された./keadm init後、ダウンロードは非常に遅くなります(少なくとも私のキャンパスネットワークはこのようなものです...)、辛抱強く待って、最初にクラウド側を実行し、次にエッジ側を実行する手順に従います。
終了後に入力します

$kubectl get node

成功!
ここに写真の説明を挿入

総括する

環境の構築に時間がかかり、多くの落とし穴に遭遇しました。また、インターネット上の多くの記事やビデオの助けを借りました。私はオープンソースの概念に準拠しているので、このプロセスを記録して、後で読むことができるようにみんなと共有したいと思います。私がエッジコンピューティングの知識に触れるのはこれが初めてなので、多くの側面があまり馴染みがありません。記事に何か問題がある場合は、指摘してください。お役に立てれば幸いです。(自分のライティングスキルも非常に一般的です。理解できないことがあったり、指示に問題がある場合は、コメントして知らせてください)

参考記事と動画

「KubeEdgeエッジコンピューティングフレームワーク、Xiaobaiも展開できます!「リンク:リンク
「Kubeedge1.4.0インストール」リンク:リンク
「GitHubのraw.githubusercontent.comを解決しても問題を接続できません」リンク:リンク
「KubeEdgev1.3導入ガイド!「リンク:リンク
「浅いものから深いものへのk8sチュートリアル-シリコンバレー」リンク:リンク

おすすめ

転載: blog.csdn.net/PinocchioNE/article/details/109337365