Minio on yksinkertainen, nopea ja AWS S3 -yhteensopiva objektikauppa. Minio on suunniteltu isännöimään jäsentämätöntä dataa, kuten valokuvia, videoita, lokitiedostoja ja varmuuskopioita. minio tukee myös hajautettua tilaa, joka tarjoaa mahdollisuuden liittää useita levyjä yhteen objektin tallennuspalvelimeen, mukaan lukien eri koneissa sijaitsevat levyt.
Tämän postauksen tarkoituksena on määrittää minio niin, että jokainen käyttäjä voi työskennellä vain omalla ämpärillään.
Yleensä Mini soveltuu seuraaviin tilanteisiin:
- replikoimaton tallennus suojatun tiedostojärjestelmän päällä S3-käytöllä (pieni ja keskikokoinen tallennustila, jota isännöidään NAS:ssa ja SANissa);
- tallennus ilman replikointia epäluotettavassa tiedostojärjestelmässä, jossa on pääsy S3:n kautta (kehitystä ja testausta varten);
- tallennustila replikoinnilla pienessä ryhmässä palvelimia yhdessä telineessä ja pääsy S3-protokollan kautta (vikavarasto, jonka vikaverkkoalue on sama kuin teline).
RedHat-järjestelmissä yhdistämme epävirallisen Minio-arkiston.
yum -y install yum-plugin-copr
yum copr enable -y lkiesow/minio
yum install -y minio minio-mc
Luomme ja lisäämme avaimet MINIO_ACCESS_KEY ja MINIO_SECRET_KEY tiedostossa /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=
Jos et käytä nginxiä ennen Miniota, sinun on vaihdettava.
--address 127.0.0.1:9000
päälle
--address 0.0.0.0:9000
Aloitamme Minon.
systemctl start minio
Luomme yhteyden Minoon nimeltä myminio.
minio-mc config host add myminio http://localhost:9000 MINIO_ACCESS_KEY
MINIO_SECRET_KEY
Luo ryhmä user1bucket.
minio-mc mb myminio/user1bucket
Luo ryhmä user2bucket.
minio-mc mb myminio/user2bucket
Luo käytäntötiedosto 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": ""
}
]
}
Luo käytäntötiedosto 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": ""
}
]
}
Luo käyttäjä user1 salasanalla test12345.
minio-mc admin user add myminio user1 test12345
Luo käyttäjä user2 salasanalla test54321.
minio-mc admin user add myminio user2 test54321
Luo Miniossa käytäntö, jonka nimi on user1-policy user1-policy.json-tiedostosta.
minio-mc admin policy add myminio user1-policy user1-policy.json
Luo Miniossa käytäntö, jonka nimi on user2-policy user2-policy.json-tiedostosta.
minio-mc admin policy add myminio user2-policy user2-policy.json
Käytämme käyttäjä1-käytäntöä käyttäjäkäyttäjä1:een.
minio-mc admin policy set myminio user1-policy user=user1
Käytämme käyttäjä2-käytäntöä käyttäjäkäyttäjä2:een.
minio-mc admin policy set myminio user2-policy user=user2
Käytäntöjen yhteyttä käyttäjiin tarkistetaan
minio-mc admin user list myminio
Käytäntöjen yhteyden tarkistaminen käyttäjiin on jotain tällaista
enabled user1 user1-policy
enabled user2 user2-policy
Selvyyden vuoksi käymme selaimen läpi osoitteessa
Näemme, että olemme muodostaneet yhteyden Minioon kohdassa MINIO_ACCESS_KEY=user1. Bucket user1bucket on käytettävissämme.
Ryhmän luominen ei onnistu, koska käytännössä ei ole vastaavaa toimintoa.
Luodaan tiedosto ämpäriin user1bucket.
Yhdistä Minioon kohdassa MINIO_ACCESS_KEY=user2. Bucket user2bucket on käytettävissämme.
Emme näe käyttäjä1bucketia tai tiedostoja käyttäjä1bucketista.
Minion luoma Telegram-chatin
Lähde: will.com