Minio Bucket 通知试用&&说明
kafka 安装
docker run -p 2181:2181 -p 9092:9092 \
--name kafka --rm \
--env ADVERTISED_HOST=HOSTIP \
--env ADVERTISED_PORT=9092 \
spotify/kafka
minio (mac local)
wget https://dl.minio.io/server/minio/release/darwin-amd64/minio
chmod +x minio
mkdir data
./minio server ./data
config minio notify
路径 ~/.minio/config.json
"kafka": {
"1": {
"enable": true,
"brokers": ["localhost:9092"],
"topic": "bucketevents"
}
}
下载client 并配置minio server
wget https://dl.minio.io/client/mc/release/darwin-amd64/mc
chmod +x mc
./mc --help
./mc config host add myminio http://localhost:9000 GT481SA7MEF5D2G29N0L QqaFn67VTbko3FRE0IfZVTYpztb3UpjKW0RloHSt
创建bucket 并启用evnet
注意配置之前,如果没有配置kafka 通知,配置完成之后,minio server 需要重启,不然会报错
./mc mb myminio/images
./mc events add myminio/images arn:minio:sqs:us-east-1:1:kafka --suffix .png
测试
- 下载 kafkacat
kafka 信息查看(mac)
brew install kafkacat
- 上传图片测试
./mc cp app.png myminio/images
- 效果

说明
我们可以添加多种通知,实现一个pipeline 的文件处理服务,还是比较方便的
- 添加另外的一个通知
./mc events add myminio/images arn:minio:sqs:us-east-1:1:kafka --suffix .txt
- 效果

- 查看配置的通知
./mc events list myminio/images --json
{"status":"success","id":"","events":["s3:ObjectCreated:*","s3:ObjectRemoved:*","s3:ObjectAccessed:*"],"prefix":"","suffix":".png","arn":"arn:minio:sqs::1:kafka"}
{"status":"success","id":"","events":["s3:ObjectCreated:*","s3:ObjectRemoved:*","s3:ObjectAccessed:*"],"prefix":"","suffix":".jpg","arn":"arn:minio:sqs::1:kafka"}
{"status":"success","id":"","events":["s3:ObjectCreated:*","s3:ObjectRemoved:*","s3:ObjectAccessed:*"],"prefix":"","suffix":".txt","arn":"arn:minio:sqs::1:kafka"}
信息存储
实际上默认的配置都是在一个.minio.sys 文件夹中
- 参考图

