Wat is EFS (Elastic File System) in AWS en het te gebruiken
Amazon Elastic File System(EFS) biedt een NFS bestandssysteem voor gebruik met AWS Cloud diensten en on-premises bronnen dat eenvoudig, schaalbaar en volledig beheerd is. We kunnen dit bestandssysteem zowel op AWS Cloud als op onze on-premises servers mounten. Het is gebouwd om on-demand te schalen, groeit en krimpt automatisch. Dat betekent dat het kan groeien en zijn capaciteit kan verminderen naarmate we er bestanden op toevoegen of verwijderen. Het is een alternatief voor onze verouderde NFS Server.
Amazon EFS kan snel en eenvoudig worden aangemaakt vanuit de Web Console van AWS. Deze dienst beheert de infrastructuur voor ons, wat betekent dat we de complexiteit van het inzetten, patchen en onderhouden van complexe bestandssysteem configuraties kunnen vermijden.
Amazon EFS ondersteunt het Network File System versie 4 (NFSv4.1 en NFSv4.0) protocol.
Om meer over EFS te leren, bezoek de AWS Officiƫle Pagina hier.
In dit artikel richten we ons op het maken van een eenvoudig EFS bestandssysteem en het mounten ervan op Ubuntu EC2 instantie.
Voor we verder gaan, neem ik aan dat je vertrouwd bent met EC2 instances en als je dat niet bent en wilt leren hoe je een Ubuntu 18.04 EC2 Instance maakt vanuit de AWS Console, klik dan hier.
Vereisten
- AWS Account(Maak aan als je er geen hebt).
- Ubuntu EC2 Instance.
Wat zullen we doen?
- Log in op AWS.
- Maak EFS aan
- Monteer EFS op EC2.
Inloggen op AWS
Klikhier om naar de AWS login pagina te gaan.
Als we op de bovenstaande link klikken, zien we een webpagina als volgt waar we moeten inloggen met onze inloggegevens.
Als je met succes inlogt op je account, zie je het scherm als volgt.
EFS aanmaken
Om je eerste EFS File System op AWS te maken, zoek je naar EFS en klik je op het resultaat.
Je ziet het hoofddashboard van EFS. Hier kun je wat lezen over EFS.
Om EFS aan te maken klik je op “Create file system”.
Kies op de pagina “Configure Network Access” de VPC en selectievakjes voor Subnets waarin je een EFS wilt maken en klik op “Next Step”. Je kunt kiezen welke VPC beschikbaar is in de regio waarin je het EFS maakt.
Geef “key:value” op als je tags aan het EFS wilt toevoegen, je kunt “Lifecycle Policy” inschakelen zodat het bestandssysteem de goedkopere Infrequent Access opslagklasse gebruikt, hou het voorlopig op None. Houd de doorvoer en prestatiemodus zoals ze zijn.
Schakel geen versleuteling in en ga verder met standaard, klik op “Next Step”. Je kunt dit later nog eens proberen als je dat wilt.
Houd al deze opties op standaard en klik op “Next Step”.
Bekijk de configuraties die we deden en klik op “Create file system”.
Je ziet dat het aanmaken gelukt is en dat er mount targets worden aangemaakt. Wacht tot de toestand van Mount Target verandert in Available.
Zodra de Mount target toestand verandert in Available, zijn we klaar om ze op onze EC2 instance te mounten.
Ondertussen kun je de mount instructies bekijken.
Voordat we nu verbinding maken met de EC2 instance, moeten we de beveiligingsgroep van het EFS toevoegen aan EC2’s beveiligingsgroep.
Ga naar de instantie waarop je het door ons gemaakte EFS wilt aankoppelen en open zijn beveiligingsgroep.
Bewerk “Inkomende regels”.
Geef hier de beveiligingsgroep van de EFS toegang tot de NFS poort en sla de regels op.
Koppel EFS aan EC2
Nu zijn we klaar om het EFS op EC2 te mounten.
Maak verbinding met de instantie en werk de lokale pakket repo bij.
sudo apt-get update
Installeer nfs-common op de instantie.
sudo apt install nfs-common
Installeer binutils
sudo apt-get -y install binutils
Kloon efs-utils
git clone https://github.com/aws/efs-utils
Verander de map
cd efs-utils/
Bouw het pakket
./build-deb.sh
Installeerhet efs-utils pakket
sudo apt-get -y install ./build/amazon-efs-utils*deb
Maak een map waarin je het EFS wilt mounten
sudo mkdir efs
Monteer met behulp van de EFS mount helper:
Nu kun jeMount het EFS op je lokale directory met
sudo mount -t efs fs-218e3690:/ efs
Mount met behulp van de NFS client:
Ontmount eerst de in de vorige stap gemounte map.
sudo umount /home/ubuntu/efs
Monteer het EFS
sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-218e3690.efs.eu-west-3.amazonaws.com:/ efs
Monteer met de EFS mount helper en de TLS mount optie:
Ontkoppel eerst de in de vorige stap aangekoppelde map.
sudo umount /home/ubuntu/efs
Monteer het EFS
sudo mount -t efs -o tls fs-218e3690:/ efs
Conclusie
In dit artikel leren we een eenvoudig EFS bestandssysteem te maken. We probeerden het EFS bestandssysteem op Ubuntu 18.04 EC2 instantie te mounten met verschillende beschikbare opties. Je kunt het EFS naar eigen behoefte aanpassen en aanmaken als je vertrouwd raakt met de basis ervan.