Sales

Ubuntu 20.04 MinIO Cluster Installatie

Fatih Çevik

Fatih Çevik

PlusClouds Auteur

Wat is MinIO?

MinIO is een high-performance object storage service die wordt uitgegeven onder de GNU Affero General Public License V3.0. Als je dit leest, heb je waarschijnlijk ergens gehoord van of gebruik gemaakt van de Amazon S3 storage service. We kunnen zeggen dat de MinIO service vrijwel dezelfde functionaliteiten heeft als S3. Met de MinIO service kun je je eigen S3 server opzetten voor lagere kosten.

Wat is Object Storage?

Object storage neemt elk onderdeel van de data en herontwerpt het als een object. In tegenstelling tot file storage en block storage worden de gegevens in unieke metadata gedeeld over de opslagpool gehouden.

Voorbereiding en Vereisten

In dit artikel gebruiken we het Ubuntu 20.04 besturingssysteem.

  • 4 servers met Ubuntu 20.04 geïnstalleerd

  • Rootrechten op alle nodes

  • Stabiele internetverbinding op de nodes waar de installatie plaatsvindt

Nadat we aan de vereisten hebben voldaan, kunnen we doorgaan met de installatie.

De volgende stappen moeten op alle nodes volledig worden uitgevoerd.

1. Mount een nieuwe schijf naast de schijf waarop het besturingssysteem is geïnstalleerd

Voor de installatie van de MinIO-cluster is het absoluut noodzakelijk om een nieuwe schijf te mounten, naast de schijf waarop uw besturingssysteem is geïnstalleerd.

Met de onderstaande opdracht kunnen we de aangesloten schijven op de machine weergeven.

fdisk -l

 Schijf /dev/xvda:   80   GiB,   85899345920   bytes,   167772160   sectoren
Eenheden: sectoren van 1 * 512 = 512 bytes
Sector grootte (logisch/fysiek): 512 bytes / 512 bytes
I/O grootte (minimum/optimaal): 512 bytes / 512 bytes
Schijflabel type: gpt
Schijfidentificatie: 2666C97D-884F-4535-8F56-5DCE785E1D25

Apparaat Start Eind Sectoren Grootte Type
/dev/xvda1 2048 4095 2048 1M BIOS opstart
/dev/xvda2 4096 2101247 2097152 1G Linux bestandssysteem
/dev/xvda3 2101248 167772126 165670879 79G Linux bestandssysteem




Schijf /dev/xvdb: 20 GiB, 21474836480 bytes, 41943040 sectoren
Eenheden: sectoren van 1 * 512 = 512 bytes
Sector grootte (logisch/fysiek): 512 bytes / 512 bytes
I/O grootte (minimum/optimaal): 512 bytes / 512 bytes

Je zult een soortgelijke output zien. Hier is de /dev/xvda schijf de schijf waarop ons besturingssysteem is geïnstalleerd. De nieuwe schijf die we hebben toegevoegd wordt weergegeven als /dev/xvdb.

Voordat we de mount-operatie voor de nieuwe schijf uitvoeren, zijn er nog een paar dingen die we moeten doen.

Gebruik de onderstaande opdracht om eerst de fysieke ruimte te creëren.

pvcreate /dev/xvdb

Direct daarna maken we de directory aan waar we de schijf gaan mounten.

mkdir /data

Vervolgens creëren we het bestandssysteem voor onze nieuwe schijf met de onderstaande opdracht.

mkfs.ext4 /dev/xvdb

Na het creëren van het bestandssysteem voeren we de laatste stap uit om de mount-operatie uit te voeren. We bewerken de configuraties van de schijf die we willen mounten en de mount-directory in het /etc/fstab bestand.

nano /etc/fstab

Zodra we het bestand hebben geopend, voegen we de onderstaande regel toe.

/dev/xvdb /data ext4 defaults,noatime,nofail 0 0

Onze schijf is nu klaar voor de mount-operatie. We voeren de mount-operatie uit met de onderstaande opdracht.

mount -a

Je kunt de mount-operatie bevestigen met de onderstaande opdracht.

df -h

Vergeet niet dat we deze handelingen op alle nodes moeten uitvoeren.

2. Voer de installatie van de MinIO-service uit

Bereid je besturingssysteem voor voordat je de service-installatie uitvoert. Je kunt de onderstaande opdracht gebruiken om de handelingen uit te voeren.

apt update && apt upgrade && apt install wget -y

Vervolgens download je de MinIO service en geef je de benodigde rechten.

wget -O /usr/local/bin/minio https://dl.minio.io/server/minio/release/linux-amd64/minio

chmod +x /usr/local/bin/minio

We maken en bewerken een servicebestand voor MinIO in de directory waar onze systeemservices zich bevinden.

nano /lib/systemd/system/minio.service

Kopieer en plak de onderstaande regels en sla het bestand op.

 [Unit]

Beschrijving =minio

Documentatie =https://docs.min.io

Wilten =network-online.target

Na =network-online.target

AssertFileIsExecutable =/usr/local/bin/minio

[Service]

Werkdirectory =/usr/local/

Gebruiker =root

Groep =root

Omgevingsbestand =/etc/default/minio

ExecStart =/usr/local/bin/minio server $MINIO_OPTS \
--console-address ":9001"

Herstarten =altijd

LimietNOFILE =65536

TimeoutStopSec =oneindig

SendSIGKILL = nee

[Install]

GewenstDoor =multi-user.target

Vervolgens maken we ons MinIO configuratiebestand aan en bewerken we het.

nano /etc/default/minio

Kopieer en plak de onderstaande regels. Vergeet niet de vereiste plaatsen met je eigen gegevens te vervangen.

 MINIO_OPTS=  "http://hostname1:9000/data     http://hostname2:9000/data         http://hostname3:9000/data         http://hostname4:9000/data     "  

MINIO_ACCESS_KEY= "Een veilige key van minstens 16 tekens die als gebruikersinformatie zal dienen"

MINIO_SECRET_KEY= "Een console toegangswachtwoord van minstens 16 tekens"

Als je al deze stappen op alle nodes hebt uitgevoerd, is het enige wat je nog hoeft te doen, de MinIO service op elke node één voor één te starten.

systemctl daemon-reload systemctl enable minio systemctl start minio.service

En tot slot kun je met de onderstaande opdracht bevestigen dat je cluster actief is.

systemctl status minio.service

Je MinIO-cluster is nu klaar voor gebruik. Tot de volgende keer :)