轻量级云原生体验:在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的组合为开发者提供了一个理想的云原生学习和发展平台。无论是个人项目还是小型业务,都能获得企业级的容器编排能力。

相关推荐
B0URNE2 小时前
【Unity基础详解】(7)Unity核心:动画系统
unity·游戏引擎
@小码农2 小时前
2025年北京海淀区中小学生信息学竞赛第一赛段试题(附答案)
人工智能·python·算法·蓝桥杯
程序猿追2 小时前
异腾910B NPU实战:vLLM模型深度测评与部署指南
运维·服务器·人工智能·机器学习·架构
我的golang之路果然有问题2 小时前
mac M系列芯片 unity 安装会遇到的错误以及解决
经验分享·学习·macos·unity·游戏引擎
York·Zhang2 小时前
Ollama:在本地运行大语言模型的利器
人工智能·语言模型·自然语言处理·ollama
reesn2 小时前
nanochat大语言模型讲解一
人工智能·语言模型·自然语言处理
张较瘦_3 小时前
[论文阅读] AI + 软件工程 | 3340个Python ML项目实证:PyQu工具+61种代码变更,精准提升软件质量!
论文阅读·人工智能·软件工程
m0_748248023 小时前
C++20 协程:在 AI 推理引擎中的深度应用
java·c++·人工智能·c++20
leafff1233 小时前
一文了解-大语言模型训练 vs 推理:硬件算力需求数据对比
人工智能·语言模型·自然语言处理