kubeadm搭建kubernetes集群(centos7)

一. 装centos7及初始化

  1. 装centos7虚拟机,内存2

https://blog.csdn.net/tsundere_x/article/details/104263100

  1. 设置静态ip

https://blog.csdn.net/qq_43473473/article/details/103115877?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param

# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.138.132
NETMASK=255.255.255.0
GATEWAY=192.168.138.2
DNS1=192.168.138.2
$ service network restart
  1. 免密登录
# vim /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
PasswordAuthentication yes
# master免密登录worker
$ ssh-keygen -t rsa
$ ssh-copy-id -i ~/.ssh/id_rsa.pub test@192.168.43.131

二. 装k8s master

  1. 修改hostname
$ hostnamectl set-hostname k8s-2
$ systemctl restart network
  1. vim /etc/hosts添加信息
# vim /etc/hosts
192.168.138.131 k8s-1
192.168.138.132 k8s-2

3.关闭防火枪,并设置开机关闭;关闭selinux

$ systemctl stop firewalld
$ systemctl disable firewalld
$ sed -ie 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
$ setenforce 0
  1. 开启系统内核转发模块 (比如 ip_forward, bridge)
# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-arptables = 1
$ sysctl  -p
  1. 关闭swap,永久关闭swap
swapoff -a
# vim /etc/fstab 
把swap那行注释掉
  1. 安装docker-ce
# step 1: 安装必要的一些系统工具
$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息 (/etc/yum.repo.d)
$ sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3: 更新并安装Docker-CE
$ sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
$ sudo service docker start
# 添加阿里云加速源
# vim /etc/docker/daemon.json
{
  "registry-mirrors": ["https://ubggm2kc.mirror.aliyuncs.com"]
}
$ systemctl daemon-reload
$ systemctl restart docker
$ systemctl enable docker
  1. 添加源 google-kubernetes.repo
# vim /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

8.安装kubeadm kubectl kubelet

$ yum -y install kubeadm-1.17.0 kubectl-1.17.0 kubelet-1.17.0
$ systemctl restart network
$ systemctl enable kubelet
$ systemctl restart kubelet
//启动网络服务
$ cat /proc/sys/net/bridge/bridge-nf-call-iptables 
$ cat /proc/sys/net/bridge/bridge-nf-call-ip6tables 

9.解压镜像9个(1-9 master和worker节点操作都一样)

$ kubeadm config images list --kubernetes-version=v1.17.0
$ docker load -i kube--controller-manager.tar

10.kubeadm安装k8s,设置pod/service虚拟ip范围(kubeadm初始化,仅主节点)

kubeadm init  --pod-network-cidr=10.244.0.0/17 --service-cidr=10.96.0.0/12 --ignore-preflight-errors=Swap  --kubernetes-version=v1.17.0

安装成功返回下面字段

Your Kubernetes control-plane has initialized successfully!

To start using your cluster, you need to run the following as a regular user:

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

You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
  https://kubernetes.io/docs/concepts/cluster-administration/addons/

Then you can join any number of worker nodes by running the following on each as root:

kubeadm join 192.168.138.131:6443 --token 96r2uy.d3i3ir4iekbn4ndl \
    --discovery-token-ca-cert-hash sha256:fa8bd43d7aba4998b0930c8c0f59207e1346a87d91c763b2f25b775df03127dd

join 192.168.138.131:6443 --token 3cueu8.ctr9ta2ltcvrhruk --discovery-token-ca-cert-hash sha256:fa8bd43d7aba4998b0930c8c0f59207e1346a87d91c763b2f25b775df03127dd
# 执行下面命令
$ mkdir -p $HOME/.kube
$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
$ sudo chown $(id -u):$(id -g) $HOME/.kube/config
$ kubectl apply -f kube-flannel.yaml  
(在1.17.0文件里)
(或者https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml)
  1. worker节点加如kubernetes集群
$ join 192.168.138.131:6443 --token 3cueu8.ctr9ta2ltcvrhruk --discovery-token-ca-cert-hash sha256:fa8bd43d7aba4998b0930c8c0f59207e1346a87d91c763b2f25b775df03127dd
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
图像识别技术在病虫害检测中的应用是一个快速发展的领域,它结合了计算机视觉和机器学习算法来自动识别和分类植物上的病虫害。以下是这一技术的一些关键步骤和组成部分: 1. **数据收集**:首先需要收集大量的植物图像数据,这些数据包括健康植物的图像以及受不同病虫害影响的植物图像。 2. **图像预处理**:对收集到的图像进行处理,以提高后续分析的准确性。这可能包括调整亮度、对比度、去噪、裁剪、缩放等。 3. **特征提取**:从图像中提取有助于识别病虫害的特征。这些特征可能包括颜色、纹理、形状、边缘等。 4. **模型训练**:使用机器学习算法(如支持向量机、随机森林、卷积神经网络等)来训练模型。训练过程中,算法会学习如何根据提取的特征来识别不同的病虫害。 5. **模型验证和测试**:在独立的测试集上验证模型的性能,以确保其准确性和泛化能力。 6. **部署和应用**:将训练好的模型部署到实际的病虫害检测系统中,可以是移动应用、网页服务或集成到智能农业设备中。 7. **实时监测**:在实际应用中,系统可以实时接收植物图像,并快速给出病虫害的检测结果。 8. **持续学习**:随着时间的推移,系统可以不断学习新的病虫害样本,以提高其识别能力。 9. **用户界面**:为了方便用户使用,通常会有一个用户友好的界面,显示检测结果,并提供进一步的指导或建议。 这项技术的优势在于它可以快速、准确地识别出病虫害,甚至在早期阶段就能发现问题,从而及时采取措施。此外,它还可以减少对化学农药的依赖,支持可持续农业发展。随着技术的不断进步,图像识别在病虫害检测中的应用将越来越广泛。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值