首页 > 其他分享 >KubeEdge部署 完美运行 附问题解决方法

KubeEdge部署 完美运行 附问题解决方法

时间:2023-11-09 11:01:27浏览次数:34  
标签:KubeEdge etc 完美 部署 yum kubeedge docker com kubeadm

云端部署环境准备

一、部署前工作(k8s、docker安装及配置、初始化集群、golang安装、keadm安装)

配置网络参数

cat >> /etc/hosts << EOF
# GitHub Start
52.74.223.119 github.com
192.30.253.119 gist.github.com
54.169.195.247 api.github.com
185.199.111.153 assets-cdn.github.com
151.101.76.133 raw.githubusercontent.com
151.101.108.133 user-images.githubusercontent.com
151.101.76.133 gist.githubusercontent.com
151.101.76.133 cloud.githubusercontent.com
151.101.76.133 camo.githubusercontent.com
151.101.76.133 avatars0.githubusercontent.com
151.101.76.133 avatars1.githubusercontent.com
151.101.76.133 avatars2.githubusercontent.com
151.101.76.133 avatars3.githubusercontent.com
151.101.76.133 avatars4.githubusercontent.com
151.101.76.133 avatars5.githubusercontent.com
151.101.76.133 avatars6.githubusercontent.com
151.101.76.133 avatars7.githubusercontent.com
151.101.76.133 avatars8.githubusercontent.com
192.30.255.112  github.com git
185.31.16.184 github.global.ssl.fastly.net
# GitHub End
EOF
#关闭防火墙
systemctl disable firewalld

#永久禁用SELinux
sed -i 's/SELINUX=permissive/SELINUX=disabled/' /etc/sysconfig/selinux

#关闭swap
sed -ri 's/.*swap.*/#&/' /etc/fstab

安装docker

update-alternatives --set iptables /usr/sbin/iptables-legacy
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum makecache
yum -y install docker-ce

systemctl start docker
systemctl enable docker

重启系统

reboot

配置k8s yum源

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

##安装kubelet、kubeadm、kubectl

yum makecache
yum install -y kubelet-1.21.1 kubeadm-1.21.1 kubectl-1.21.1 ipvsadm
systemctl enable kubelet

配置内核参数

cat <<EOF >  /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
vm.swappiness=0
EOF

sysctl --system
modprobe br_netfilter
sysctl -p /etc/sysctl.d/k8s.conf

加载ipvs相关内核模块

modprobe ip_vs
modprobe ip_vs_rr
modprobe ip_vs_wrr
modprobe ip_vs_sh
modprobe nf_conntrack_ipv4

lsmod | grep ip_vs

拉取镜像

kubeadm config print init-defaults > kubeadm.conf 

sed -i "s/imageRepository: .*/imageRepository:registry.aliyuncs.com\/google_containers/g" kubeadm.conf

kubeadm config images pull --config kubeadm.conf


docker images

发现已下载的镜像里面没有 registry.aliyuncs.com/google_containers/coredns:v1.8.0 这个镜像

使用 docker 命令拉取镜像

docker pull registry.aliyuncs.com/google_containers/coredns:1.8.0


docker tag registry.aliyuncs.com/google_containers/coredns:1.8.0 registry.aliyuncs.com/google_containers/coredns/coredns:v1.8.0

初始化集群

kubeadm init --kubernetes-version=1.21.0 \
--image-repository registry.aliyuncs.com/google_containers  \
--pod-network-cidr=10.244.0.0/16

如果初始化失败,请使用如下代码清除后重新初始化

