MinIO 对象存储:
- 构建高性能的云原生数据
机器学习,大数据分析,海量存储的基础架构
MinIO支持各种应用程序数据工作负载
在中国:阿里巴巴、腾讯、百度、中国联通、华为、中国移动等等9000多家企业也都在使用MinIO产品
下载Minio
上传虚拟机
-
mkdir /path/minio
-
上传用到xshell、xftp => 下载
-
mkdir /path/minio/log
#创建两个文件夹 -
mkdir /path/minio/data
-
chmod -R 775 /path/minio
#赋予权限
启动脚本
-
vi /etc/init.d/minio
#创建一个开机启动脚本 => 脚本如附录 -
yum -y install lsof
#安装一个插件,用来查找minio的pidnohup /path/minio/minio server /path/minio/data --address 1.1.1.111:9001 --console-address 1.1.1.111:9002 > /path/minio/log/log.log 2>&1 &
#可以单独启动的命令
-
chmod 775 /etc/init.d/minio
#赋予权限 -
chkconfig --add /etc/init.d/minio
#注册到全局中 -
chkconfig /etc/init.d/minioon
#开机自动执行脚本 -
service minio start/stop/restart
#现在可以通过service
命令启动关闭nacos了 -
添加指定需要开放的端口:
-
firewall-cmd --add-port=9001/tcp --permanent
-
firewall-cmd --add-port=9002/tcp --permanent
-
重载入添加的端口:
firewall-cmd --reload
-
可以在外部连接minio了
1.1.1.111:9001
新建桶和上传文件
-
创建桶:mis、print
-
进入桶,把private 改为 public
-
点击“Object Browser” --> “mis”
-
新建目录或者上传文件
创建新用户
- 选择print设置权限
为新用户设权限
- 创建策略:
- 自定义策略的名称
- 策略列子:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:ListAllMyBuckets",
"s3:ListBucket",
"s3:PutObject",
"s3:DeleteObject",
"s3:GetBucketLocation"
],
"Resource": [
"arn:aws:s3:::print/*"
]
}
]
}
- 参数说明:
- “Action”:Get、Put、Delete权限
- “Resource:print/*”: print下所有文件(自定义)
给新用户授权
-
在“Users”–> “POLICIES”下添加权限
-
根据需要赋予权限,保存
-
用print用户登录后,只能操作print桶了
附件
启动脚本
#!/bin/sh
#chkconfig: 2345 80 90
export JAVA_HOME="/usr/local/java/jdk1.8.0_202"
source /etc/profile;
export MINIO=/path/minio #minio文件的文件夹位置,文件夹下面才是执行文件
export IP_port=1.1.1.111:9001 #本机ip:端口
export IPtwo_port=1.1.1.111:9002 #本机ip:端口2
export PORT=9001 #第一个端口
case "$1" in
start)
## 启动minio
echo "--------minio 开始启动--------------"
MINIO_ROOT_USER=sfs MINIO_ROOT_PASSWORD=SFS@minio2021 nohup $MINIO/minio server $MINIO/data --address $IP_port --console-address $IPtwo_port > $MINIO/log/log.log 2>&1 &
sleep 10
MINIO_pid=`lsof -i:$PORT|grep "LISTEN"|awk '{print $2}'`
until [ -n "$MINIO_pid" ]
do
MINIO_pid=`lsof -i:$PORT|grep "LISTEN"|awk '{print $2}'`
done
echo "--------minio 启动成功--------------"
echo "minio pid is $MINIO_pid"
;;
stop)
P_ID=`ps -ef | grep -w $MINIO | grep -v "grep" | awk '{print $2}'`
if [ "$P_ID" == "" ]; then
echo "===minio 进程 不 存在 or stop 成功"
else
kill -9 $P_ID
echo "minio 成功关闭"
fi
;;
restart)
$0 stop
$0 start
echo "===restart 成功==="
;;
*)
echo "请使用参数start stop restart"
echo "默认重启..."
$0 stop
$0 start
echo "===restart 成功==="
;;
esac
exit 0