Ho theha Minio e le hore mosebelisi a ka sebetsa ka nkho ea hae feela

Minio ke lebenkele le bonolo, le potlakileng, le lumellanang la AWS S3. Minio e etselitsoe ho amohela data e sa hlophisoang joalo ka linepe, livideo, lifaele tsa log, li-backups. minio e boetse e ts'ehetsa mokhoa o ajoang, o fanang ka bokhoni ba ho hokahanya li-disk tse ngata ho seva se le seng sa polokelo ea ntho, ho kenyeletsoa le tse teng mochining o fapaneng.

Morero oa poso ena ke ho hlophisa minio e le hore mosebelisi e mong le e mong a ka sebetsa ka nkho ea hae feela.

Ka kakaretso, Minio e loketse linyeoe tse latelang:

  • polokelo e se nang phetiso ka holim'a sistimi e tšepahalang ea faele e nang le phihlello ka S3 (polokelo e nyane le e mahareng e tšoaretsoeng NAS le SAN);
  • polokelo e sa kopitsoang ka holim'a sistimi e sa tšepahaleng e nang le phihlello ea S3 (bakeng sa nts'etsopele le tlhahlobo);
  • polokelo ka ho pheta-pheta sehlopheng se senyenyane sa li-server ka rack e le 'ngoe e nang le phihlello ka protocol ea S3 (polokelo e sa sebetseng e nang le sebaka sa ho hloleha se lekanang le rack).

Lits'ebetsong tsa RedHat re hokahanya polokelo ea Minio e seng molaong.

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

Hlahisa le ho eketsa ho MINIO_ACCESS_KEY le MINIO_SECRET_KEY ho /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=

Haeba u ke ke ua sebelisa nginx pele ho Minio, joale u lokela ho fetoha.

--address 127.0.0.1:9000

mabapi le

--address 0.0.0.0:9000

Ha re hlahise Minio.

systemctl start minio

Re theha khokahano ho Minio e bitsoang myminio.

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

Theha bakete mosebedisi1bakete.

minio-mc mb myminio/user1bucket

Theha bakete mosebedisi2bakete.

minio-mc mb myminio/user2bucket

Etsa faele ea leano 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": ""
    }
  ]
}

Etsa faele ea leano 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": ""
    }
  ]
}

Theha mosebelisi1 ka password test12345.

minio-mc admin user add myminio user1 test12345

Theha mosebelisi2 ka password test54321.

minio-mc admin user add myminio user2 test54321

Re theha leano ho Minio le bitsoang user1-policy ho tsoa faeleng user1-policy.json.

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

Re theha leano ho Minio le bitsoang user2-policy ho tsoa faeleng user2-policy.json.

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

Sebelisa leano la leano la mosebelisi ho mosebelisi1.

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

Sebelisa leano la leano la mosebelisi ho mosebelisi2.

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

Ho hlahloba khokahano ea maano le basebelisi

minio-mc admin user list myminio

Ho hlahloba khokahano ea maano ho basebelisi ho tla shebahala tjena

enabled    user1                 user1-policy
enabled    user2                 user2-policy

Bakeng sa ho hlaka, fetela ho sebatli ho ea atereseng http://ip-сервера-где-запущен-minio:9000/minio/

Rea bona hore re hokahane le Minio tlasa MINIO_ACCESS_KEY=user1. Bakete ea mosebelisi e fumaneha ho rona.

Ho theha Minio e le hore mosebelisi a ka sebetsa ka nkho ea hae feela

Ho ke ke ha khoneha ho theha nkho, kaha ha ho na Ketso e lumellanang leano.

Ho theha Minio e le hore mosebelisi a ka sebetsa ka nkho ea hae feela

Ha re theheng faele ka bakete user1bucket.

Ho theha Minio e le hore mosebelisi a ka sebetsa ka nkho ea hae feela

Ha re hokelaneng le Minio tlasa MINIO_ACCESS_KEY=user2. Bakete ea user2bucket e fumaneha ho rona.

'Me ha re bone user1bucket kapa lifaele tse tsoang ho user1bucket.

Ho theha Minio e le hore mosebelisi a ka sebetsa ka nkho ea hae feela

O thehile moqoqo oa Telegraph a sebelisa Minio https://t.me/minio_s3_ru

Source: www.habr.com