1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/fastdfs100-FastCFS

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
fcfs-ops-tool.md 23 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 15.03.2025 23:09 7748a78

Введение в инструменты управления FastCFS

  • fcfs.sh — инструмент для быстрого управления кластерами FastCFS
  • fcfs_conf.sh — инструмент для быстрого создания конфигурационных файлов кластеров FastCFS

1. Введение в fcfs.sh

Файл fcfs.sh является инструментом для быстрой установки и управления кластерами FastCFS. Он полностью зависит от доступа через SSH к серверам и использования команды sudo. Инструмент работает полностью на вашей рабочей станции, требуя никаких серверов, баз данных или чего-либо подобного.

Если вы часто устанавливаете и разрушаете кластеры FastCFS и хотите минимизировать повторяющиеся работы, этот инструмент для вас.

Совет: Этот скрипт поддерживает следующие операционные системы:

  • CentOS 7, CentOS OnClickListener() { startActivity(new Intent(this, MainActivity.class)); } } 8 или выше
  • Red Hat Linux 8 или выше
  • Rocky Linux 8 или выше
  • Fedora Linux 20 или выше
  • Oracle Linux 8 или выше
  • Amazon Linux
  • Alibaba Cloud Linux
  • Debian 10 или выше
  • Ubuntu 18.04 или выше

1.1. Чем этот инструмент может помочь?

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

Он также может обновлять или понижать версию программного обеспечения FastCFS на одном узле или во всем кластере.

Он может переустановить программное обеспечение или перераспределить конфигурационные файлы.### 1.2. Чем этот инструмент не может помочь?

Этот инструмент не является универсальным средством для развертывания; он предназначен только для FastCFS. Он не управляет конфигурацией кластера за пределами распределения конфигурационных файлов на серверах кластера. Вам необходимо предоставить используемые конфигурационные файлы кластера для него.

1.3. Получите fcfs.sh

Получите его с http://fastcfs.net/fastcfs/ops/fcfs.sh и положите в путь bin рабочей станции.

sudo curl -o /usr/bin/fcfs.sh  http://fastcfs.net/fastcfs/ops/fcfs.sh && sudo chmod +x /usr/bin/fcfs.sh

1.4. Условия использования

  • fcfs.settings — настройки управления кластером, находятся в текущей рабочей директории;
  • conf — конфигурационные файлы кластера, находятся в текущей рабочей директории;
  • беспарольный вход в удалённый сервер через SSH, см. также беспарольный вход в SSH.

Вы должны создать независимую рабочую директорию (например, fastcfs-ops) для каждого кластера, положив "fcfs.settings" и "conf" в эту директорию. Все последующие команды для этого кластера должны выполняться в этой же рабочей директории.

1.4.1. fcfs.settings

Файл fcfs.settings включает два поля: fastcfs_version и fuseclient_ips, где fastcfs_version указывает основную версию FastCFS, а fuseclient_ips указывает хосты для развертывания fuse клиента. При обновлении или понижении версий FastCFS вам потребуется изменить поле fastcfs_version на нужную версию.

