• 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

  • 相关阅读:
    java指定路径写、读文件
    [转]EP3C16Q240C8N 引脚说明
    [转]CMOS器件空闲管脚的处理
    [转]Altium Designer之多图纸设计
    [转]SDRAM驱动笔记
    [转]VHDL语言中方向字buffer与inout有什么异同
    [转]FPGA的边沿检测
    [转]FPGA中为什么要把NCEO设置为普通的IO口
    [转]SignalTap II使用方法简介
    [转]C-SPY
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/9252416.html
Copyright © 2020-2023  润新知