边缘计算k8s集群SuperEdge初体验
source link: http://www.cnblogs.com/liguobao/p/14311019.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
前言
手上一直都有一堆的学生主机,各种各样渠道途径拿来的机器。
一直管理里面都比较蛋疼,甚至也不太记得住它们在哪是什么IP,管理起来很是头疼。
有阵子空闲的时候想折腾了一下边缘计算集群方案。
希望能把它们管理起来,做一个通用的计算方案。
问过dalao,给我推荐k3s。
K3s | 轻量级Kubernetes | 物联网及边缘计算K8S解决方案 | Rancher
www.rancher.cn
道理上是挺好的,不过....
看到Rancher是又惊又喜啊。
17年在http://ruff.io搞事的时候,集群方案就用的rancher,好用是好用,事多是真事多。
体验了一下,节点组装成集群的时候要做的事情有点多,而且还有自己管理master,用了一下就放弃了。
后来在某鱼
@白小鱼
的某次交流中,也看到kubeEdge这一套方案。
kubeedge.io
本着玩死机器不偿命的主题,肯定是拥抱它啊。
然后....
又浪费了我一个周末。
评价:一个照着官网文档跑不好的东西,不值得我花时间。jpg
不许gang,再问就是我菜。
PS:后来看到是华为捐出来的,就更加不想折腾了。
再后来,看到一直在用的某云出了边缘计算集群公测。
好家伙,master节点不用我给,直接加自己的机器到上面作为node节点。
完整的k8s集群方案,和平时用的普通集群基本没有区别。
完美,这就是我要的方案。
集群配置基本就是页面上点点点就完事了。
kubectl的配置看下官方或者某云教程都OK。
https://kubernetes.io/docs/tasks/tools/install-kubectl/
集群访问凭证也可以在这边直接下载到本地后设置。
添加节点的方式比较无脑。
edgectl下载到本地之后,执行一下./edgectl --help看看
root@nucubuntu:~# ./edgectl --help
Usage:
edgectl command [flags]
Available Commands:
check Check the edge node if to be add to clusters
install Install components to edge node
clear Clear edge node and recovery as usual
Flags:
-h, --help Help for edgectl
OK。
直接安装。
pc-name 取一个自己喜欢的名字,小写+横线+数字组合都Ok,不能用下划线
./edgectl install -n pc-name
等它跑完之后,成功看到Successfull之类的就完事了。
安装完之后,在某云集群的节点管理就能看到这台机器了。
也可以直接通过kubectl查看机器信息。
➜ ~ kc get node
NAME STATUS ROLES AGE VERSION
23d v1.18.2
23d v1.18.2
23d v1.18.2
➜ ~ kc describe node nuc-vm-ubuntu
Name: nuc-vm-ubuntu
Labels: beta.kubernetes.io/arch=amd64
beta.kubernetes.io/os=linux
kubernetes.io/arch=amd64
kubernetes.io/hostname=nuc-vm-ubuntu
kubernetes.io/os=linux
region=cn
Annotations: flannel.alpha.coreos.com/backend-data: {"VtepMAC":"72:83:61:5b:7c:b7"}
flannel.alpha.coreos.com/backend-type: vxlan
flannel.alpha.coreos.com/kube-subnet-manager: true
flannel.alpha.coreos.com/public-ip: 10.0.2.15
node.alpha.kubernetes.io/ttl: 0
nodeunhealth: yes
volumes.kubernetes.io/controller-managed-attach-detach: true
CreationTimestamp: Tue, 29 Dec 2020 11:00:29 +0800
Unschedulable: false
Lease:
HolderIdentity: nuc-vm-ubuntu
RenewTime: Thu, 21 Jan 2021 22:45:23 +0800
Conditions:
Type Status LastHeartbeatTime LastTransitionTime Reason Message
NetworkUnavailable False Mon, 18 Jan 2021 10:05:43 +0800 Mon, 18 Jan 2021 10:05:43 +0800 FlannelIsUp Flannel is running on this node
MemoryPressure False Thu, 21 Jan 2021 22:42:47 +0800 Wed, 20 Jan 2021 17:07:46 +0800 KubeletHasSufficientMemory kubelet has sufficient memory available
DiskPressure False Thu, 21 Jan 2021 22:42:47 +0800 Wed, 20 Jan 2021 17:07:46 +0800 KubeletHasNoDiskPressure kubelet has no disk pressure
PIDPressure False Thu, 21 Jan 2021 22:42:47 +0800 Wed, 20 Jan 2021 17:07:46 +0800 KubeletHasSufficientPID kubelet has sufficient PID available
Ready True Thu, 21 Jan 2021 22:42:47 +0800 Wed, 20 Jan 2021 17:07:46 +0800 KubeletReady kubelet is posting ready status. AppArmor enabled
Addresses:
InternalIP: 10.0.2.15
Hostname: nuc-vm-ubuntu
Capacity:
cpu: 2
ephemeral-storage: 19475088Ki
hugepages-2Mi: 0
memory: 8054976Ki
pods: 127
Allocatable:
cpu: 1940m
ephemeral-storage: 17948241072
hugepages-2Mi: 0
memory: 7788736Ki
pods: 127
System Info:
Machine ID: 8056248ceff544a3972666b79b1f3fb6
System UUID: 0d728d29-d62c-e948-a3b9-01ee8625bfe3
Boot ID: 7bddb25d-d02c-4341-9db4-ef3840795e3d
Kernel Version: 5.4.0-62-generic
OS Image: Ubuntu 20.04.1 LTS
Operating System: linux
Architecture: amd64
Container Runtime Version: docker://18.6.3
Kubelet Version: v1.18.2
Kube-Proxy Version: v1.18.2
PodCIDR: 172.16.1.0/24
PodCIDRs: 172.16.1.0/24
Non-terminated Pods: (18 in total)
Namespace Name CPU Requests CPU Limits Memory Requests Memory Limits AGE
default crawl-douban-edge-1611231000-mmbmk 10m (0%) 200m (10%) 64Mi (0%) 256Mi (3%) 155m
kube-system application-grid-wrapper-dqrgd 10m (0%) 50m (2%) 20Mi (0%) 100Mi (1%) 23d
kube-system coredns-lf2fr 50m (2%) 50m (2%) 70Mi (0%) 170Mi (2%) 6d22h
kube-system edge-health-cvzg4 10m (0%) 50m (2%) 20Mi (0%) 100Mi (1%) 23d
kube-system flannel-7zw8b 50m (2%) 100m (5%) 50Mi (0%) 200Mi (2%) 23d
kube-system kube-proxy-gnmpv 10m (0%) 50m (2%) 50Mi (0%) 100Mi (1%) 23d
kube-system proxy-edge-4lkrk 0 (0%) 0 (0%) 0 (0%) 0 (0%) 23d
Allocated resources:
(Total limits may be over 100 percent, i.e., overcommitted.)
Resource Requests Limits
cpu 240m (12%) 2500m (128%)
memory 1490Mi (19%) 5790Mi (76%)
ephemeral-storage 0 (0%) 0 (0%)
hugepages-2Mi 0 (0%) 0 (0%)
Events:
➜ ~ kc top node
NAME CPU(cores) CPU% MEMORY(bytes) MEMORY%
aliyun-changan 29m 3% 679Mi 43%
aliyun-huang 48m 5% 1137Mi 65%
nuc-vm-ubuntu 509m 26% 1869Mi 24%
最后基本像正常使用一个k8s集群就完事了。
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK