快速部署minio的一个思路


背景

小型项目上希望能够快速部署一些中间件.
因为minio比较简单,想着快速一键部署.
加快工作效率.
这里将脚本和思路写下来, 其他应用可以一样进行.

思路

1. 下载好minio的二进制.
2. 编写好systemd脚本
3. 理论文件和system脚本内的值放置文件,执行启动等.
4. 设置开机启动和异常自动重启的设置

二进制获取

wget -c https://dl.min.io/server/minio/release/linux-arm64/minio -O minio_arm64
wget -c https://dl.min.io/server/minio/release/linux-amd64/minio -O minio_amd64 可以通过 ./minio -v 查看版本 比如今天下载的版本为:
minio_arm64 version RELEASE.2023-10-25T06-33-25Z (commit-id=c60f54e5be7302d82d0d8fc404c056fea4e2bf4e)
Runtime: go1.21.3 linux/arm64
License: GNU AGPLv3 <https://www.gnu.org/licenses/agpl-3.0.html>
Copyright: 2015-2023 MinIO, Inc.

部署思路

先设置一下 ssh 可以免密访问
然后通过scp上传二进制文件.
然后创建对应的目录.
创建 systemd 的service 文件.
然后启动服务 配置文件里面 可以设置商环境变量
主要有用户密码还有可以用于收集minio监控信息的设置 可以根据需要修改 --address的端口避免端口冲突.
然后可以修改 --console-address 修改web控制台的端口.

脚本

miniofile=minio_amd64
minioip=192.168.254.214 scp ${miniofile} root@${minioip}:/usr/bin/minio
ssh root@${minioip} "
systemctl stop firewalld && systemctl disable firewalld
chmod 777 /usr/bin/minio
mkdir -p /data/minio/data
cat << EOF > /etc/systemd/system/minio.service
[Unit]
Description=minio [Service]
Type=simple Environment="MINIO_ACCESS_KEY=minio"
Environment="MINIO_SECRET_KEY=minio"
Environment="MINIO_PROMETHEUS_AUTH_TYPE=public"
ExecStart=/usr/bin/minio server --address 0.0.0.0:9000 --console-address 0.0.0.0:9001 /data/minio/data/
Restart=always
LimitNOFILE=65536
PrivateTmp=true [Install]
WantedBy=multi-user.target
EOF systemctl enable --now minio echo "等待五秒判断服务是否可以用"
sleep 5
netstat -anop |grep 9000 将文件部署为 deployminio 与 minio的二进制文件放到同一个目录 执行脚本即可. 设置互信
ssh-keygen # 创建秘钥
ssh-copy-id root@192.168.255.65 执行命令
cd /deploy && ./deployminio

部署效果

[root@grafana deploy]# ./deployminio

Authorized users only. All activities may be monitored and reported.
minio_amd64 Authorized users only. All activities may be monitored and reported.
Created symlink /etc/systemd/system/multi-user.target.wants/minio.service → /etc/systemd/system/minio.service.
判断服务是否可以用
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 79308/minio off (0.00/0/0)
tcp 0 0 0.0.0.0:9000 0.0.0.0:* LISTEN 79308/minio off (0.00/0/0)

修改密码的方法

vim /etc/systemd/system/minio.service

修改环境变量里面的
MINIO_ACCESS_KEY
MINIO_SECRET_KEY
对应的值
然后执行
systemctl daemon-reload
然后重启minio
systemctl restart minio 就可以了.

快速部署minio的一个思路的更多相关文章

  1. 使用Docker快速部署各类服务

    使用Docker快速部署各类服务 一键安装Docker #Centos环境 wget -O- https://gitee.com/iubest/dinstall/raw/master/install. ...

  2. 使用 Sealos 在 3 分钟内快速部署一个生产级别的 Kubernetes 高可用集群

    本文首发于:微信公众号「运维之美」,公众号 ID:Hi-Linux. 「运维之美」是一个有情怀.有态度,专注于 Linux 运维相关技术文章分享的公众号.公众号致力于为广大运维工作者分享各类技术文章和 ...

  3. 快速部署一个Kubernetes集群

    官方提供的三种部署方式 minikube Minikube是一个工具,可以在本地快速运行一个单点的Kubernetes,仅用于尝试Kubernetes或日常开发的用户使用. 部署地址:https:// ...

  4. 第3章:快速部署一个Kubernetes集群

    kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具. 这个工具能通过两条指令完成一个kubernetes集群的部署: # 创建一个 Master 节点$ kubeadm in ...

  5. Dubbo 入门系列之快速部署一个微服务应用

    本文将基于 Dubbo Samples 示例演示如何快速搭建并部署一个微服务应用. 背景 Dubbo 作为一款微服务框架,最重要的是向用户提供跨进程的 RPC 远程调用能力.如上图所示,Dubbo 的 ...

  6. 如何利用脚本实现MySQL的快速部署以及一机多实例的部署

    MySQL有三个版本:二进制,源码包,RPM. 下面讲讲二进制包的安装过程 下载地址: http://dev.mysql.com/downloads/mysql/ 选择Linux-Generic 我这 ...

  7. 基于云基础设施快速部署 RocketMQ 5.0 集群

    本文作者:蔡高扬,Apache RocketMQ Committer, 阿里云智能技术专家. 背景 上图左侧为 RocketMQ 4.x版本集群,属于非切换架构.NameServer 作为无状态节点可 ...

  8. Linux上oracle精简版客户端快速部署

    RHEL6 + Oracle 11g客户端快速部署 需求:只是用到客户端的sqlplus, sqlldr功能. 方案:用精简版实现客户端的快速部署 1.上传oracle精简版客户端到服务器/tmp目录 ...

  9. MySQL入门02-MySQL二进制版本快速部署

    在上篇文章 MySQL入门01-MySQL源码安装 中,我们介绍了MySQL源码安装的方法. 源码安装虽然有着更加灵活和更加优化等诸多优势.但源码编译安装部署的过程相对复杂,而且整个过程所花费的时间很 ...

  10. k8s入门系列之guestbook快速部署

    k8s集群以及一些扩展插件已经安装完毕,本篇文章介绍一下如何在k8s集群上快速部署guestbook应用. •实验环境为集群:master(1)+node(4),详细内容参考<k8s入门系列之集 ...

随机推荐

  1. javascript中的标识符(JS)

    1.在javascript(JS)中所有的可以由我们自主命名的都可以称为是标识符. 例如:变量名.函数名.属性名都属于标识符. 2.标识符命名一个标识符时需要遵守如下的规则: 1.标识符中可以含有字母 ...

  2. libGDX游戏开发之Box2D碰撞(十五)

    libGDX游戏开发之Box2D(十四) libGDX系列,游戏开发有unity3D巴拉巴拉的,为啥还用java开发?因为我是Java程序员emm-国内用libgdx比较少,多数情况需要去官网和goo ...

  3. Java单例模式的几种常见实现方式

    目录 Java单例模式的几种常见实现方式 懒汉or饿汉? 饿汉:不加锁,线程安全,用起来方便,容易产生垃圾对象 单线程下的单例模式(懒汉,线程不安全) 多线程下的单例模式(一)(懒汉,线程安全) 多线 ...

  4. 实例讲解FusionInsight MRS RTD 实时决策引擎在医保行业应用

    摘要: 通过引入FusionInsight RTD实时决策系统,实现医保费用事前预防.事中控制.事后审核的全流程管理 本文分享自华为云社区<FusionInsight MRS RTD 实时决策引 ...

  5. web自动化测试(3):web功能自动化测试selenium基础课

    继上篇<web自动化测试(1):为什么选择selenium做自动化测试>,本文介绍如selenium使用 做UI自动化测试,需要什么技能 前端相关技术:HTML.XML.JavaScrip ...

  6. 创元集团的数智化实践 这次选择了和火山引擎 VeDI 搭档

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 近日,上海创元化妆品有限公司(以下简称"创元集团")与火山引擎数智平台 VeDI 达成合作,旨 ...

  7. Chrome浏览器导出HTTPS证书

    点证书小锁 进入证书界面 到详情中,导出证书

  8. PPT 呼吸感

    任何元素都应该保持一定的距离,留出可以"呼吸"的空间 呼吸感 怎么营造 不要让内容超出/接近边框 类似的元素摆放在一起 控制 行间距/字间距 行间距:1.3.字间距:1.0 :行间 ...

  9. .Net Core 多语言

    StartUp.cs public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { app.UseEndpoint ...

  10. SqlServer 服务无法启动 操作系统错误: 5(拒绝访问。)

    FCB::Open failed: 无法打开文件号 2 的文件 D:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA ...