k8s环境使用Operator部署Seaweedfs集群(一)

发布于:2025-08-17 ⋅ 阅读:(11) ⋅ 点赞:(0)

#作者:闫乾苓


SeaweedFS Operator是一个Kubernetes Operator,用于自动化部署和管理SeaweedFS集群 README.md:6-8 。部署分为两个阶段:首先部署Operator本身,然后创建SeaweedFS集群资源。

4.1 前置条件

  1. 运行中的Kubernetes集群(v1.19+)
  2. 配置好的kubectl命令行工具
  3. 安装Kustomize或Helm 3

Helm安装步骤参考:

~# curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
~# helm version

4.2 部署seaweedfs-operator

克隆seaweedfs-operator仓库

[root@master ~]# git clone https://githubfast.com/seaweedfs/seaweedfs-operator --depth=1
正克隆到 'seaweedfs-operator'...
remote: Enumerating objects: 136, done.
remote: Counting objects: 100% (136/136), done.
remote: Compressing objects: 100% (112/112), done.
remote: Total 136 (delta 20), reused 65 (delta 14), pack-reused 0 (from 0)
接收对象中: 100% (136/136), 126.64 KiB | 201.00 KiB/s, 完成.
处理 delta 中: 100% (20/20), 完成.
[root@master ~]# ll
[root@master seaweedfs-operator]# docker login -u admin 192.168.61.3
Password: 
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
 
Login Succeeded

4.3 准备operator镜像

手动下载镜像,并复制到k8s相关node节点,并导入。

docker pull registry.k8s.io/ingress-nginx/kube-webhook-certgen:v20231011-8b53cabe0
docker pull chrislusf/seaweedfs-operator:1.0.2

helm部署seaweedfs-operator,如果因镜像拉取失败等原因导致helm报错,如:

[root@master seaweedfs-operator]# helm install seaweedfs-operator ./deploy/helm
Error: INSTALLATION FAILED: failed post-install: 1 error occurred:
        * timed out waiting for the condition

待镜像手动拉取并导入到k8s相关节点后,helm 使用—replace参数重新部署。

[root@master seaweedfs-operator]# helm install --replace seaweedfs-operator ./deploy/helm
NAME: seaweedfs-operator
LAST DEPLOYED: Thu Jul  3 13:59:22 2025
NAMESPACE: default
STATUS: deployed
REVISION: 2
TEST SUITE: None

seaweedfs-operator 运行状态正常

[root@master ~]# kubectl get pods --all-namespaces -o wide
NAMESPACE     NAME                                     READY   STATUS    RESTARTS      AGE   IP               NODE     NOMINATED NODE   READINESS GATES
default       seaweedfs-operator-5c44d464cc-7bl8g      1/1     Running   0             11m   10.244.166.143   node1    <none>           <none>
kube-system   calico-kube-controllers-d569cccf-rfxkk   1/1     Running   2 (15h ago)   15h   10.244.135.12    node3    <none>           <none>

网站公告

今日签到

点亮在社区的每一天
去签到