Hogyan csatlakoztassunk egy EFS-kötetet egy ECS Docker konténerhez – CloudSavvy IT

Avatar Gadam | 2021.03.04.

[ad_1]

Docker logó.

Az AWS rugalmas fájlrendszere (EFS) egy megosztott tárolómeghajtó, amely sok különálló szerverhez csatlakoztatható. Tökéletes pár az AWS Elastic Container Service-jével (ECS), amely kiszolgáló nélküli Docker-tárolókat futtat fürtbeállítások során, és élvezheti az egyszerű megosztott állapot előnyeit.

Miért hasznos ez?

Az EFS egy teljesen felügyelt tárolási szolgáltatás az Amazon-tól. Szerver nélküli, megosztott blokktároló, amely több szerverhez csatlakoztatható. Ez különösen hasznossá teszi az általában hontalan Dockerrel együtt.

Például használhatja ezt a webhely statikus tartalmának és kódjának tárolására, majd futtathatja az összes dolgozói csomópontot az ECS-en, hogy kezelje a tartalom tényleges megjelenítését. Ez kiküszöböli az adatok lemezen történő tárolásának korlátozását, mert a kötetcsatlakozás egy külső meghajtóhoz van kötve, amely az ECS-telepítések során is fennáll.

Míg a Docker-tárolókat futtathatja az ECS-en helyi kötetekkel, az egyetlen, megosztott kötet az egész telepítéshez nagyon hasznos eszköz lehet sok telepítéshez.

EFS-kötet létrehozása

Ennek beállításához létre kell hoznia egy EFS fájlrendszert. Ez meglehetősen egyértelmű, és a EFS Management Console, de érdemes megjegyeznie a kötet azonosítóját, mivel erre szüksége lesz a kötet működtetéséhez.

Hozzon létre egy új fájlrendszert:

Írjon be egy nevet, majd válassza ki azt a VPC-t, ahol az ECS-fürt található.

Ezután megjegyezheti a fájlrendszer azonosítóját, amire később szüksége lesz.

Ha elő kell töltenie az adatokat erre a fájlrendszerre, vagy csak manuálisan kell hozzáadnia vagy módosítania a fájlokat az EFS-kötetben, akkor bármely EC2 példányhoz csatlakoztathatja. Telepítenie kell amazon-efs-utils:

sudo yum install -y amazon-efs-utils

Ezután csatlakoztassa a következő paranccsal, az azonosító használatával:

sudo mount -t efs fs-12345678:/ /mnt/efs

Így közvetlenül megtekintheti és szerkesztheti EFS-kötetének tartalmát, mintha egy másik HDD lenne a szerverén. Győződjön meg róla, hogy van-e nfs-utils telepítve van, hogy mindez megfelelően működjön.

Csatlakozás ECS-telepítéshez

Ezután össze kell kötnie az ECS-t ehhez a kötethez. Hozzon létre egy új feladatdefiníciót a ECS Management Console. Görgessen az aljára, és válassza a „Konfigurálás a JSON-on keresztül” lehetőséget. Ezután cserélje ki az üres „kötetek” kulcsot a következő JSON-ra, a végén adva hozzá a „család” kulcsot:

"volumes": [
        {
            "name": "efs-demo",
            "host": null,
            "dockerVolumeConfiguration": {
                "autoprovision": true,
                "labels": null,
                "scope": "shared",
                "driver": "local",
                "driverOpts": {
                    "type": "nfs",
                    "device": ":/",
                    "o": "addr=fs-XXXXXX.efs.us-east-1.amazonaws.com,nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport"
                }
            }
        }
    ],
"family":"nginx",

Természetesen ki kell cserélni fs-XXXXXX.efs.us-east-1.amazonaws.com az EFS-kötet aktuális címével. Új kötetet kell látnia:

ecs új kötet

Ezt a tároló definíciójában használhatja csatlakoztatási pontként. Válassza a „Tároló hozzáadása” lehetőséget (vagy szerkesszen egy meglévőet), majd a „Tárolás és naplózás” részben válassza ki az újonnan létrehozott kötetet, és adja meg a tároló elérési útját.

add hozzá a csatlakozási pontot

Mentse el a feladatdefiníciót, és amikor egy fürtöt indít ezzel az új definícióval, akkor az összes tároló hozzáférhet a megosztott fájlrendszerhez.

[ad_2]
Source link


Written by Gadam