前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >外包精通--0成本学习IT运维--MinIO对象存储单机部署至K8s

外包精通--0成本学习IT运维--MinIO对象存储单机部署至K8s

原创
作者头像
Godev
修改2024-04-26 19:23:38
2820
修改2024-04-26 19:23:38
举报
文章被收录于专栏:GodevGodev

原理及架构网上有很多总结很好的,这里就不分享了,有需要的可以上网查一下

kuberntes集群环境

使用外包精通--0成本学习IT运维kubespray--master高可用方案部署的k8s测试环境

代码语言:txt
复制
[root@node1 minio]# kubectl get no -o wide
NAME    STATUS   ROLES           AGE   VERSION   INTERNAL-IP     EXTERNAL-IP   OS-IMAGE          KERNEL-VERSION          CONTAINER-RUNTIME
node1   Ready    control-plane   23h   v1.28.6   192.168.2.129   <none>        CentOS Stream 9   5.14.0-435.el9.x86_64   docker://20.10.20
node2   Ready    control-plane   23h   v1.28.6   192.168.2.158   <none>        CentOS Stream 9   5.14.0-435.el9.x86_64   docker://20.10.20
node3   Ready    <none>          23h   v1.28.6   192.168.2.234   <none>        CentOS Stream 9   5.14.0-435.el9.x86_64   docker://20.10.20
[root@node1 minio]#

参考文档

官方网站:https://min.io/

Github地址:https://github.com/minio/minio

部署参考链接:https://min.io/docs/minio/kubernetes/upstream/index.html

setup一:下载MinIO对象

下载MinIO-dev.yaml到k8s集群master机器上

代码语言:txt
复制
curl https://raw.githubusercontent.com/minio/docs/master/source/extra/examples/minio-dev.yaml -O

setup二:修改MInIOn.yaml配置

  • 修改节点选择器,根据开发需求进行修改
  • 修改path路径
  • 到对应的节点上创建路径

节点选择器查看

代码语言:txt
复制
[root@node1 ~]# kubectl get nodes --show-labels
NAME    STATUS   ROLES           AGE   VERSION   LABELS
node1   Ready    control-plane   18h   v1.28.6   beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/arch=amd64,kubernetes.io/hostname=node1,kubernetes.io/os=linux,node-role.kubernetes.io/control-plane=,node.kubernetes.io/exclude-from-external-load-balancers=
node2   Ready    control-plane   18h   v1.28.6   beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/arch=amd64,kubernetes.io/hostname=node2,kubernetes.io/os=linux,node-role.kubernetes.io/control-plane=,node.kubernetes.io/exclude-from-external-load-balancers=
node3   Ready    <none>          18h   v1.28.6   beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/arch=amd64,kubernetes.io/hostname=node3,kubernetes.io/os=linux
[root@node1 ~]#

修改path路径

测试选择了node3,并且在node3上创建了data路径

代码语言:txt
复制
[root@node1 minio]# ssh node3
Activate the web console with: systemctl enable --now cockpit.socket

Last login: Thu Apr 25 11:51:59 2024 from 192.168.2.129

[root@node3 ~]# mkdir /data

setup三:使用命令部署minio-dev.yaml:kubectl apply -f minio-dev.yaml

代码语言:txt
复制
[root@node1 minio]# kubectl apply -f minio-dev.yaml
namespace/minio-dev created
pod/minio created
[root@node1 minio]#

Get Pod

代码语言:txt
复制
[root@node1 minio]# kubectl get pod -n minio-dev
NAME    READY   STATUS    RESTARTS   AGE
minio   1/1     Running   0          4h1m
[root@node1 minio]#

MinIO logs

代码语言:txt
复制
[root@node1 minio]# kubectl logs pod/minio -n minio-dev
Formatting 1st pool, 1 set(s), 1 drives per set.
WARNING: Host local has more than 0 drives of set. A host failure will result in data becoming unavailable.
MinIO Object Storage Server
Copyright: 2015-2024 MinIO, Inc.
License: GNU AGPLv3 <https://www.gnu.org/licenses/agpl-3.0.html>
Version: RELEASE.2024-04-18T19-09-19Z (go1.21.9 linux/amd64)

API: http://10.233.64.143:9000  http://127.0.0.1:9000
WebUI: http://10.233.64.143:9090 http://127.0.0.1:9090

Docs: https://min.io/docs/minio/linux/index.html
Status:         1 Online, 0 Offline.
STARTUP WARNINGS:
- Detected default credentials 'minioadmin:minioadmin', we recommend that you change these values with 'MINIO_ROOT_USER' and 'MINIO_ROOT_PASSWORD' environment variables
- The standard parity is set to 0. This can lead to data loss.
[root@node1 minio]#

描述

Setup四:端口转发及浏览器访问

使用port-forward转发端口

代码语言:txt
复制
[root@node1 minio]# kubectl port-forward --address 0.0.0.0 pod/minio 9000 9090 -n minio-dev
Forwarding from 0.0.0.0:9000 -> 9000
Forwarding from 0.0.0.0:9090 -> 9090
Handling connection for 9090
Handling connection for 9090

通过浏览器访问

在master节点上执行命令后,通过maser的IP:9090

默认账号:minioadmin

默认密码:minioadmin

登录成功

创建Bucket

创建Bucket完成

查看创建的Bucket

点击 Bucket名字进入Bucket

上传测试

上传完成

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 原理及架构网上有很多总结很好的,这里就不分享了,有需要的可以上网查一下
    • kuberntes集群环境
      • 参考文档
        • setup一:下载MinIO对象
          • setup二:修改MInIOn.yaml配置
            • 节点选择器查看
            • 修改path路径
          • setup三:使用命令部署minio-dev.yaml:kubectl apply -f minio-dev.yaml
            • Get Pod
            • MinIO logs
            • 描述
          • Setup四:端口转发及浏览器访问
            • 使用port-forward转发端口
            • 通过浏览器访问
            • 登录成功
            • 创建Bucket
            • 创建Bucket完成
            • 查看创建的Bucket
            • 上传测试
            • 上传完成
        相关产品与服务
        容器服务
        腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档