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 通知试用&&说明的更多相关文章

  1. minio select api 试用

    对于minio 我们可以使用基于sql 的对象内容查询,特别适合进行特定文件内容的获取,强大方便. 以下是一个简单的试用 环境准备 集成了prometheus docker-compose 文件   ...

  2. MinIO存储桶通知指南

    官方文档地址:http://docs.minio.org.cn/docs/master/minio-bucket-notification-guide 存储桶(Bucket)如果发生改变,比如上传对象 ...

  3. MinIO Client完全指南

    官方文档地址:http://docs.minio.org.cn/docs/master/minio-client-complete-guide 下载,添加云存储服务参考这篇文章:https://www ...

  4. [转]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 ...

  5. drill 集成开源s3 存储minio

    drill 支持s3数据的查询,同时新版的通过简单配置就可以实现minio 的集成 测试使用docker 运行drill 参考 https://www.cnblogs.com/rongfenglian ...

  6. Thanos prometheus 集群以及多租户解决方案docker-compose 试用(一)

    prometheus 是一个非常不多的metrics 监控解决方案,但是对于ha 以及多租户的处理并不是很好,当前有好多解决方案 cortex Thanos prometheus+ influxdb ...

  7. Spring Boot 整合 minio(一步到位)

    按照这个步骤来,宝贝保你一步到位 一.minio版本安装:这里我安装的新版本 新版本安装 # docker 下载镜像 docker pull minio/minio # 安装镜像 docker run ...

  8. HRMS(人力资源管理系统)-SaaS架构设计-概要设计实践

    一.开篇 前期我们针对架构准备阶段及需求分析这块我们写了2篇内容<HRMS(人力资源管理系统)-从单机应用到SaaS应用-架构分析(功能性.非功能性.关键约束)-上篇><HRMS(人 ...

  9. HRMS(人力资源管理系统)-从单机应用到SaaS应用-系统介绍

    上周发布的<2018,全新出发(全力推动实现住有所居)>文章,其中记录了个人在这5年过程中的成长和收获,有幸认识了不少博客园的朋友,大家一起学习交流,在这个过程当中好多朋友提出SaaS系统 ...

随机推荐

  1. KEYENCE Programming Contest 2019 Solution

    A - Beginning 签到. #include <bits/stdc++.h> using namespace std; int main() { ]; while (scanf(& ...

  2. DB开发之大数据量高并发的数据库优化

    一.数据库结构的设计 如果不能设计一个合理的数据库模型,不仅会增加客户端和服务器段程序的编程和维护的难度,而且将会影响系统实际运行的性能.所以,在一个系统开始实施之前,完备的数据库模型的设计是必须的. ...

  3. Java中com.jcraft.jsch.ChannelSftp讲解

    http://blog.csdn.net/allen_zhao_2012/article/details/7941631 http://www.cnblogs.com/longyg/archive/2 ...

  4. Centos75下samba搭建配置

    工作中,很经常需要把Linux服务器上的文件共享到windows上面,这时候需要在Linux服务器上安装samba套件. samba服务很好的实现了windows和linux之间的文件共享. 下面配置 ...

  5. mysql日期和JDBC查询出来的结果相差8小时

    数据库时间:2017-11-08 16:30:00 查询出来: 2017-11-09 00:30:00 问题:数据库时区,和JDBC连接时区设置问题. set global time_zone = ' ...

  6. 20172305 2018-2019-1 《Java软件结构与数据结构》第七周学习总结

    20172305 2018-2019-1 <Java软件结构与数据结构>第七周学习总结 教材学习内容总结 本周内容主要为书第十一章内容: 二叉查找树(附加属性的二叉树) 二叉查找树是对树中 ...

  7. [优化]深度学习中的 Normalization 模型

    来源:https://www.chainnews.com/articles/504060702149.htm 机器之心专栏 作者:张俊林 Batch Normalization (简称 BN)自从提出 ...

  8. CCNA学习指南 -开放最短路径优先OSPF(单区域)

    在上个世纪九十年代撰写的<TCP/IP协议详解 卷一:协议>的动态选路中,内容大部分还是介绍 RIP路由选择信息协议,在互联网络如此发达的今天,RIP因为它的局限性逐步被OSPF取代. 在 ...

  9. 论OI中最大值的选取

    为什么我的Floyd会输出负数啊? 为什么我的代码写对了却全都爆零了啊? 那么很可能是你的INF取大/小了! 那么inf到底应该取什么值呢? 首先,inf应该要比一般的题目中出现的数据要大,但是又不能 ...

  10. 请问使用jmeter在tcp取样器测试中服务器名称或ip,端口可以填变量值吗?

    请问使用jmeter在tcp取样器测试中服务器名称或ip,端口可以填变量值吗?