- 内容
<NotificationConfiguration>
<QueueConfiguration>
<Id></Id>
<Filter>
<S3Key>
<FilterRule>
<Name>suffix</Name>
<Value>.png</Value>
</FilterRule>
</S3Key>
</Filter>
<Event>s3:ObjectCreated:*</Event>
<Event>s3:ObjectRemoved:*</Event>
<Event>s3:ObjectAccessed:*</Event>
<Queue>arn:minio:sqs::1:kafka</Queue>
</QueueConfiguration>
<QueueConfiguration>
<Id></Id>
<Filter>
<S3Key>
<FilterRule>
<Name>suffix</Name>
<Value>.jpg</Value>
</FilterRule>
</S3Key>
</Filter>
<Event>s3:ObjectCreated:*</Event>
<Event>s3:ObjectRemoved:*</Event>
<Event>s3:ObjectAccessed:*</Event>
<Queue>arn:minio:sqs::1:kafka</Queue>
</QueueConfiguration>
<QueueConfiguration>
<Id></Id>
<Filter>
<S3Key>
<FilterRule>
<Name>suffix</Name>
<Value>.txt</Value>
</FilterRule>
</S3Key>
</Filter>
<Event>s3:ObjectCreated:*</Event>
<Event>s3:ObjectRemoved:*</Event>
<Event>s3:ObjectAccessed:*</Event>
<Queue>arn:minio:sqs::1:kafka</Queue>
</QueueConfiguration>
</NotificationConfiguration>
参考资料
https://minio.io/downloads.html
https://github.com/edenhill/kafkacat
https://hub.docker.com/r/spotify/kafka/
https://docs.minio.io/docs/minio-bucket-notification-guide
https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
Minio Bucket 通知试用&&说明的更多相关文章
- minio select api 试用
对于minio 我们可以使用基于sql 的对象内容查询,特别适合进行特定文件内容的获取,强大方便. 以下是一个简单的试用 环境准备 集成了prometheus docker-compose 文件 ...
- MinIO存储桶通知指南
官方文档地址:http://docs.minio.org.cn/docs/master/minio-bucket-notification-guide 存储桶(Bucket)如果发生改变,比如上传对象 ...
- MinIO Client完全指南
官方文档地址:http://docs.minio.org.cn/docs/master/minio-client-complete-guide 下载,添加云存储服务参考这篇文章:https://www ...
- [转]Build An Image Manager With NativeScript, Node.js, And The Minio Object Storage Cloud
本文转自:https://www.thepolyglotdeveloper.com/2017/04/build-image-manager-nativescript-node-js-minio-obj ...
- drill 集成开源s3 存储minio
drill 支持s3数据的查询,同时新版的通过简单配置就可以实现minio 的集成 测试使用docker 运行drill 参考 https://www.cnblogs.com/rongfenglian ...
- Thanos prometheus 集群以及多租户解决方案docker-compose 试用(一)
prometheus 是一个非常不多的metrics 监控解决方案,但是对于ha 以及多租户的处理并不是很好,当前有好多解决方案 cortex Thanos prometheus+ influxdb ...
- Spring Boot 整合 minio(一步到位)
按照这个步骤来,宝贝保你一步到位 一.minio版本安装:这里我安装的新版本 新版本安装 # docker 下载镜像 docker pull minio/minio # 安装镜像 docker run ...
- HRMS(人力资源管理系统)-SaaS架构设计-概要设计实践
一.开篇 前期我们针对架构准备阶段及需求分析这块我们写了2篇内容<HRMS(人力资源管理系统)-从单机应用到SaaS应用-架构分析(功能性.非功能性.关键约束)-上篇><HRMS(人 ...
- HRMS(人力资源管理系统)-从单机应用到SaaS应用-系统介绍
上周发布的<2018,全新出发(全力推动实现住有所居)>文章,其中记录了个人在这5年过程中的成长和收获,有幸认识了不少博客园的朋友,大家一起学习交流,在这个过程当中好多朋友提出SaaS系统 ...
随机推荐
- 使用idea 搭建Spring+mybatis
1.file-new-project 项目的结构如下: 在WEB-INF 下面新建一个 文件夹lib 右键WEB-INF ,new-Directory 所需要的jar 包有: lib下载地址: 网盘地 ...
- python openpyxl 封装Execl常用操作的方法
封装Excel操作方法:先装openpyxl:pip install openpyxl==2.4.5(可以指定版本) 封装脚本:#encoding=utf-8 from openpyxl import ...
- Linux学习笔记之Linux计划任务Crontab
0x00 cron 简介 cron 是 UNIX, SOLARIS,LINUX 下的一个十分有用的工具.通过 cron 脚本能使计划任务定期地在系统后台自动运行. 0x01 cron 命令 cront ...
- Android实践项目汇报
Android实践项目:推箱子 推箱子是一款来自日本的古老游戏,其设计目的是训练人的逻辑思维能力.游戏场景一般是设定在空间狭小的仓库中,要求把箱子摆放到指定位置.这就要求玩家巧妙的运用有限的空间和通道 ...
- ZLYD团队第一周项目总结
ZLYD团队第一周项目总结 团队项目 项目内容:我们打算利用Applet实现一个吃豆子游戏,团队初步设定游戏规则如下: 按空格键,游戏开始: 通过方向键控制吃豆者的运动方向,直到吃光所有金豆子: 吃到 ...
- @Bean 生命周期
bean生命周期: 实例bean 1.当调用者通过getBean(beanName)向容器请求某一个Bean时,如果容器注册了org.springframework.beans.factory.con ...
- 解决Tomcat端口被占用 及 启用失败等其它错误整理册
使用管理员模式启动命令行工具. netstat -ano|findstr 获取了pid号 taskkill /pid /f 其中6428为pid号,可能有不同. -------- 有时遇到其它问题可以 ...
- linux 查看数据库和表
mysql -h localhost -u 用戶名 -p密碼 //連接數據庫use desk_show; ...
- Codeforces Round #401 (Div. 2) A,B,C,D,E
A. Shell Game time limit per test 0.5 seconds memory limit per test 256 megabytes input standard inp ...
- install ros-indigo-laser-geometry
-- Using these message generators: gencpp;genlisp;genpy CMake Warning at /opt/ros/indigo/share/catki ...