轻量级云原生体验:在OpenEuler 25.09上快速部署单节点K3s

作为面向数字基础设施的开源操作系统,OpenEuler在云原生领域表现出色。本文将通过简单实用的单机部署,体验OpenEuler 25.09在云原生场景下的核心能力。

一、环境准备与系统检查

从官网下载openEuler-25.09-x86_64-dvd.iso,在VMware中创建虚拟机,配置为2核CPU、4GB内存、40GB磁盘空间。

基础系统检查:

复制代码
# 检查系统版本
cat /etc/os-release

# 查看内核版本
uname -r

# 检查IP地址
ip addr show

二、一键安装****K3s 单节点集群

K3s是轻量级Kubernetes,特别适合单机环境。

安装 K3s

复制代码
# 使用国内镜像源快速安装
curl -sfL http://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -

# 检查安装状态
systemctl status k3s

# 设置kubectl命令别名
echo "alias k='k3s kubectl'" >> ~/.bashrc
source ~/.bashrc

# 验证集群
kubectl get nodes
kubectl get pods -A

三、部署简单****Web 应用

部署一个Nginx应用来验证集群功能。

创建部署文件:

复制代码
Bash
cat > nginx-app.yaml << EOF
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:alpine
        ports:
        - containerPort: 80
        resources:
          requests:
            memory: "64Mi"
            cpu: "50m"
          limits:
            memory: "128Mi"
            cpu: "100m"

---
apiVersion: v1
kind: Service
metadata:
  name: nginx-service
spec:
  selector:
    app: nginx
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
      nodePort: 30080
  type: NodePort
EOF

部署应用:

复制代码
# 应用配置
kubectl apply -f nginx-app.yaml

# 检查部署状态
kubectl get deployments
kubectl get pods -o wide
kubectl get services

四、验证应用访问

测试应用访问:

复制代码
Bash
# 移动到web目录
cd ~/web-demo

# 启动Python Web服务器
python3 web_server.py

测试访问

打开新的终端窗口测试:

复制代码
获取IP地址IP_ADDR=$(hostname -I | awk '{print $1}')
# 测试主页访问curl http://$IP_ADDR:8080

# 测试API接口
curl http://$IP_ADDR:8080/api/status

# 测试系统信息API
curl http://$IP_ADDR:8080/api/system

# 测试静态页面
curl http://$IP_ADDR:8080/system/
curl http://$IP_ADDR:8080/demo/

六、简单监控检查

检查资源使用情况:

复制代码
# 查看节点资源
kubectl describe nodes

# 查看Pod资源请求
kubectl describe pods -l app=nginx

# 系统资源概览
free -h
df -h

安装简单监控:

复制代码
# 安装htop进行资源监控
dnf install -y htop

# 运行监控
htop

七、清理资源(可选)

删除测试应用:

复制代码
Bash
# 删除部署的应用
kubectl delete -f nginx-app.yaml

# 验证清理
kubectl get pods
kubectl get services

体验总结

通过这个简单的实战演示,我们可以看到:

部署效率:

K3s安装:约1分钟完成

应用部署:约30秒完成

扩展操作:即时生效

资源使用:

基础K3s:内存占用约500MB

2个Nginx Pod:内存占用约40MB

系统总占用:约1GB内存

核心优势:

安装简单:一条命令完成K3s部署

资源友好:轻量级设计,适合单机环境

功能完整:具备Kubernetes核心功能

稳定可靠:应用运行稳定,扩展灵活

性能表现:

Pod启动时间:2-3秒

服务访问延迟:<20ms

滚动更新:无缝切换

OpenEuler 25.09与K3s的组合为开发者提供了一个理想的云原生学习和发展平台。无论是个人项目还是小型业务,都能获得企业级的容器编排能力。

相关推荐
Coding茶水间2 小时前
基于深度学习的安全帽检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
图像处理·人工智能·深度学习·yolo·目标检测·计算机视觉
weixin79893765432...3 小时前
Vue + Express + DeepSeek 实现一个简单的对话式 AI 应用
vue.js·人工智能·express
nju_spy3 小时前
ToT与ReAct:突破大模型推理能力瓶颈
人工智能·大模型·大模型推理·tot思维树·react推理行动·人工智能决策·ai推理引擎
AI-智能3 小时前
别啃文档了!3 分钟带小白跑完 Dify 全链路:从 0 到第一个 AI 工作流
人工智能·python·自然语言处理·llm·embedding·agent·rag
y***86693 小时前
C机器学习.NET生态库应用
人工智能·机器学习
deng12044 小时前
基于LeNet-5的图像分类小结
人工智能·分类·数据挖掘
ChoSeitaku4 小时前
线代强化NO20|矩阵的相似与相似对角化|综合运用
线性代数·机器学习·矩阵
OpenAnolis小助手4 小时前
直播预告:LLM for AIOPS,是泡沫还是银弹? |《AI 进化论》第六期
人工智能
我一身正气怎能输4 小时前
游戏大厂A*寻路优化秘籍:流畅不卡顿
人工智能·游戏
二川bro5 小时前
AutoML自动化机器学习:Python实战指南
python·机器学习·自动化