miniO之AWS S3存储实现

docker版安装

官网参考

https://github.com/minio/minio
docker run -d -p 9000:9000 \
  -e "MINIO_ACCESS_KEY=AKIAIOSFODNN7EXAMPLE" \
  -e "MINIO_SECRET_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" \
  minio/minio:latest server /data
k8s安装。本次使用NFS动态存储
cat <<END>claim-class.yaml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: nfs
  annotations:
    volume.beta.kubernetes.io/storage-class: "example-nfs"
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 10Gi
---
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: example-nfs
provisioner: example.com/nfs
mountOptions:
  - vers=4.1
END
kubectl apply -f claim.yaml -f class.yaml
cat <<END>minio.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: minio-deploy
  #namespace: cephfs
  labels:
    app: minio
spec:
  replicas: 1
  selector:
    matchLabels:
      app: minio
  template:
    metadata:
      labels:
        app: minio
    spec:
      containers:
      - name: minio
        image: minio/minio:latest
        args:
        - server
        - /storage
        env:
        - name: MINIO_ACCESS_KEY
          value: "MIDUSIKDF4Y7H3GC0JBW"
        - name: MINIO_SECRET_KEY
          value: "vAYq2gEOudoOJYiMApjLtYYeYZSNykEBAcuZFPcO"
        ports:
        - containerPort: 9000
        volumeMounts:
          - mountPath: /storage
            name: data
      volumes:
        - name: data
          persistentVolumeClaim:
            claimName: nfs
---
apiVersion: v1
kind: Service
metadata:
  name: minio-service
spec:
  type: NodePort
  ports:
    - port: 9000
      targetPort: 9000
      protocol: TCP
      nodePort: 19000
  selector:
    app: minio
END
kubectl apply -f minio.yaml
web ui创建桶操作

在这里插入图片描述
可以分享等等功能。。


以下mc客户端操作

#MinIO云存储

#mc config host add minio <Endpoint> <AccessKey> <SecretKey> S3v4
mc config host add my-user  http://192.168.8.179:9000 AKIAIOSFODNN7EXAMPLE wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY --api s3v4
Added `my-user` successfully.
创建bucket
[root@harbor181 ~]# mc mb my-user/mybucket
Bucket created successfully `my-user/mybucket`.

测试上传一个文件

[root@harbor181 ~]# mc cp anaconda-ks.cfg  my-user/mybucket
anaconda-ks.cfg:         1.60 KiB / 1.60 KiB ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 194.05 KiB/s 0s

在这里插入图片描述

mc 别名使用
mc alias set ALIAS URL ACCESSKEY SECRETKEY

例如:

[root@harbor181 ~]# mc alias set jsj http://192.168.8.179:9000 AKIAIOSFODNN7EXAMPLE wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY --api s3v4
Added `jsj` successfully.

列出数据列表

[root@harbor181 ~]# mc ls jsj/jsj
[2021-01-01 23:03:57 CST] 445MiB 43543.mp4
[2021-01-01 23:24:36 CST]  12MiB docker-compose-Linux-x86_64

在这里插入图片描述


目录上传删除
将/etc目录上传到 my-jb/gogo/555
(注意加\和不加\的区
[root@harbor181 log]# mc cp -r /etc my-jb/gogo/555
...version-groups.conf:  33.38 MiB / 33.38 MiB ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 23.89 MiB/s 1s

在这里插入图片描述

加\上传etc目录
[root@harbor181 log]# mc cp -r /etc/  jsj/mimi
...cted.d/systemd.conf:  33.38 MiB / 33.38 MiB ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 21.96 MiB/s 1s

在这里插入图片描述
删除桶里的一个目录

[root@harbor181 usr]# mc rm jsj/jsj/123 --recursive --force
Removing `jsj/jsj/123/[`.
Removing `jsj/jsj/123/a2p`.
Removing `jsj/jsj/123/addr2line`.
Removing `jsj/jsj/123/alias`.
Removing `jsj/jsj/123/apropos`.

在这里插入图片描述
更多命令请参考官网

https://docs.min.io/cn/minio-client-complete-guide#mirror
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值