Megosztás a következőn keresztül:


A HPC Cache-ügyfélforgalom terheléselosztása

Ez a cikk az Azure HPC Cache összes csatlakoztatási pontjára irányuló ügyfélforgalom kiegyensúlyozásának néhány alapvető módszerét ismerteti.

Minden HPC-gyorsítótár legalább három különböző IP-címmel rendelkezik, és a nagyobb átviteli sebességű gyorsítótárak akár 12-et is tartalmazhatnak. Fontos az összes IP-cím használata az Azure HPC Cache előnyeinek teljes kihasználásához.

Az ügyfél-csatlakoztatások terheléselosztására különböző lehetőségek állnak rendelkezésre:

  • Manuálisan válasszon egy másik csatlakoztatási IP-címet minden ügyfélhez
  • IP-cím rotálásának belefoglalása az ügyfél csatlakoztatási szkriptjeibe
  • Dns-rendszer konfigurálása az ügyfélkérések automatikus átirányításához az összes elérhető cím között (ciklikus időszeleteléses DNS)

A megfelelő terheléselosztási rendszer a munkafolyamat összetettségétől, a gyorsítótárban lévő IP-címek számától és számos egyéb tényezőtől függ. Ha segítségre van szüksége, forduljon az Azure-tanácsadójához, hogy eldöntse, melyik a legjobb megoldás.

IP-címek manuális hozzárendelése

A gyorsítótár csatlakoztatási IP-címei megjelennek az Azure Portal gyorsítótár áttekintési és csatlakoztatási útmutatóinak lapján, valamint a gyorsítótár Azure CLI-vel vagy PowerShell-lel történő létrehozásakor megjelenő sikeres üzeneten.

A Csatlakoztatási utasítások lapon testre szabott csatlakoztatási parancsot hozhat létre minden ügyfélhez. Több parancs létrehozásakor válassza ki az összes gyorsítótár-csatlakoztatási címértéket .

További részletekért olvassa el az Azure HPC Cache csatlakoztatását.

Szkriptes terheléselosztás használata

Az ügyfél-csatlakoztatások programozott forgása többféleképpen is lehetséges a rendelkezésre álló IP-címek között. Bemutatunk két példát.

Példa a parancsszkript csatlakoztatására

Ez a példa csatlakoztatási parancs a kivonatoló függvénnyel cksum és az ügyfél gazdagép nevével automatikusan elosztja az ügyfélkapcsolatokat a HPC Cache összes elérhető IP-címe között. Ha az összes ügyfélszámítógép egyedi gazdagépnevekkel rendelkezik, ezt a parancsot minden ügyfélen futtathatja, hogy minden rendelkezésre álló csatlakoztatási pontot használjon.

mount -o hard,proto=tcp,mountproto=tcp,retry=30 $(X=(10.0.0.{1..3});echo ${X[$(($(hostname|cksum|cut -f 1 -d ' ')%3))]}):/${NAMESPACE} /mnt