kubeadm reset
ifconfig cni0 down
ip link delete cni0
ifconfig flannel.1 down
ip link delete flannel.1
rm -rf /var/lib/cni/
rm -rf /var/lib/etcd/*

进一步配置kubectl

mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config


systemctl status kubelet

systemctl status kubelet

配置网络插件

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
systemctl restart kubelet
kubectl get node
kubectl get pods -n kube-system
kubectl get svc

安装golang

yum install wget
wget https://golang.google.cn/dl/go1.15.3.linux-amd64.tar.gz
tar zxvf go1.15.3.linux-amd64.tar.gz
mv go /usr/local/

##vi /etc/profile 结尾加

export HOME=/root
export GOROOT=/usr/local/go
export GOPATH=/opt/go
export PATH=$PATH:$GOPATH/bin:$GOROOT/bin

source /etc/profile
go version

安装keadm

wget https://github.com/kubeedge/kubeedge/releases/download/v1.5.0/keadm-v1.5.0-linux-amd64.tar.gz

tar zxvf keadm-v1.5.0-linux-amd64.tar.gz 
cd keadm-v1.5.0-linux-amd64/keadm/
cp keadm /usr/local/sbin

二、部署kubeedge

准备工作

1.mkdir /etc/kubeedge
2.mv kubeedge-v1.8.0-linux-amd64.tar.gz  /etc/kubeedge
3.mkdir /etc/kubeedge/crds/devices
  下载devices_v1alpha2_devicemodel.yaml  devices_v1alpha2_device.yaml 将其放入该文件夹下
4.mkdir /etc/kubeedge/crds/reliablesyncs
	下载cluster_objectsync_v1alpha1.yaml  objectsync_v1alpha1.yaml 将其放入该文件夹下
5.下载 cloudcore.service 放入  /etc/kubeedge

开始部署cloudcore

keadm init --advertise-address="ip地址" --kubeedge-version=1.8.0

标签:KubeEdge,etc,完美,部署,yum,kubeedge,docker,com,kubeadm
From: https://blog.51cto.com/u_13743985/8274052

相关文章

  • 【Microsoft Azure 的1024种玩法】七十四.五分钟在Azure Virtual Machines中快速部署
    【简介】ApacheMaven由Apache软件基金会所提供的一个软件项目管理及自动构建工具,Maven为开发者提供了一套完整的构建生命周期框架。开发团队几乎不用花多少时间就能够自动完成工程的基础构建配置,因为Maven使用了一个标准的目录结构和一个默认的构建生命周期,Maven能够在很短......
  • Sitecore 扩展CM部署
    相关文档:配置多个Sitecore实例实例结构:有两个Sitecore实例:Instance1和Instance2,分别管理各自的Content,在Publishing的时候调用SharedInstance(共享Sitecore实例)来作对应的Solr索引构建,最后相关的Scheduler也放在SharedInstance里。配置步骤SharedCM需要......
  • 【AntDesign】Docker部署
    docker部署是主流的部署方式,极大的方便了开发部署环境,保持了环境的统一,也是实现自动化部署的前提。1项目的目录结构dist:使用build打包命令,生成的打包目录npmrunbuild:打包项目命令docker:存放docker容器需要修改的配置目录,比如nginx配置Dockerfile:跟项......
  • 【AntDesign】Docker部署
    docker部署是主流的部署方式,极大的方便了开发部署环境,保持了环境的统一,也是实现自动化部署的前提。1项目的目录结构dist:使用build打包命令,生成的打包目录npmrunbuild:打包项目命令docker:存放docker容器需要修改的配置目录,比如nginx配置Dockerfile:跟......
  • linux 库依赖,开发和生产环境,部署问题
    在生产环境中测试发现程序无法运行,所以要分析一下./mentester:/lib/libtinfo.so6:nouersioninformationavailable(requiredby,/mentester)./mentester'/lib/libncursesso.b:nouersioninformationauailable(requiredby./mentester)memtesteruersion1.2.01......
  • Django 部署指南
    远程登录服务器sudosshroot@user_name#删除原来的ssh密钥命令ssh-keygen-f"/home/shimmer/.ssh/known_hosts"-R"117.72.9.46"延长服务器ssh超时自动断开时间,此处为30分钟#默认情况下,SSH配置文件位于/etc/ssh/sshd_config。ClientAliveInterval1800ClientAliveCountM......
  • sftp部署
    SFTP(SecureFileTransferProtocol):sftp为ssh自带的服务,无需额外安装软件,使用和配置很方便SFTP的优势主要有两点:1、不需要再配置个FTP服务端;2、SSH协议是安全传输,上传和下载是经过加密的,安全方面高于vsftp,由于传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低得多。但sft......
  • 蓝绿部署:实现无缝可靠的软件发布
    在快节奏的软件开发世界中,在不造成中断或停机的情况下向用户提供新功能和更新是一项至关重要的挑战。这就是蓝绿部署策略有用的地方。组织可以通过使用称为“蓝绿部署”的发布管理策略,以安全有效的方式推出其软件的新版本。在快节奏的软件开发世界中,组织努力快速可靠地部署新功能和......
  • 单节点flink部署
    单节点flink推荐作用于测试环境,最好不要使用到线上环境一、环境配置:1、安装Java至少1.8版本https://www.cnblogs.com/xiaoyou2018/p/9945272.html2、系统环境变量vi-b/etc/profileexportFLINK_HOME=/opt/flink-1.18.0exportPATH=$PATH:$FLINK_HOME/bin 二、安装f......
  • linux单机部署minio
    1下载安装包centos环境为例wgethttps://dl.min.io/server/minio/release/linux-amd64/minio2给minio赋权chmod+xminio3设置用户名、密码/etc/profile文件中配置环境变量exportMINIO_ACCESS_KEY=adminexportMINIO_SECRET_KEY=admin1234564创建存储目录及日......