当前位置: 首页 > news >正文

minio2023版本安装对象存储文件迁移

一、环境

      minio版本:minio-20230320201618.0.0.x86_64.rpm

二、安装

      将下载好的rpm包放在文件夹下,然后cd到该目录

      sudo rpm -ivh minio-20230320201618.0.0.x86_64.rpm

三、启动

    1、minio的位置

         which minio

     

      cd  /usr/local/bin

    2、启动 (可以先不起,后面配置以后再起)

      ./minio server  /opt/minio/data  --console-address "0.0.0.0:9001"

四、开机自启

    

1、设置开机自启

必须执行:systemctl enable minio

2、编辑minio.service

vi /etc/systemd/system/minio.service

编辑完保存后必须执行systemctl daemon-reload

3、修改或新增:/etc/default下的minio文件

        cd /etc/default

        vi minio

    修改内容如下

MINIO_VOLUMES="/opt/minio/data"

MINIO_OPTS="--console-address 0.0.0.0:9001 --address :9000"

MINIO_ACCESS_KEY=minioadmin

MINIO_SECRET_KEY=minioadmin

测试minio是否启动:http://localhost:9001/login

账号密码默认都为minioadmin

五、集群安装(双机部署,多机相同)

     1、编辑minio.service

        vi /etc/systemd/system/minio.service

重新设置

  

[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/usr/local/bin/minio[Service]
WorkingDirectory=/usr/local/bin/
ExecStart=/usr/local/bin/cluster-start.shUser=root
Group=root
#ProtectProc=invisible#EnvironmentFile=-/etc/default/minio
#ExecStartPre=/bin/bash -c "if [ -z \"${MINIO_VOLUMES}\" ]; then echo \"Variable MINIO_VOLUMES not set in /etc/default/minio\"; exit 1; fi"
#ExecStart=/usr/local/bin/minio server $MINIO_OPTS  $MINIO_VOLUMES# Let systemd restart this service always
Restart=always# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=1048576# Specifies the maximum number of threads this process can create
TasksMax=infinity# Disable timeout logic and wait until process is stopped
TimeoutStopSec=infinity
SendSIGKILL=no[Install]
WantedBy=multi-user.target# Built for ${project.name}-${project.version} (${project.name})

   2、在/usr/local/bin目录下创建  cluster-start.sh

        vi cluster-start.sh

    

#!/bin/bash
export MINIO_ROOT_USER=minioadmin
export MINIO_ROOT_PASSWORD=minioadmin1
/usr/local/bin/minio server --config-dir /etc/minio \--address "0.0.0.0:9000" --console-address ":9001" \http://xxx.xxx.xxx.103:9000/minioDisk2/minio  http://xxx.xxx.xxx.104:9000/minioDisk2/minio  \http://xxx.xxx.xxx.103:9000/minioDisk1/minio  http://xxx.xxx.xxx.104:9000/minioDisk1/minio >> /minio/log/minio.log

中间过程可以使用到的命令

可使用到命令:

systemctl daemon-reload

systemctl restart systemd-journald

journalctl -u minio.service

systemctl status minio.service

chmod +x /etc/systemd/system/minio.service && chmod +x /usr/local/bin/cluster-start.sh

成功如下

 

查看集群是否成功

四台机器部署后如下:

六、数据迁移

  下载安装迁移工具mc

  下载文件原名不叫mc,可对文件名进行修改

 mv mc.RELEASE.2023-03-20T17-17-53Z  mc

 chmod +x ./mc

下载的文件在自定义目录中, 每次都要进入 目录或者指定mc所在目录,才能使用。

如果我们想在任何目录中使用 mc。把 mc文件放到 /usr/local/sbin/目录中,就可以了。

mv  ./mc  /usr/local/sbin/

mc  --help

1)在线迁移

      全量迁移,重名文件不覆盖,如bucket不存在,会自动创建

     1.设置别名:

      

mc alias set minio2023_103  http://xxx.xxx.xxx.103:9000 minioadmin  minioadmin1

mc alias set minio2021_121  http://xxx.xxx.xxx.121:9000 minioadmin1  minioadmin1

     2、全量迁移

   mc mirror  minio2021_121  minio2023_103

    3、只迁移某个bucket,以msp为例,迁移的目标bucket需要提前创建 

mc mirror  minio2021_121/msp  minio2023_103/msp   #msp 要提前在minio2023_103中创建

    4、 加上--overwrite参数,覆盖重名文件

    mc mirror  --overwrite  minio2021_121  minio2023_103

   mc mirror  --overwrite  minio2021_121/msp  minio2023_103/msp

2)离线迁移

1.设置别名:

mc alias set minio2023_103  http://192.168.220.103:9000 minioadmin  minioadmin1

mc alias set minio2021_121  http://192.168.220.121:9000 minioadmin1  minioadmin1

   

2.备份数据到自定义目录下

  #1 创建备份目录

     mkdir  /app/minio_back

3.备份文件

      mc cp --recursive minio2021_121/msp/ /app/minio_back/tt_$(date +"%F-%H-%M-%S")

4.恢复(103数据)通过下面命令将备份数据恢复到minio2023_103的msp桶(注意:msp桶需提前创建,否则报错)

     mc cp --recursive /app/minio_back/tt_2024-01-25-18-23-40/ minio2023_103/msp/

 

其他:

删除所有文件:

mc rm  --force --recursive minio2023_103/bucket

http://www.lryc.cn/news/290433.html

相关文章:

  • ###C语言程序设计-----C语言学习(7)#(调试篇)
  • 腾讯云Linux(OpenCloudOS)安装tomcat9(9.0.85)
  • 动态添加字段和注解,形成class类,集合对象动态创建Excel列
  • Python爬虫---Scrapy框架---CrawlSpider
  • 关机恶搞小程序
  • 《HTML 简易速速上手小册》第9章:HTML5 新特性(2024 最新版)
  • 计算机网络之NAT
  • SQL - 数据操作语句
  • 【Python笔记-设计模式】单例模式
  • Java使用io流生成pdf文件
  • STL-priority_queue
  • SpringBoot基于注解形式配置多数据源@DS
  • 华清远见作业第三十四天——C++(第三天)
  • Shell中正则表达式
  • Flutter Canvas 属性详解与实际运用
  • Django配置websocket时的错误解决
  • (免费分享)springboot,vue在线考试系统
  • WebSocket 整合 记录用法
  • 推荐5个我常用的软件,简单高效
  • 代码随想录训练营第三十一天|122.买卖股票的最佳时机II55.跳跃游戏45.跳跃游戏II
  • python17-Python的字符串格式化
  • HTTPS 之fiddler抓包--jmeter请求
  • Kotlin快速入门系列6
  • w24文件上传之PHP伪协议
  • SQL注入攻击 - 基于时间的盲注
  • 比VS Code快得多
  • 将一个excel文件里面具有相同参数的行提取后存入新的excel
  • Linux下安装edge
  • Java / Spring Boot + POI 给 Word 添加水印
  • Unity打包Android,jar文件无法解析的问题