Ha ezt a példát szeretné használni a munkafolyamatban, szabja testre a következő kifejezéseket:

  • A kifejezésben X= a gyorsítótár összes csatlakoztatási címének szóközzel tagolt listáját használja rendezési sorrendben.

    A kifejezés (X=(10.0.0.{7..9}) az X változót állítja be a következő csatlakoztatási címek készleteként: {10.0.0.7, 10.0.0.8, 10.0.0.9}. Használja a gyorsítótár alap IP-címét és a gyorsítótár áttekintési oldalán látható pontos címeket. Ha a címek nem egymást követőek, számsorrendben sorolja fel őket.

  • A kifejezésben %3 használja a gyorsítótárazott csatlakoztatási IP-címek tényleges számát (általában 3, 6, 9 vagy 12).

    Használja például, %9 ha a gyorsítótár kilenc ügyfél-csatlakoztatási IP-címet tesz elérhetővé.

  • A kifejezéshez ${NAMESPACE}használja az ügyfél által elérni kívánt tároló célnévtér-elérési útját.

    Használhat egy definiált változót (a példában a NÉVTÉR ), vagy átadhatja a literális értéket.

    A szakasz végén található parancs példája egy literális értéket használ a névtér elérési útjának /blob-target-1.

  • Ha egyéni helyi elérési utat szeretne használni az ügyfélgépeken, módosítsa az értéket /mnt a kívánt elérési útra.

Íme egy példa egy feltöltött ügyfél csatlakoztatási parancsára:

mount -o hard,proto=tcp,mountproto=tcp,retry=30 $(X=(10.7.0.{1..3});echo ${X[$(($(hostname|cksum|cut -f 1 -d ' ')%3))]}):/blob-target-1 /hpc-cache/blob1 

Ciklikus időszeleteléses függvény példája

Ez a kódpéldák az ügyfél IP-címeit véletlenszerű elemként használják az ügyfelek elosztásához a HPC Cache összes elérhető IP-címére.

function mount_round_robin() {

  # to ensure the clients are spread out somewhat evenly the default
  # mount point is based on this client's IP octet4 % number of HPC cache mount IPs.

  declare -a MOUNT_IPS="($(echo ${NFS_IP_CSV} | sed "s/,/ /g"))"
  HASH=$(hostname | cksum | cut -f 1 -d ' ')
  DEFAULT_MOUNT_INDEX=$((${HASH} % ${#MOUNT_IPS[@]}))
  ROUND_ROBIN_IP=${MOUNT_IPS[${DEFAULT_MOUNT_INDEX}]}

  DEFAULT_MOUNT_POINT="${BASE_DIR}/default"

  # no need to write again if it is already there
  if ! grep --quiet "${DEFAULT_MOUNT_POINT}" /etc/fstab; then
      echo "${ROUND_ROBIN_IP}:${NFS_PATH} ${DEFAULT_MOUNT_POINT} nfs hard,proto=tcp,mountproto=tcp,retry=30 0 0" >> /etc/fstab
      mkdir -p "${DEFAULT_MOUNT_POINT}"
      chown nfsnobody:nfsnobody "${DEFAULT_MOUNT_POINT}"
  fi
  if ! grep -qs "${DEFAULT_MOUNT_POINT} " /proc/mounts; then
      retrycmd_if_failure 12 20 mount "${DEFAULT_MOUNT_POINT}" || exit 1
  fi
}

DNS-terheléselosztás használata

Ez a szakasz a DNS-rendszer konfigurálásának alapjait ismerteti az ügyfélkapcsolatok az Azure HPC Cache összes csatlakoztatási pontjára való elosztásához. Ez a módszer nem veszi figyelembe az egyes ügyfelek által generált forgalom mennyiségét, de gondoskodik arról, hogy az ügyfelek egyenletesen oszlanak el a gyorsítótár összes adapterén egy vagy két helyett.

Ez a dokumentum nem tartalmazza a DNS-kiszolgáló azure-környezetben való beállítására és kezelésére vonatkozó utasításokat az ügyfelek számára.

Az ügyfelek NFS protokollt és IP-címeket használó csatlakoztatásához nincs szükség DNS-re. A DNS-re akkor van szükség, ha IP-címek helyett tartományneveket szeretne használni a hardveres NAS-rendszerek eléréséhez, vagy ha a munkafolyamat bizonyos speciális protokollbeállításokat tartalmaz.

A címek ügyfeleknek való terjesztéséhez használt DNS-rendszert nem kell elérnie a HPC Cache-nek. Bizonyos esetekben érdemes lehet egy egyéni DNS-rendszert használni a gyorsítótárhoz, de a rendszer konfigurálása sokkal bonyolultabb, mint az ilyen típusú ügyfél-ciklikus időszeleteléses rendszer beállítása. Ha a HPC Cache DNS-kiszolgálóját egyéni rendszerre szeretné módosítani, forduljon Azure-támogatás.

Ciklikus időszeleteléses eloszlás konfigurálása a gyorsítótár csatlakoztatási pontjaihoz

A ciklikus időszeleteléses DNS (RRDNS) rendszer automatikusan átirányítja az ügyfélkéréseket több cím között.

A rendszer beállításához testre kell szabnia a DNS-kiszolgáló konfigurációs fájlját, hogy amikor csatlakoztatási kéréseket kap a HPC Cache fő tartománycímére, a rendszer hozzárendelje a forgalmat a HPC Cache-rendszer összes csatlakoztatási pontja között. Az ügyfelek kiszolgálói argumentumként a tartománynév használatával csatlakoztatják a HPC Cache-t, és a rendszer automatikusan a következő csatlakoztatási IP-címre irányítja.

Az RRDNS konfigurálásához két fő lépés szükséges:

  1. Módosítsa a DNS-kiszolgáló fájlját named.conf úgy, hogy ciklikus sorrendet állítson be a lekérdezésekhez a HPC Cache-ben. Ez a beállítás azt eredményezi, hogy a kiszolgáló végigjárja az összes rendelkezésre álló IP-értéket. Adjon hozzá az alábbihoz hasonló utasítást:

    options {
        rrset-order {
            class IN A name "hpccache.contoso.com" order cyclic;
        };
    };
    
  2. Konfiguráljon rekordokat és mutatórekordokat minden elérhető IP-címhez az alábbi példában leírtak szerint.

    Ezek a nsupdate parancsok példaként szolgálnak arra, hogy helyesen konfigurálja a DNS-t egy HPC-gyorsítótárhoz a tartománynév hpccache.contoso.com és három csatlakoztatási címmel (10.0.0.10, 10.0.0.11 és 10.0.0.12):

    update add hpccache.contoso.com. 86400 A 10.0.0.10
    update add hpccache.contoso.com. 86400 A 10.0.0.11
    update add hpccache.contoso.com. 86400 A 10.0.0.12
    update add client-IP-10.contoso.com. 86400 A 10.0.0.10
    update add client-IP-11.contoso.com. 86400 A 10.0.0.11
    update add client-IP-12.contoso.com. 86400 A 10.0.0.12
    update add 10.0.0.10.in-addr.arpa. 86400 PTR client-IP-10.contoso.com
    update add 11.0.0.10.in-addr.arpa. 86400 PTR client-IP-11.contoso.com
    update add 12.0.0.10.in-addr.arpa. 86400 PTR client-IP-12.contoso.com
    

    Ezek a parancsok létrehoznak egy A rekordot a HPC Cache csatlakoztatási címeinek mindegyikéhez, és a mutatórekordokat is beállítják a fordított DNS-ellenőrzések megfelelő támogatásához.

    Az alábbi ábra a konfiguráció alapstruktúráját mutatja be.

    Diagram showing client mount point DNS configuration.

Az RRDNS-rendszer konfigurálása után kérje meg az ügyfélszámítógépeket, hogy használják a HPC Cache-cím feloldásához a csatlakoztatási parancsaikban.

Következő lépések