目录

k3s典型场景 1

K3s架构 3

K3s安装 3

实验环境规划 3

在所有节点初始化 4

在所有节点安装containerd 5

执行k3s-install.sh脚本 5

验证安装是否成功 6

k3s集群添加work 节点 6

验证work 节点是否加入集群 6


k3s典型场景


《福布斯》技术委员会的12位成员研究了一些企业的用例,在这些用例中,都使用了边缘计算:


应用一:改进医疗设备性能和数据管理

在医疗场景下,边缘计算主要帮助医疗保健体系的IT基础架构,具体来说,是防止医疗设备管理的应用程序发生延迟。在边缘计算的支持下,无需构建集中的数据中心,可对关键数据进行本地化,在安全性、响应速度和有效性上有更佳表现。

应用二:本地零售的实时数据分析

边缘计算的主要目的,是让运算尽可能接近数据源。在零售场景中,以往企业都是将各分支的数据汇总到中心位置进行分析,再进行决策和行动。而通过边缘计算,零售店铺可以在本地就进行数据处理和优化,这样组织的行动反馈就能更快更及时。

应用三:消费者数据隐私

处理高度敏感的消费者数据的公司发现,由于数据泄漏成本高昂,云计算很危险。因此,许多这类公司正在将边缘计算用于处理消费者数据,因为它为他们提供了更多的安全和控制选择。这可能会使企业工作流程复杂化,但它可以带来好处,特别是在医疗数据公司中。

应用四:物联网

物联网是企业为获得更好的数据、客户体验、现场营销和更智能的流程而实施的智能的重大转变。边缘计算使网络的运行水平能够为物联网提供高性能。接近实时的速度意味着用户体验可以非常出色,并且可以为企业带来更好、更有效的运营。

应用五:视频监控和分析

视频监控已经部署在边缘,以及视频分析。视频产生的数据是所有其他来源数据总和的10倍。这是一个很好的例子,说明您需要在数据中心之外开始处理的数据类型,以最大限度地减少通过网络移动和存储的数据量。此外,它还允许企业对可操作的数据做出实时决策

应用六:工业操作

工厂车间处理等工业操作需要海量数据的快速响应。这些数据中的大部分被丢弃,但能够通过检测边缘数据中的异常来使工厂操作员能够及时对工厂车间的问题做出反应。这样可以间接减少停机从而提高生产率。

应用七:智能建筑

随着我们的会议室和设施变得越来越智能化,将会有一种把所有东西都放到云端的诱惑。考虑到安全性和稳定性,在站点上托管数据将会有一些好处。我们已经看到了基于云的照明在网络中断时可能会令人沮丧的问题,而工作场所的可靠性甚至更重要。

应用八:无人驾驶汽车

汽车行业已投入数十亿资金开发边缘计算技术。为了安全运行,这些车辆需要收集和分析有关其周围环境,方向和天气状况的大量数据,以及与道路上的其他车辆进行通信。

应用九:机顶盒

Edge AI 可以在机顶盒设备上运行一个低占用空间的智能引擎,可以实时分析数据,对AI 进行编码,在本地解决问题并向上游服务器提供智能反馈。与基本自动化 (边缘机器人流程自动化机器人)相结合, AI 引擎可以自我修复并在本地解决许多问题。


K3s架构

k3s_物联网

k3s server 节点是运行 k3s server 命令的机器(裸机或者虚拟机),而 k3s Agent 节点是运行 k3s-agent 命令的机器。

单点架构只有一个控制节点(在K3s 里叫做server node,相当于 K8s 的master node),而且 K3s 的数据存储使用sqlite 并内置在了控制节点上,在这种配置中,每个 agent 节点都注册到同一个server节点。K3s 用户可以通过调用 server 节点上的 K3s API 来操作 Kubernetes 资源。

K3s安装

安装 k3s 服务的操作系统要求:

Linux 的内核版本在 3.10 以上

每台服务器上至少要有 512MB 的内存空间

硬盘中可用的存储空间必须大于 500 MB


实验环境规划

操作系统:centos7.8

配置: 4Gib 内存/6vCPU/100G 硬盘

网络:NAT

开启虚拟机的虚拟化:

k3s_linux_02


K3s集群角色

IP

安装的组件

Server节点

10.119.10.180

K3s Server

Agent节点

10.119.10.181

K3s Agent

在所有节点初始化

关闭防火墙

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

根据规划设置主机名

hostnamectl set-hostname k3s-server
hostnamectl set-hostname k3s-agent

在master添加hosts

cat >> /etc/hosts << EOF
10.119.10.180 k3s-server
10.119.10.181 k3s-agent
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

时间同步

yum install ntpdate -y
ntpdate time.windows.com

安装epelase

yum -y install epel-release

在所有节点安装containerd

yum install containerd –y
systemctl start containerd
systemctl enable containerd

#

执行k3s-install.sh脚本

国内用户可以用如下方法:安装速度会更快

在10.119.10.180(k3s-server)上操作:

curl -sfL http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -

看到如下,说明 k3s 已经启动了:

k3s_物联网_03

验证安装是否成功

k3s kubectl get nodes 
k3s kubectl get pods -n kube-system

显示如下,说明安装成功:

k3s_物联网_04

部署完成之后,上面所有进程都由k3s这个service来创建管理,可使用如下命令查看

systemctl status k3s

在k3s集群添加work 节点

我们想要添加一对worker节点。

在这些节点上安装 K3s,我们需要一个 join tokenJoin token 存在于 master 节点的文件系统上。让我们复制并将它保存在某个地方,稍后我们可以获取它:

获取到一串token:

K102fe14154b4df8f16c7783a212ef2cd1c848bd7a6c432e1cfccc5a027815573e5::server:a5cc221a92e904b4118d67a17e5454bf

10.119.10.181上执行如下命令,把work节点加入k3s:

curl -sfL http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn K3S_URL=https://10.119.10.180:6443 K3S_TOKEN=K102fe14154b4df8f16c7783a212ef2cd1c848bd7a6c432e1cfccc5a027815573e5::server:a5cc221a92e904b4118d67a17e5454bf sh -

验证work 节点是否加入集群

10.119.10.180上操作

显示如下,说明工作节点成功加入 k3s 集群:

k3s_物联网_05