Minio sadə, sürətli və AWS S3 uyğun obyekt mağazasıdır. Minio, fotoşəkillər, videolar, log faylları, ehtiyat nüsxələri kimi strukturlaşdırılmamış məlumatları yerləşdirmək üçün nəzərdə tutulmuşdur. minio həmçinin müxtəlif maşınlarda yerləşənlər də daxil olmaqla birdən çox diski bir obyekt saxlama serverinə qoşmaq imkanı verən paylanmış rejimi dəstəkləyir.
Bu yazının məqsədi minio qurmaqdır ki, hər bir istifadəçi yalnız öz vedrəsi ilə işləyə bilsin.
Ümumiyyətlə, Minio aşağıdakı hallar üçün uyğundur:
- S3 girişi olan təhlükəsiz fayl sisteminin üstündə təkrarlanmayan yaddaş (NAS və SAN-da yerləşdirilmiş kiçik və orta yaddaş);
- S3 üzərindən çıxışı olan etibarsız fayl sistemi üzərində təkrarlanmadan saxlama (inkişaf və sınaq üçün);
- S3 protokolu ilə çıxışı olan bir rəkdə kiçik serverlər qrupunda replikasiya ilə saxlama (raka bərabər olan nasazlıq domeni ilə əvəzetmə yaddaşı).
RedHat sistemlərində biz qeyri-rəsmi Minio repozitoriyasını birləşdiririk.
yum -y install yum-plugin-copr
yum copr enable -y lkiesow/minio
yum install -y minio minio-mc
Biz /etc/minio/minio.conf-da MINIO_ACCESS_KEY və MINIO_SECRET_KEY açarlarını yaradırıq və əlavə edirik.
# 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=
Minio-dan əvvəl nginx-dən istifadə etməyəcəksinizsə, dəyişdirməlisiniz.
--address 127.0.0.1:9000
haqqında
--address 0.0.0.0:9000
Minio-ya başlayırıq.
systemctl start minio
Minio ilə myminio adlı bir əlaqə yaradırıq.
minio-mc config host add myminio http://localhost:9000 MINIO_ACCESS_KEY
MINIO_SECRET_KEY
Bucket user1bucket yaradın.
minio-mc mb myminio/user1bucket
Bucket user2bucket yaradın.
minio-mc mb myminio/user2bucket
user1-policy.json siyasət faylı yaradın.
{
"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": ""
}
]
}
user2-policy.json siyasət faylı yaradın.
{
"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": ""
}
]
}
parol test1 ilə istifadəçi user12345 yaradın.
minio-mc admin user add myminio user1 test12345
parol test2 ilə istifadəçi user54321 yaradın.
minio-mc admin user add myminio user2 test54321
Minio-da user1-policy.json faylından user1-policy adlı siyasət yaradın.
minio-mc admin policy add myminio user1-policy user1-policy.json
Minio-da user2-policy.json faylından user2-policy adlı siyasət yaradın.
minio-mc admin policy add myminio user2-policy user2-policy.json
İstifadəçi1 siyasətini istifadəçi istifadəçiyə tətbiq edirik.
minio-mc admin policy set myminio user1-policy user=user1
İstifadəçi2 siyasətini istifadəçi istifadəçiyə tətbiq edirik.
minio-mc admin policy set myminio user2-policy user=user2
Siyasətlərin istifadəçilərlə əlaqəsinin yoxlanılması
minio-mc admin user list myminio
Siyasətlərin istifadəçilərlə əlaqəsini yoxlamaq bu kimi bir şey olacaq
enabled user1 user1-policy
enabled user2 user2-policy
Aydınlıq üçün ünvandakı brauzerdən keçirik
MINIO_ACCESS_KEY=user1 altında Minio-ya qoşulduğumuzu görürük. Bucket user1bucket bizim üçün mövcuddur.
Siyasətdə müvafiq Fəaliyyət olmadığı üçün vedrə yaratmaq işləməyəcək.
Bucket user1bucket-də fayl yaradaq.
MINIO_ACCESS_KEY=user2 altında Minio-ya qoşulun. Bucket user2bucket bizim üçün mövcuddur.
Biz nə user1bucket, nə də user1bucket-dən faylları görmürük.
Minio tərəfindən Telegram çatı yaradılmışdır
Mənbə: www.habr.com