搭建kubeedge集群,在master节点部署边缘节点Node上的Nginx应用

1.环境

kubeedge集群搭建,阿里云服务器为Master节点,边缘节点node为虚拟机。环境搭建可以参考我的这几篇博客
云端环境搭建
虚拟机环境边缘节点搭建
在控制面板查询集群的状态

kubectl get nodes

各个节点都处于ready状态
在这里插入图片描述
说明集群状态正常,可用

2.配置文件

部署文件nginx-deployment.yaml设计

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      nodeSelector:
        node-type: node1
      containers:
      - name: nginx
        image: nginx
        ports:
        - containerPort: 80
          hostPort: 8080

其中通过nodeSelector选择应用部署的节点,通过label进行匹配,可以在master节点通过以下命令给node1节点打标签

kubectl label nodes node1 node-type=node1

在master节点通过以下命令部署应用

kubectl apply -f nginx-deployment.yaml

结果如下:
在这里插入图片描述
可以看到deployment已经创建。同时通过

kubectl get pods

命令可以看到边缘节点的应用正在创建中,等待一会儿应用即可创建完成在这里插入图片描述
pod处于running状态中,通过以下命令可以查看具体的调度情况

kubectl describe pod nginx-deployment-69c8998b5c-599x8(pod ID)

状态如下
在这里插入图片描述
应用成功调度到node1节点,到Node节点查看具体的运行情况,如下图
在这里插入图片描述
边缘节点node1中的nginx应用处于运行中

3.运行结果

在这里插入图片描述
配置文件中指定了hostPort 8080,在浏览器打开节点ip:8080,可以看到nginx顺利运行

4.小节

通过搭建kubeedge集群,实现了在云端对边缘节点的应用部署。应用搭建的核心在于yaml文件的编写,此文章是自己的一个学习记录,欢迎大家批评指正。

更多推荐