【K3s 系列 01】从零搭建 K3s

一、获取系统基础硬件信息

#基础架构 (输出参考:如果是 x86_64 或 aarch64,即可完美支持。)
pig@vm-debian-13:~$ uname -m
x86_64

#处理器 (K3s 单节点极其轻量,最低仅需 1核 CPU 和 512MB 内存(推荐 1核1G 以上)。)
pig@vm-debian-13:~$ lscpu | grep -E "Model name|CPU\(s\):"
CPU(s):                                  2
Model name:                              13th Gen Intel(R) Core(TM) i5-13400
NUMA node0 CPU(s):                       0,1

#内存大小
pig@vm-debian-13:~$ free -m
               total        used        free      shared  buff/cache   available
Mem:            3883         886        1917           0        1334        2997
Swap:              0           0   

安装脚本

官方的脚本太慢,国内用户使用这个脚本进行加速

$ curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -

检查k3s服务状态

$ systemctl status k3s

查看集群节点状态

$ sudo kubectl get node

查看集群中运行的pod

$ sudo kubectl get pods -A

K3s 官方经典架构与安装文档

二、配置kubectl (普通用户)

普通用户执行命令 kubectl get nodes 提示没有权限

pig@vm-debian:~$ mkdir -p ~/.kube   #创建 .kube 目录
pig@vm-debian:~$ sudo cp /etc/rancher/k3s/k3s.yaml  ~/.kube/config #复制 K3s 默认配置
pig@vm-debian:~$ sudo chown $USER:$USER ~/.kube/config #修改文件所属用户
pig@vm-debian:~$ echo 'export KUBECONFIG=$HOME/.kube/config' >> ~/.bashrc #配置环境变量
source ~/.bashrc
pig@vm-debian:~$ kubectl get nodes #验证配置
NAME           STATUS   ROLES           AGE    VERSION
vm-debian-13   Ready    control-plane   175m   v1.35.5+k3s1

如上,说明当前普通用户已经可以正常访问 Kubernetes API。

运维思考

生产环境中,不建议长期使用root用户进行Kubernetes管理。

推荐使用普通用户,通过 sudo 执行系统级操作(如管理服务、修改配置),而将 kubectl 配置为普通用户直接使用。

这样既符合Linux最小权限原则,也更符合企业运维的实际工作方式。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注