Rancher 管理集群与命令行管理集群的具体操作步骤,并且分别展示如何安装 MySQL


一、集群管理步骤对比

1. Rancher 管理集群

  1. 部署 Rancher

    • 在已有的 Kubernetes 集群中运行 Rancher(用 helm 或 docker run 启动 Rancher 容器)。
    • 访问 Rancher Web 界面(默认 443 端口),设置管理员账号。
  2. 导入或新建集群

    • 可选择导入已有的 Kubernetes 集群(复制 kubectl apply 脚本到目标集群执行)。
    • 或者直接通过 Rancher UI 创建新集群(支持 RKE、RKE2、k3s 等)。
  3. 集群管理

    • 在 Rancher UI 中查看节点状态、命名空间、工作负载。
    • 配置用户与角色(RBAC)、资源配额、项目/命名空间划分。
    • 集中管理多个集群。

2. 命令行管理集群

  1. 安装 kubectl/helm

    • 本地或跳板机配置 kubectl,下载 kubeconfig 文件。
    • 安装 helm 用于应用部署。
  2. 集群接入

    • 设置 kubectl config use-context 切换集群。
    • 使用 kubectl get nodes/pods 验证集群可用。
  3. 集群管理

    • 创建命名空间:kubectl create ns dev
    • 配置 RBAC:kubectl apply -f role.yaml
    • 管理资源(Pod、Deployment、Service、Ingress 等)全部通过 YAML + kubectl 执行。

二、MySQL 安装步骤对比

1. Rancher 中安装 MySQL

Rancher 提供 应用市场 (App Catalog/Helm Charts),可直接在 Web 界面点击安装。

步骤:

  1. 登录 Rancher → 选择集群 → 进入 Apps & Marketplace

  2. 搜索 mysql

  3. 选择官方 Helm Chart(如 Bitnami/mysql)。

  4. 填写参数:

    • 数据库 root 密码
    • 默认数据库名
    • 持久化存储 PVC 大小
    • Service 类型(ClusterIP/NodePort)
  5. 点击安装,Rancher 自动生成 Deployment、Service、PVC。

  6. 通过 kubectl get svc -n <namespace> 查看 MySQL 的访问地址。


2. 命令行安装 MySQL

通过 Helm 或 YAML 手动部署。

方法 A:使用 Helm

bash 复制代码
# 添加 Bitnami 仓库
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update

# 创建命名空间
kubectl create ns mysql

# 安装 MySQL
helm install my-mysql bitnami/mysql \
  --namespace mysql \
  --set auth.rootPassword=admin123 \
  --set auth.database=eamx \
  --set primary.persistence.size=10Gi

检查:

bash 复制代码
kubectl get pods -n mysql
kubectl get svc -n mysql

方法 B:使用 YAML 清单

yaml 复制代码
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: mysql-pvc
  namespace: mysql
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 10Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: mysql
  namespace: mysql
spec:
  replicas: 1
  selector:
    matchLabels:
      app: mysql
  template:
    metadata:
      labels:
        app: mysql
    spec:
      containers:
        - name: mysql
          image: mysql:8.0
          env:
            - name: MYSQL_ROOT_PASSWORD
              value: admin123
            - name: MYSQL_DATABASE
              value: eamx
          ports:
            - containerPort: 3306
          volumeMounts:
            - name: mysql-storage
              mountPath: /var/lib/mysql
      volumes:
        - name: mysql-storage
          persistentVolumeClaim:
            claimName: mysql-pvc
---
apiVersion: v1
kind: Service
metadata:
  name: mysql
  namespace: mysql
spec:
  type: ClusterIP
  ports:
    - port: 3306
  selector:
    app: mysql

应用:

bash 复制代码
kubectl apply -f mysql-deploy.yaml

三、对比总结

项目 Rancher 命令行
集群接入 UI 导入/创建集群 kubectl config 配置
权限管理 界面化 RBAC、团队协作 YAML 文件定义 Role/Binding
MySQL 部署 Marketplace → 一键安装 → 填写参数 Helm/YAML 手动安装
适合人群 运维、测试、非 K8s 专家 DevOps、K8s 专家、CI/CD 脚本
优点 可视化、易用、多集群集中管理 灵活、可自动化、适合生产流水线
缺点 灵活性略低,依赖 Rancher 平台 学习成本高、操作不直观

相关推荐
姚远Oracle ACE2 小时前
解读Oracle AWR报告:Global Cache and Enqueue Services - Workload Characteristics
数据库·oracle
流星白龙2 小时前
【Qt】7.信号和槽_connect函数用法(2)
java·数据库·qt
Zzz 小生4 小时前
Claude Code学习笔记(四)-助你快速搭建首个Python项目
大数据·数据库·elasticsearch
nongcunqq7 小时前
abap 操作 excel
java·数据库·excel
rain bye bye8 小时前
calibre LVS 跑不起来 就将setup 的LVS Option connect下的 connect all nets by name 打开。
服务器·数据库·lvs
冻咸鱼8 小时前
MySQL的配置
mysql·配置
阿里云大数据AI技术9 小时前
云栖实录|MaxCompute全新升级:AI时代的原生数据仓库
大数据·数据库·云原生
不剪发的Tony老师10 小时前
Valentina Studio:一款跨平台的数据库管理工具
数据库·sql
weixin_3077791310 小时前
在 Microsoft Azure 上部署 ClickHouse 数据仓库:托管服务与自行部署的全面指南
开发语言·数据库·数据仓库·云计算·azure
六元七角八分10 小时前
pom.xml
xml·数据库