Подключение кластера Avere vFXT

Чтобы подключить клиентские компьютеры к кластеру vFXT, выполните приведенные ниже шаги.

  1. Решите, как распределить нагрузку трафика клиентов между узлами кластера. Подробные сведения см. разделе Распределение нагрузки клиента.
  2. Определите IP-адрес и путь соединения для подключения.
  3. Выполните команду подключения с соответствующими аргументами.

Распределение нагрузки клиента

Чтобы помочь распределить клиентские запросы между всеми узлами в кластере, подключите клиенты к полному диапазону IP-адресов, ориентированных на клиенты. Существует несколько простых способов автоматизации этой задачи.

Совет

Для больших или сложных систем могут подходить другие методы балансировки нагрузки. Чтобы получить помощь, откройте запрос в службу поддержки.

Если для автоматической балансировки нагрузки на стороне сервера вы предпочитаете использовать DNS-сервер, вам необходимо настроить собственный DNS-сервер и управлять им в Azure. В таком случае вы можете настроить циклический DNS для кластера vFXT, выполнив инструкции, приведенные в этой статье.

Пример сценария сбалансированного подключения клиентов

В этом примере кода IP-адреса клиентов используются в качестве элемента рандомизации для распределения клиентов на все доступные IP-адреса кластера vFXT.

function mount_round_robin() {
    # to ensure the nodes are spread out somewhat evenly the default
    # mount point is based on this node's IP octet4 % vFXT node count.
    declare -a AVEREVFXT_NODES="($(echo ${NFS_IP_CSV} | sed "s/,/ /g"))"
    OCTET4=$((`hostname -i | sed -e 's/^.*\.\([0-9]*\)/\1/'`))
    DEFAULT_MOUNT_INDEX=$((${OCTET4} % ${#AVEREVFXT_NODES[@]}))
    ROUND_ROBIN_IP=${AVEREVFXT_NODES[${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
}

Приведенная выше функция является частью примера с пакетной службой, доступного на сайте GitHub.

Создание команды подключения

Примечание.

Если вы не создали контейнер больших двоичных объектов одновременно с созданием кластера Avere vFXT, то перед попыткой подключения клиентов выполните инструкции, описанные в статье Настройка хранилища.

Со стороны клиента команда mount сопоставляет виртуальный сервер (vserver) в кластере vFXT с путем в локальной файловой системе. Формат — mount <vFXT path> <local path> {options}.

Команда подключения (mount) состоит из трех элементов:

  • путь vFXT — сочетание IP-адреса и пути соединения с пространством имен в кластере, как описано ниже;
  • локальный путь (путь в клиенте);
  • параметры команды подключения (перечислены в разделе Аргументы команды подключения).

Соединение и IP

Путь к vserver представляет собой комбинацию его IP-адреса и пути к соединению по пространству имен. Соединение по пространству имен является виртуальным путем, определенным при добавлении системы хранения.

Если кластер был создан вместе с хранилищем BLOB-объектов, в этом контейнере используется путь к пространству имен /msazure.

Пример: mount 10.0.0.12:/msazure /mnt/vfxt

Если вы добавили хранилище после создания кластера, путь соединения с пространством имен будет иметь значение, указанное в параметре Namespace path (Путь к пространству имен) при создании этого соединения. Например, если вы использовали /avere/files в качестве пути к пространству имен, ваши клиенты подключат путь IP-адрес:/avere/files к своей локальной точке подключения.

IP-адрес представляет собой один из определенных для vserver IP-адресов, ориентированных на клиенты. Диапазон IP-адресов, взаимодействующих с клиентами, можно найти в двух расположениях на панели управления Avere:

  • Таблица VServers (вкладка панели мониторинга):

    Dashboard tab of the Avere Control Panel with the VServer tab selected in the data table below the graph, and the IP address section circled

  • Страница параметров Client Facing Network (Сеть, ориентированная на клиента):

    Settings > VServer > Client Facing Network configuration page with a circle around the Address Range section of the table for a particular vserver

В дополнение к путям, при подключении каждого клиента добавьте описанные ниже аргументы команды подключения.

Аргументы команды подключения

Чтобы обеспечить простое подключение клиента, передайте эти параметры и аргументы в команде подключения:

mount -o hard,proto=tcp,mountproto=tcp,retry=30 ${VSERVER_IP_ADDRESS}:/${NAMESPACE_PATH} ${LOCAL_FILESYSTEM_MOUNT_POINT}

Обязательные параметры Description
hard Нежесткие подключения к кластеру vFXT связаны со сбоями в работе приложений и возможной потерей данных.
proto=netid Этот параметр поддерживает соответствующую обработку сетевых ошибок NFS.
mountproto=netid Этот параметр поддерживает соответствующую обработку сетевых ошибок для операций подключения.
retry=n Задайте значение retry=30, чтобы избежать временных ошибок при подключении. (При подключении переднего плана рекомендуется использовать другое значение.)

Следующие шаги

После подключения клиентов их можно использовать для копирования данных в новый контейнер хранилища BLOB-объектов в кластере. Если вам не нужно заполнять данными новое хранилище, ознакомьтесь с другими ссылками, где описаны дополнительные задачи по настройке.

  • Перемещение данных в основной фильтр кластера. В этой статье представлены сведения об использовании нескольких клиентов и потоков для эффективной загрузки данных.
  • Cluster tuning (Настройка кластера). В этой статье представлены сведения о настройке параметров кластера в соответствии с рабочей нагрузкой.
  • Manage the Avere vFXT cluster (Управление кластером Avere vFXT). В этой статье представлены сведения о запуске или остановке кластера, а также об управлении узлами.