快速部署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 就可以了.