Ukusetha i-Minio ukuze umsebenzisi akwazi ukusebenza ngebhakede lakhe kuphela

I-Minio isitolo sezinto esilula, esisheshayo, esihambisana ne-AWS S3. I-Minio yakhelwe ukusingatha idatha engahlelekile njengezithombe, amavidiyo, amafayela okungena, izipele. i-minio iphinde isekele imodi esabalalisiwe, ehlinzeka ngekhono lokuxhuma amadiski amaningi kwiseva eyodwa yokugcina into, kuhlanganise nalawo atholakala emishinini ehlukene.

Inhloso yalokhu okuthunyelwe ukulungisa i-minio ukuze umsebenzisi ngamunye akwazi ukusebenza ngebhakede lakhe kuphela.

Ngokuvamile, i-Minio ifanele amacala alandelayo:

  • isitoreji esingaphindaphindi ngaphezulu kwesistimu yefayela ethembekile enokufinyelela nge-S3 (isitoreji esincane nesiphakathi esingethwe ku-NAS ne-SAN);
  • isitoreji esingaphindiselwe phezu kwesistimu yefayela engathembekile enokufinyelela kwe-S3 (yokuthuthukiswa nokuhlola);
  • isitoreji esinokuphindaphinda eqenjini elincane lamaseva endaweni eyodwa enokufinyelela ngephrothokholi ye-S3 (isitoreji esihlulekile esinesizinda sokwehluleka esilingana nerack).

Kuzinhlelo ze-RedHat sixhuma inqolobane engekho emthethweni ye-Minio.

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

Khiqiza futhi wengeze ku-MINIO_ACCESS_KEY naku-MINIO_SECRET_KEY ku-/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=

Uma ungeke usebenzise i-nginx ngaphambi kwe-Minio, kuzomele ushintshe.

--address 127.0.0.1:9000

on

--address 0.0.0.0:9000

Masiqalise i-Minio.

systemctl start minio

Sakha uxhumano ku-Minio olubizwa nge-myminio.

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

Dala ibhakede lomsebenzisi1ibhakede.

minio-mc mb myminio/user1bucket

Dala ibhakede lomsebenzisi2ibhakede.

minio-mc mb myminio/user2bucket

Dala ifayela lenqubomgomo 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": ""
    }
  ]
}

Dala ifayela lenqubomgomo 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": ""
    }
  ]
}

Dala umsebenzisi1 nge-password test12345.

minio-mc admin user add myminio user1 test12345

Dala umsebenzisi2 nge-password test54321.

minio-mc admin user add myminio user2 test54321

Sakha inqubomgomo ku-Minio ebizwa ngokuthi i-user1-policy kusuka kufayela elithi user1-policy.json.

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

Sakha inqubomgomo ku-Minio ebizwa ngokuthi i-user2-policy kusuka kufayela elithi user2-policy.json.

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

Sebenzisa inqubomgomo yenqubomgomo yomsebenzisi1 kumsebenzisi1.

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

Sebenzisa inqubomgomo yenqubomgomo yomsebenzisi2 kumsebenzisi2.

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

Ihlola ukuxhumeka kwezinqubomgomo kubasebenzisi

minio-mc admin user list myminio

Ukuhlola ukuxhumeka kwezinqubomgomo kubasebenzisi kuzobukeka kanje

enabled    user1                 user1-policy
enabled    user2                 user2-policy

Ukuze uthole ukucaca, dlula kusiphequluli uye ekhelini http://ip-сСрвСра-Π³Π΄Π΅-Π·Π°ΠΏΡƒΡ‰Π΅Π½-minio:9000/minio/

Siyabona ukuthi sixhume ku-Minio ngaphansi kwe-MINIO_ACCESS_KEY=user1. Ibhakede elingu-user1bucket liyatholakala kithi.

Ukusetha i-Minio ukuze umsebenzisi akwazi ukusebenza ngebhakede lakhe kuphela

Ngeke kwenzeke ukwenza ibhakede, njengoba kungekho Isenzo esihambisanayo kunqubomgomo.

Ukusetha i-Minio ukuze umsebenzisi akwazi ukusebenza ngebhakede lakhe kuphela

Masidale ifayela ku-bucket user1bucket.

Ukusetha i-Minio ukuze umsebenzisi akwazi ukusebenza ngebhakede lakhe kuphela

Masixhume ku-Minio ngaphansi kwe-MINIO_ACCESS_KEY=user2. Ibhakede le-user2bucket liyatholakala kithi.

Futhi asiliboni ibucket1 lomsebenzisi noma amafayela asuka ku-user1bucket.

Ukusetha i-Minio ukuze umsebenzisi akwazi ukusebenza ngebhakede lakhe kuphela

Udale ingxoxo yeTelegramu usebenzisa i-Minio https://t.me/minio_s3_ru

Source: www.habr.com