Kukhazikitsa Minio kuti wogwiritsa ntchito azingogwira ntchito ndi ndowa yake

Minio ndi sitolo yosavuta, yachangu, yogwirizana ndi AWS S3. Minio idapangidwa kuti izikhala ndi data yosasinthika monga zithunzi, makanema, mafayilo a log, zosunga zobwezeretsera. minio imathandizanso kugawidwa, komwe kumapereka mphamvu yolumikizira ma disks angapo ku seva imodzi yosungira zinthu, kuphatikizapo zomwe zili pamakina osiyanasiyana.

Cholinga cha positiyi ndikukonza minio kuti wogwiritsa ntchito aliyense azigwira ntchito ndi chidebe chake.

Nthawi zambiri, Minio ndiyoyenera milandu iyi:

  • kusungirako kosabwerezabwereza pamwamba pa fayilo yodalirika yokhala ndi mwayi wopita ku S3 (kusungirako kakang'ono ndi kamene kamakhala pa NAS ndi SAN);
  • kusungirako kosasinthika pamwamba pa fayilo yosadalirika yokhala ndi mwayi wa S3 (kwa chitukuko ndi kuyesa);
  • kusungirako ndi kubwereza pa gulu laling'ono la ma seva mu rack imodzi ndi mwayi kudzera pa protocol ya S3 (kusungirako kulephera ndi dera lolephera lofanana ndi rack).

Pa machitidwe a RedHat timagwirizanitsa malo osavomerezeka a Minio.

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

Pangani ndi kuwonjezera ku MINIO_ACCESS_KEY ndi MINIO_SECRET_KEY mu /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=

Ngati simugwiritsa ntchito nginx pamaso pa Minio, ndiye kuti muyenera kusintha.

--address 127.0.0.1:9000

pa

--address 0.0.0.0:9000

Tiyeni tiyambitse Minio.

systemctl start minio

Timapanga kulumikizana kwa Minio yotchedwa myminio.

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

Pangani chidebe chogwiritsa ntchito chidebe chimodzi.

minio-mc mb myminio/user1bucket

Pangani chidebe chogwiritsa ntchito chidebe chimodzi.

minio-mc mb myminio/user2bucket

Pangani fayilo yamalamulo 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": ""
    }
  ]
}

Pangani fayilo yamalamulo 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": ""
    }
  ]
}

Pangani wosuta1 ndi password test12345.

minio-mc admin user add myminio user1 test12345

Pangani wosuta2 ndi password test54321.

minio-mc admin user add myminio user2 test54321

Timapanga mfundo mu Minio yotchedwa user1-policy kuchokera pafayilo user1-policy.json.

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

Timapanga mfundo mu Minio yotchedwa user2-policy kuchokera pafayilo user2-policy.json.

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

Tsatirani malamulo a user1 kwa wosuta1.

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

Tsatirani malamulo a user2 kwa wosuta2.

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

Kuyang'ana kugwirizana kwa ndondomeko kwa ogwiritsa ntchito

minio-mc admin user list myminio

Kuyang'ana kugwirizana kwa ndondomeko kwa ogwiritsa ntchito kudzawoneka motere

enabled    user1                 user1-policy
enabled    user2                 user2-policy

Kuti mumveke bwino, pitani pa msakatuli kupita ku adilesi http://ip-сСрвСра-Π³Π΄Π΅-Π·Π°ΠΏΡƒΡ‰Π΅Π½-minio:9000/minio/

Tikuwona kuti tidalumikizana ndi Minio pansi pa MINIO_ACCESS_KEY=user1. Chidebe cha user1 chikupezeka kwa ife.

Kukhazikitsa Minio kuti wogwiritsa ntchito azingogwira ntchito ndi ndowa yake

Sizingatheke kupanga chidebe, popeza palibe Ntchito yofananira mu ndondomekoyi.

Kukhazikitsa Minio kuti wogwiritsa ntchito azingogwira ntchito ndi ndowa yake

Tiyeni tipange fayilo mu bucket user1bucket.

Kukhazikitsa Minio kuti wogwiritsa ntchito azingogwira ntchito ndi ndowa yake

Tiyeni tilumikizane ndi Minio pansi pa MINIO_ACCESS_KEY=user2. Chidebe cha user2bucket chilipo kwa ife.

Ndipo sitikuwona user1bucket kapena mafayilo kuchokera ku user1bucket.

Kukhazikitsa Minio kuti wogwiritsa ntchito azingogwira ntchito ndi ndowa yake

Adapanga macheza a Telegraph pogwiritsa ntchito Minio https://t.me/minio_s3_ru

Source: www.habr.com