# Версия кластера FastCFS
fastcfs_version=5.2.0
```# Хосты, на которых будет установлен fuseclient, несколько хостов разделены запятой
fuseclient_ips=10.0.1.14

Совет: используйте версию 5.2.0 и выше при развертывании.

1.4.2. конфигурация

Все файлы конфигурации кластера FastCFS должны быть помещены в рабочую директорию заранее. Конфигурация включает пять поддиректорий:

  • vote — файлы конфигурации для сервера fvote
  • fdir — файлы конфигурации для сервера fdir
  • fstore — файлы конфигурации для сервера fstore
  • auth — файлы конфигурации для сервера fauth
  • fcfs — файлы конфигурации для fuseclient

Пример получения образца конфигурации

mkdir fastcfs-ops
cd fastcfs-ops/
curl -o fcfs-config-sample.tar.gz http://fastcfs.net/fastcfs/ops/fcfs-config-sample.tar.gz
tar -xzvf fcfs-config-sample.tar.gz

Создание файлов конфигурации с помощью fcfs_conf.sh

Вы также можете создать файлы конфигурации кластера FastCFS с помощью fcfs_conf.sh в соответствии со своими потребностями. Смотрите также fcfs_conf.sh

1.5. Безопасный вход без пароля SSH

fcfs.sh будет подключаться к хостам кластера через SSH. Это требует, чтобы рабочая станция, с которой выполняется оболочка, могла подключиться через SSH как root (или sudo пользователь) без пароля к узлам кластера.

Для включения безопасного входа без пароля вам нужно сгенерировать пару ключей RSA для SSH:

ssh-keygen -t rsa -C cfs -f cfs-ssh-key

это сгенерирует следующие файлы:* cfs-ssh-key — приватный ключ

  • cfs-ssh-key.pub — открытый ключ

1.5.1. Размещение приватного ключа

Копируйте файл приватного ключа cfs-ssh-key в текущую директорию пользователя рабочей станции ~/.ssh/, и добавьте следующую фразу в ~/.ssh/config (для каждого хоста):

Host [узел ip]
    HostName [узел имя хоста]
    User [ssh пользователь]
    Port 22
    PubkeyAuthentication yes
    IdentityFile ~/.ssh/cfs-ssh-key

1.5.2. Размещение открытого ключа

Копируйте открытый ключ в файл .ssh/authorized_keys на каждом узле сервера sudo пользователя:

ssh-copy-id -i cfs-ssh-key.pub [имя пользователя]@[узел сервер ip]

и убедитесь, что следующие строки присутствуют в конфигурации SSH сервера:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys

1.6. Введение в команды инструмента

Команды инструмента включают три части: команда, модуль и узел. Команда обязательна, модуль и узел являются необязательными. Использование:

fcfs.sh команда [модуль] [узел]

Команды:* setup — Установка программного обеспечения FastCFS, сокращённая команда, объединяющая установку, конфигурацию и перезапуск

  • install — Установка программного обеспечения FastCFS

  • reinstall — Переустановка программного обеспечения FastCFS

  • remove — Удаление программного обеспечения FastCFS, то же самое что erase

  • erase — Удаление программного обеспечения FastCFS

  • config — Копирование конфигурационных файлов кластера в путь целевой машины

  • start — Запуск всех или одного модуля сервиса в кластере

  • restart — Перезапуск всех или одного модуля сервиса в кластере

  • stop — Остановка всех или одного модуля сервиса в кластере

  • tail — Отображение последней части лога указанного модуля

  • status — Отображение состояния процессов сервиса

  • help — Показывает детали команд и примерыМодули:

  • fvote — Сервер голосования

  • fdir — сервер fastDIR

  • fstore — сервер faststore

  • fauth — Сервер аутентификации FastCFS

  • fuseclient — клиент Fuse FastCFS

Узел:

Вы можете указать отдельный IP-адрес кластера или команда будет выполнена на всех узлах.

1.6.1. Установка FastCFS

Вы можете использовать команду setup, чтобы быстро установить программное обеспечение FastCFS на узлах, затем сконфигурировать и запустить модуль сервиса.

Примеры

Установите полный кластер FastCFS:

fcfs.sh setup

Установите сервер fdir на всех узлах fdir:

fcfs.sh setup fdir

Установите сервер fdir на узле 10.0.1.11:

fcfs.sh setup fdir 10.0.1.11

Узел 10.0.1.11 должен принадлежать кластеру fdir, иначе он завершится ошибкой.

1.6.2. Установка программного обеспечения FastCFS

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

Первый раз вы должны установить все программы на всех узлах (то есть вы не можете указывать модуль и узел). После этого вы можете установить новый узел с параметрами модуля и узла.

Примеры

Установите все программы FastCFS на всех узлах:

fcfs.sh install

Установите сервер fdir на всех узлах fdir:

fcfs.sh install fdir

Установите сервер fdir на узле 10.0.1.11:

fcfs.sh install fdir 10.0.1.11

1.6.3. Обновление программного обеспечения FastCFS

Если вы хотите обновить программное обеспечение FastCFS, вы можете изменить fcfs.settings, заменив поле fastcfs_version новой версией, затем выполнить команду install:> fcfs.sh install

1.6.4. Деобнаруживание программного обеспечения FastCFS

Если вам действительно нужно деобновить программное обеспечение FastCFS до старой версии, вы должны сначала выполнить команду remove:

fcfs.sh remove

или:

fcfs.sh clean

и измените поле fastcfs_version на старую версию, затем выполните команду установки:

fcfs.sh install

1.6.5. Удаление программного обеспечения FastCFS

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

Примеры

Удалить все программы со всех узлов:

fcfs.sh remove

Удалить сервер fdir с всех узлов:

fcfs.sh remove fdir

Удалить сервер fdir с узла 10.0.1.11:

fcfs.sh remove fdir 10.0.1.11

1.6.6. Распределение конфигурационных файлов FastCFS

После установки программного обеспечения FastCFS вам следует выполнить команду config, чтобы распределить конфигурационные файлы на узлы кластера. Если целевое расположение конфигурационных файлов не существует на узле, оно будет создано автоматически.

Примеры

Распределить все модульные конфигурационные файлы на все узлы соответственно:

fcfs.sh config

Распределить конфигурационные файлы сервера fdir на все узлы fdir:

fcfs.sh config fdir

Распределить конфигурационные файлы сервера fdir на узел fdir 10.0.1.11:

fcfs.sh config fdir 10.0.1.11

1.6.7. Управление кластеромКоманды управления включают начать, остановить, перезапустить. Вы можете выполнять операции со всеми модулями или одним модулем на всех узлах одновременно, а также с отдельным узлом для одного модуля.Если вы хотите выполнить операцию с отдельным узлом, вы должны указать имя хоста узла после имени модуля, то есть нельзя выполнять операции со всеми модулями на одном узле одновременно.

Запустить все службы на всех узлах:

fcfs.sh start

Перезапустить службу fdir на всех узлах fdir:

fcfs.sh restart fdir

Остановить службу fdir на узле fdir 10.0.1.11:

fcfs.sh stop fdir 10.0.1.11

1.6.8. Отображение журналов кластера

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

Пример

Отобразить последние 100 строк журнала сервера fdir:

fcfs.sh tail fdir 10.0.1.11 -n 100

или:

fcfs.sh tail fdir 10.0.1.11 -100

Отобразить последние 10 строк каждого журнала сервера fdir:

fcfs.sh tail fdir

1.6.9. Отображение состояния сервисов кластера

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

Пример

Отобразить состояние процесса службы fdir:

fcfs.sh status fdir 10.0.1.11

Отобразить состояние каждого процесса службы fdir:

fcfs.sh status fdir

Отображение состояния всех служебных процессов:

fcfs.sh status

2. Введение в fcfs_conf.shФайл fcfs_conf.sh является операционным инструментом для быстрого генерирования конфигурационных файлов кластера FastCFS. Он полностью зависит от доступа к локальному файлу fcfs_conf.settings через командную оболочку Bash. Программа работает полностью на вашей рабочей станции, не требует никаких серверов, баз данных или чего-либо подобного.Если вы хотите быстро сгенерировать конфигурационные файлы кластера со специфическими IP-адресами серверов, это то, что вам нужно.

2.1. Получите fcfs_conf.sh

Скачайте его с http://fastcfs.net/fastcfs/ops/fcfs_conf.sh и поместите в путь bin рабочей станции.

sudo curl -o /usr/bin/fcfs_conf.sh http://fastcfs.net/fastcfs/ops/fcfs_conf.sh && sudo chmod +x /usr/bin/fcfs_conf.sh

2.2. Условия использования fcfs_conf.sh

  • fcfs_conf.settings — настройки управления кластером для создания конфигурационных файлов, находятся в текущей рабочей директории.

Вы должны создать независимую рабочую директорию (например, fastcfs-ops) для каждого кластера, а затем поместить "fcfs_conf.settings" в эту директорию. Все последующие команды для fcfs_conf.sh должны выполняться в этой же рабочей директории.

2.2.1. fcfs_conf.settings

Файл fcfs_conf.settings включает шесть полей: fastcfs_version и fuseclient_ips, где fastcfs_version указывает основную версию FastCFS, а fuseclient_ips указывает хосты для развертывания fuse клиентов. При обновлении или понижении версии FastCFS вам потребуется изменить fastcfs_version на нужную версию.* fastcfs_version — Ожидаемая версия FastCFS для которой создаются конфигурационные файлы.

  • vote_ips — список IP-адресов голосовых серверов; несколько хостов разделены запятой
  • auth_ips — список IP-адресов серверов авторизации FastCFS; несколько хостов разделены запятой
  • fdir_ips — список IP-адресов серверов fastDIR; несколько хостов разделены запятой
  • fstore_group_count — количество групп серверов faststore
  • fstore_group_[N] — список IP-адресов серверов группы faststore; несколько хостов разделены запятой
  • data_group_count — количество групп данных faststore (рекомендуются множители 64)Значение параметра fstore_group_count должно совпадать с fstore_group_[N], где N увеличивается от 1.

Пример содержимого файла fcfs_conf.settings:

# Версия кластера FastCFS
fastcfs_version=5.2.0

# Список хостов кластера и количество групп
vote_ips=10.0.1.11,10.0.1.12,10.0.1.13
auth_ips=10.0.1.11,10.0.1.12,10.0.1.13
fdir_ips=10.0.1.11,10.0.1.12,10.0.1.13
fstore_group_count=2
fstore_group_1=10.0.1.11,10.0.1.12,10.0.1.13
fstore_group_2=10.0.2.14,10.0.2.15,10.0.2.16
data_group_count=128

Совет: Используйте версию 5.2.0 и выше для создания конфигурационных файлов, особенно для сервера голосования.

2.3. Введение в команды инструмента fcfs_conf.sh

Команда fcfs_conf.sh состоит из двух частей: команда и модуль. Команда обязательна, модуль необязательный.

Использование:

fcfs_conf.sh команда [модуль]

Команды:

  • create — Создает конфигурационные файлы.
  • help — Отображает детали команд и примеры

Модули:

  • fvote — Сервер голосования
  • fdir — Сервер fastDIR
  • fstore — Сервер faststore
  • fauth — Сервер аутентификации FastCFS
  • fuseclient — Клиент Fuse FastCFS

3. Введение в инструмент conf_tpl_tar.sh

Простой инструмент для пакетирования шаблонов конфигураций кластера для разработчиков FastCFS.

Этот инструмент собирает шаблоны конфигураций кластера FastCFS в tar-файл из репозитория FastCFS, fastDIR, faststore.

Три репозитория FastCFS, fastDIR, faststore должны находиться в одной директории, и запустите conf_tpl_tar.sh в директории FastCFS/shell/.

Команда:

conf_tpl_tar.sh <версия> [обновление]
```* версия — Номер версии кластера для создания tar-шаблона.
* обновление — Получение последних исходных кодов перед созданием tar-файла. Необязательный

Пример:

> ./conf_tpl_tar.sh 5.2.0 обновление

Это создаст tar-файл **conf.5.2.0.tpl.tar.gz** в текущей директории.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/fastdfs100-FastCFS.git
git@api.gitlife.ru:oschina-mirror/fastdfs100-FastCFS.git
oschina-mirror
fastdfs100-FastCFS
fastdfs100-FastCFS
master