Pag-configure sa Minio aron ang user makatrabaho lang gamit ang iyang kaugalingong balde

Ang Minio usa ka yano, paspas, ug AWS S3 compatible object store. Gidisenyo ang Minio nga mag-host sa wala’y istruktura nga datos sama sa mga litrato, video, mga file sa log, pag-backup. Gisuportahan usab sa minio ang giapod-apod nga mode, nga naghatag katakus sa pagkonektar sa daghang mga disk sa usa ka server sa pagtipig sa butang, lakip ang mga nahimutang sa lainlaing mga makina.

Ang katuyoan sa kini nga post mao ang pag-set up sa minio aron ang matag tiggamit mahimo ra magtrabaho gamit ang ilang kaugalingon nga balde.

Sa kinatibuk-an, ang Minio angay alang sa mosunod nga mga kaso:

  • non-replication storage sa ibabaw sa usa ka secure file system nga adunay S3 access (gamay ug medium storage nga gi-host sa NAS ug SAN);
  • pagtipig nga walay replikasyon sa usa ka dili kasaligan nga sistema sa file nga adunay access sa S3 (alang sa pagpalambo ug pagsulay);
  • pagtipig nga adunay replikasyon sa gamay nga grupo sa mga server sa usa ka rack nga adunay access pinaagi sa S3 protocol (failover storage nga adunay sayup nga domain nga katumbas sa rack).

Sa mga sistema sa RedHat, among gikonektar ang dili opisyal nga Minio repository.

yum -y install yum-plugin-copr
yum copr enable -y lkiesow/minio
yum install -y minio minio-mc

Among gimugna ug gidugang sa MINIO_ACCESS_KEY ug MINIO_SECRET_KEY sa /etc/minio/minio.conf.

# Custom username or access key of minimum 3 characters in length.
MINIO_ACCESS_KEY=

# Custom password or secret key of minimum 8 characters in length.
MINIO_SECRET_KEY=

Kung dili nimo gamiton ang nginx sa wala pa ang Minio kinahanglan nimo nga usbon.

--address 127.0.0.1:9000

sa

--address 0.0.0.0:9000

Gisugdan namon ang Minio.

systemctl start minio

Naghimo kami og koneksyon sa Minio nga gitawag og myminio.

minio-mc config host add myminio http://localhost:9000 MINIO_ACCESS_KEY 
MINIO_SECRET_KEY

Paghimo balde user1bucket.

minio-mc mb myminio/user1bucket

Paghimo balde user2bucket.

minio-mc mb myminio/user2bucket

Paghimo ug policy file user1-policy.json.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "s3:PutBucketPolicy",
        "s3:GetBucketPolicy",
        "s3:DeleteBucketPolicy",
        "s3:ListAllMyBuckets",
        "s3:ListBucket"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::user1bucket"
      ],
      "Sid": ""
    },
    {
      "Action": [
        "s3:AbortMultipartUpload",
        "s3:DeleteObject",
        "s3:GetObject",
        "s3:ListMultipartUploadParts",
        "s3:PutObject"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::user1bucket/*"
      ],
      "Sid": ""
    }
  ]
}

Paghimo ug policy file user2-policy.json.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "s3:PutBucketPolicy",
        "s3:GetBucketPolicy",
        "s3:DeleteBucketPolicy",
        "s3:ListAllMyBuckets",
        "s3:ListBucket"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::user2bucket"
      ],
      "Sid": ""
    },
    {
      "Action": [
        "s3:AbortMultipartUpload",
        "s3:DeleteObject",
        "s3:GetObject",
        "s3:ListMultipartUploadParts",
        "s3:PutObject"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::user2bucket/*"
      ],
      "Sid": ""
    }
  ]
}

Paghimo user user1 gamit ang password test12345.

minio-mc admin user add myminio user1 test12345

Paghimo user user2 gamit ang password test54321.

minio-mc admin user add myminio user2 test54321

Paghimo og polisiya sa Minio nga gitawag og user1-policy gikan sa user1-policy.json file.

minio-mc admin policy add myminio user1-policy user1-policy.json

Paghimo og polisiya sa Minio nga gitawag og user2-policy gikan sa user2-policy.json file.

minio-mc admin policy add myminio user2-policy user2-policy.json

Gipadapat namo ang polisiya user1-policy sa user user1.

minio-mc admin policy set myminio user1-policy user=user1

Gipadapat namo ang polisiya user2-policy sa user user2.

minio-mc admin policy set myminio user2-policy user=user2

Pagsusi sa koneksyon sa mga palisiya sa mga tiggamit

minio-mc admin user list myminio

Ang pagsusi sa koneksyon sa mga palisiya sa mga tiggamit mahimong usa ka butang nga sama niini

enabled    user1                 user1-policy
enabled    user2                 user2-policy

Alang sa katin-awan, moagi kami sa browser sa adres http://ip-сСрвСра-Π³Π΄Π΅-Π·Π°ΠΏΡƒΡ‰Π΅Π½-minio:9000/minio/

Atong makita nga kita konektado sa Minio ubos sa MINIO_ACCESS_KEY=user1. Ang balde user1bucket anaa alang kanato.

Pag-configure sa Minio aron ang user makatrabaho lang gamit ang iyang kaugalingong balde

Dili molihok ang paghimo og balde, tungod kay wala’y katugbang nga Aksyon sa palisiya.

Pag-configure sa Minio aron ang user makatrabaho lang gamit ang iyang kaugalingong balde

Magbuhat ta ug file sa bucket user1bucket.

Pag-configure sa Minio aron ang user makatrabaho lang gamit ang iyang kaugalingong balde

Sumpaysumpaya ang Minio ubos sa MINIO_ACCESS_KEY=user2. Ang balde user2bucket anaa alang kanato.

Ug wala namo makita ang user1bucket o mga file gikan sa user1bucket.

Pag-configure sa Minio aron ang user makatrabaho lang gamit ang iyang kaugalingong balde

Gihimo ang Telegram chat ni Minio https://t.me/minio_s3_ru

Source: www.habr.com