Minio یو ساده، ګړندی، د AWS S3 مناسب توکي پلورنځی دی. مینیو د غیر منظم شوي ډیټا لکه عکسونو ، ویډیوګانو ، لاګ فایلونو ، بیک اپونو کوربه کولو لپاره ډیزاین شوی. minio د توزیع شوي حالت ملاتړ هم کوي، کوم چې د یو اعتراض ذخیره کولو سرور ته د ډیری ډیسکونو سره نښلولو وړتیا برابروي، په شمول په مختلفو ماشینونو کې موقعیت لري.
د دې پوسټ هدف د مینیو تنظیم کول دي ترڅو هر کارن کولی شي یوازې د خپل بالټ سره کار وکړي.
په عموم کې، Minio د لاندې قضیو لپاره مناسب دی:
- د S3 له لارې د لاسرسي سره د اعتبار وړ فایل سیسټم په سر کې غیر نقل ذخیره کول (کوچنی او متوسط ذخیره په NAS او SAN کې کوربه شوی)؛
- د S3 لاسرسي سره د غیر معتبر فایل سیسټم په سر کې غیر نقل شوي ذخیره (د پراختیا او ازموینې لپاره)؛
- د S3 پروتوکول له لارې د لاسرسي سره په یوه ریک کې د سرورونو په کوچنۍ ډله کې د نقل سره ذخیره (د ناکامۍ ډومین سره د ناکامۍ ذخیره د ریک سره مساوي).
په RedHat سیسټمونو کې موږ غیر رسمي Minio ذخیره وصل کوو.
yum -y install yum-plugin-copr
yum copr enable -y lkiesow/minio
yum install -y minio minio-mc
په /etc/minio/minio.conf کې MINIO_ACCESS_KEY او MINIO_SECRET_KEY تولید او اضافه کړئ.
# 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 څخه مخکې nginx ونه کاروئ، نو تاسو باید بدلون ته اړتیا ولرئ.
--address 127.0.0.1:9000
په
--address 0.0.0.0:9000
راځئ چې Minio پیل کړو.
systemctl start minio
موږ Minio ته د myminio په نوم پیوستون جوړوو.
minio-mc config host add myminio http://localhost:9000 MINIO_ACCESS_KEY
MINIO_SECRET_KEY
د بالټ یوزر 1 بالټ جوړ کړئ.
minio-mc mb myminio/user1bucket
د بالټ یوزر 2 بالټ جوړ کړئ.
minio-mc mb myminio/user2bucket
د پالیسۍ فایل 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": ""
}
]
}
د پالیسۍ فایل 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": ""
}
]
}
د پټنوم ټیسټ 1 سره یو کارن کارن 12345 جوړ کړئ.
minio-mc admin user add myminio user1 test12345
د پټنوم ټیسټ 2 سره یو کارن کارن 54321 جوړ کړئ.
minio-mc admin user add myminio user2 test54321
موږ په Minio کې یو پالیسي جوړوو چې د user1-policy په نوم یادیږي د user1-policy.json فایل څخه.
minio-mc admin policy add myminio user1-policy user1-policy.json
موږ په Minio کې یو پالیسي جوړوو چې د user2-policy په نوم یادیږي د user2-policy.json فایل څخه.
minio-mc admin policy add myminio user2-policy user2-policy.json
د کارن یوزر1 پالیسي پلي کړئ.
minio-mc admin policy set myminio user1-policy user=user1
د کارن یوزر2 پالیسي پلي کړئ.
minio-mc admin policy set myminio user2-policy user=user2
د کاروونکو سره د پالیسیو پیوستون چک کول
minio-mc admin user list myminio
د کاروونکو سره د پالیسیو پیوستون چک کول به داسې ښکاري
enabled user1 user1-policy
enabled user2 user2-policy
د وضاحت لپاره، د براوزر له لارې پتې ته لاړ شئ
موږ ګورو چې موږ د MINIO_ACCESS_KEY=user1 لاندې Minio سره وصل شوي یو. د یوزر 1 بکس بالټ موږ ته شتون لري.
دا به ممکنه نه وي چې یو بالټ رامینځته کړي، ځکه چې په پالیسۍ کې ورته عمل شتون نلري.
راځئ چې په بالټ user1bucket کې یو فایل جوړ کړو.
راځئ چې د MINIO_ACCESS_KEY=user2 لاندې Minio سره وصل شو. د user2bucket بالټ موږ ته شتون لري.
او موږ نه د یوزر 1 بالټ یا د یوزر 1 بالټ څخه فایلونه نه ګورو.
د مینیو په کارولو سره د ټیلیګرام چیٹ رامینځته کړی
سرچینه: www.habr.com