Ịtọlite ​​Minio ka onye ọrụ nwee ike iji bọket nke ya rụọ ọrụ

Minio bụ ụlọ ahịa ihe dị mfe, ngwa ngwa, AWS S3 dakọtara. Emebere Minio iji webata data na-edoghị anya dị ka foto, vidiyo, faịlụ ndekọ, ndabere. minio na-akwado ọnọdụ ekesa, nke na-enye ike ijikọ ọtụtụ diski na otu ihe nkesa nchekwa ihe, gụnyere ndị dị na igwe dị iche iche.

Ebumnuche nke post a bụ ịhazi minio ka onye ọrụ ọ bụla nwee ike iji naanị bọket nke ya rụọ ọrụ.

N'ozuzu, Minio dabara maka ikpe ndị a:

  • nchekwa na-abụghị ihe ngbanwe n'elu usoro faịlụ a pụrụ ịdabere na ya na ịnweta site na S3 (nchekwa obere na ọkara na-akwado na NAS na SAN);
  • nchekwa na-abụghị nke a na-emegharị n'elu usoro faịlụ a na-apụghị ịdabere na ya na ohere S3 (maka mmepe na ule);
  • nchekwa na nmegharị na obere ìgwè nke sava n'otu rack nwere ohere site na S3 protocol (nchekwa ọdịda nwere ngalaba ọdịda nke ruru rack).

Na sistemu RedHat anyị jikọtara ebe nchekwa Minio na-akwadoghị.

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

Mepụta ma tinye na MINIO_ACCESS_KEY na MINIO_SECRET_KEY na /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=

Ọ bụrụ na ịgaghị eji nginx tupu Minio, mgbe ahụ ịkwesịrị ịgbanwe.

--address 127.0.0.1:9000

on

--address 0.0.0.0:9000

Ka anyị malite Minio.

systemctl start minio

Anyị na-emepụta njikọ na Minio a na-akpọ myminio.

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

Mepụta onye ọrụ ịwụ1bucket.

minio-mc mb myminio/user1bucket

Mepụta onye ọrụ ịwụ2bucket.

minio-mc mb myminio/user2bucket

Mepụta faịlụ amụma 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": ""
    }
  ]
}

Mepụta faịlụ amụma 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": ""
    }
  ]
}

Mepụta onye ọrụ1 jiri akara paswọọdụ12345.

minio-mc admin user add myminio user1 test12345

Mepụta onye ọrụ2 jiri akara paswọọdụ54321.

minio-mc admin user add myminio user2 test54321

Anyị na-emepụta amụma na Minio a na-akpọ user1-policy site na faịlụ user1-policy.json.

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

Anyị na-emepụta amụma na Minio a na-akpọ user2-policy site na faịlụ user2-policy.json.

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

Tinye iwu onye ọrụ1-atụmatụ onye ọrụ1.

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

Tinye iwu onye ọrụ2-atụmatụ onye ọrụ2.

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

Na-enyocha njikọ nke iwu na ndị ọrụ

minio-mc admin user list myminio

Ịlele njikọ nke iwu na ndị ọrụ ga-adị ka nke a

enabled    user1                 user1-policy
enabled    user2                 user2-policy

Maka idoanya, gaa na ihe nchọgharị ahụ gaa na adreesị http://ip-сервера-где-запущен-minio:9000/minio/

Anyị na-ahụ na anyị jikọọ na Minio n'okpuru MINIO_ACCESS_KEY=onye ọrụ1. The user1bucket ịwụ dị anyị.

Ịtọlite ​​Minio ka onye ọrụ nwee ike iji bọket nke ya rụọ ọrụ

Ọ gaghị ekwe omume ịmepụta ịwụ, ebe ọ bụ na ọ dịghị Omume kwekọrọ na iwu.

Ịtọlite ​​Minio ka onye ọrụ nwee ike iji bọket nke ya rụọ ọrụ

Ka anyị mepụta faịlụ n'ime onye ọrụ ịwụ1bucket.

Ịtọlite ​​Minio ka onye ọrụ nwee ike iji bọket nke ya rụọ ọrụ

Ka anyị jikọọ na Minio n'okpuru MINIO_ACCESS_KEY=user2. The user2bucket ịwụ dị anyị.

Ma anyị anaghị ahụ ma user1bucket ma ọ bụ faịlụ si user1bucket.

Ịtọlite ​​Minio ka onye ọrụ nwee ike iji bọket nke ya rụọ ọrụ

Jiri Minio mepụta nkata telegram https://t.me/minio_s3_ru

isi: www.habr.com