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

OSCHINA-MIRROR/Boris-code-feaplat

В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 15 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 10:38 7e338ab

Система управления краулерами FEAPLAT

FEAPLAT — это аббревиатура от feapder и platform.

Читается как «фиплат».

Особенности

  1. Поддерживает любые скрипты на Python, включая feapder, scrapy и другие.
  2. Поддерживает рендеринг в браузере, поддерживает безголовый режим. Браузеры: playwright, selenium.
  3. Поддерживает развёртывание сервисов, автоматическое распределение нагрузки.
  4. Поддерживает управление кластером серверов.
  5. Поддерживает мониторинг, содержимое которого можно настраивать.
  6. Поддерживает запуск нескольких экземпляров, например, для распределённых сценариев краулинга.
  7. Поддерживает эластичность и масштабируемость.
  8. Поддерживает четыре способа запуска по расписанию.
  9. Поддерживает пользовательские образы рабочих процессов, такие как пользовательская среда выполнения Java или машинного обучения, в зависимости от ваших потребностей (FEAPLAT разделяется на master — диспетчерский узел и worker — узел выполнения задач).
  10. Развёртывание одним щелчком мыши с помощью Docker Swarm.

Почему стоит использовать систему управления краулерами FEAPLAT?

На рынке существуют системы управления краулерами.

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

Система управления краулерами FEAPLAT.

Рабочие узлы создаются динамически в соответствии с задачами, каждый рабочий узел выполняет только один экземпляр задачи, после завершения задачи рабочий узел уничтожается, что обеспечивает высокую стабильность; автоматическое распределение между несколькими серверами, эластичность и масштабирование.

Обзор функций

1. Управление проектами

Добавление/редактирование проектов.

-w1785

2. Управление задачами

Управление задачами.

3. Экземпляры задач

Журналы.

4. Мониторинг краулеров

FEAPLAT поддерживает мониторинг работы краулеров FEAPDER, помимо мониторинга данных и запросов, пользователи также могут настраивать мониторинг, подробности см. в разделе «Пользовательский мониторинг».

Если вы используете краулеры Scrapy или другие скрипты Python с функциями мониторинга, вы также можете использовать функцию пользовательского мониторинга для поддержки, подробности см. в разделе «Пользовательский мониторинг».

Примечание: требуется версия FEAPDER >= 1.6.6

Развёртывание

Ниже приведён пример развёртывания на CentOS, другие платформы могут обратиться к документации Docker за инструкциями по установке Docker: https://docs.docker.com/compose/install/.

1. Установка Docker

Удалите старую версию (необязательно, выполните при необходимости обновления):

yum remove docker  docker-common docker-selinux docker-engine

Установите:

yum install -y yum-utils device-mapper-persistent-data lvm2 && python2 /usr/bin/yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo && yum install docker-ce -y

Рекомендуется использовать для китайских пользователей:

yum install -y yum-utils device-mapper-persistent-data lvm2 && python2 /usr/bin/yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo && yum install docker-ce -y

Запустите:

systemctl enable docker
systemctl start docker
2. Установка Docker Swarm

Docker Swarm init.

Если ваш хост Docker имеет несколько сетевых карт и несколько IP-адресов, необходимо использовать --advertise-addr для указания IP-адреса.

Docker Swarm init --advertise-addr 192.168.99.100

3. Установка docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Рекомендуется для китайских пользователей:

sudo curl -L "https://get.daocloud.io/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
4. Развёртывание системы управления краулерами FEAPLAT

Предварительные шаги: установите Git (версия 1.8.3 достаточно хороша).

yum -y install git

Загрузите проект.

Сначала используйте команду git pull для загрузки кода из ветки разработки. Ветка master не поддерживает urllib3>=2.0, и старые пользователи не будут затронуты. После того как последующие тесты подтвердят совместимость и не повлияют на старых пользователей, ветка develop будет объединена с веткой master.

GitHub:

git clone -b develop https://github.com/Boris-code/feaplat.git

Gitee:

git clone -b develop https://gitee.com/Boris-code/feaplat.git

Запуск.

Первый запуск требует извлечения образа, это займёт некоторое время и может привести к ошибкам, но повторный запуск пройдёт успешно.

cd feaplat
docker-compose up -d

Если возникает конфликт портов, измените файл .env, обратитесь к разделу «Общие проблемы».

Доступ к системе управления краулерами.

По умолчанию: http://localhost Пароль по умолчанию: admin / admin

Обратитесь к разделу «Общие вопросы», если у вас возникнут проблемы. Обратитесь к разделу «Использование», чтобы узнать, как использовать.

Остановка (необязательно).

docker-compose stop
5. Добавление сервера (необязательно)

Используется для создания кластера и расширения узлов краулера (рабочих узлов).

Установка Docker.

Следуйте инструкциям по развёртыванию.

Развёртывание.

На главном сервере (где находится система управления краулером FEAPLAT) выполните следующую команду, чтобы просмотреть токен.

docker swarm join-token worker

Выполните следующую команду на сервере, который необходимо добавить.

docker swarm join --token [token] [ip]

Эта команда используется для присоединения этого сервера к кластеру.

Проверьте, успешно ли выполнено. В запросе текст технической направленности из области разработки и тестирования программного обеспечения. Основной язык текста запроса — китайский.

Вот перевод текста на русский язык:

На сервере master (где находится система управления краулером feaplat) выполните следующую команду:

docker node ls

Если в результатах печати есть только что добавленный сервер, то добавление сервера прошло успешно.

4. Отключение сервера (необязательно)

На отключаемом сервере выполните:

docker swarm leave

Извлечение частного проекта

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

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCd/k/tjbcMislEunjtYQNXxz5tgEDc/fSvuLHBNUX4PtfmMQ07TuUX2XJIIzLRPaqv3nsMn3+QZrV0xQd545FG1Cq83JJB98ATTW7k5Q0eaWXkvThdFeG5+n85KeVV2W4BpdHHNZ5h9RxBUmVZPpAZacdC6OUSBYTyCblPfX9DvjOk+KfwAZVwpJSkv4YduwoR3DNfXrmK5P+wrYW9z/VHUf0hcfWEnsrrHktCKgohZn9Fe8uS3B5wTNd9GgVrLGRk85ag+CChoqg80DjgFt/IhzMCArqwLyMn7rGG4Iu2Ie0TcdMc0TlRxoBhqrfKkN83cfQ3gDf41tZwp67uM9ZN feapder@qq.com

или настройте свой SSH-ключ на странице настроек системы, а затем добавьте свой открытый ключ в git-репозиторий, например: Обратите внимание, что метод шифрования для открытого и закрытого ключей — RSA, другие методы могут вызвать проблемы.

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

ssh-keygen -t rsa -C "备注" -f 生成路径/文件名

Например: ssh-keygen -t rsa -C "feaplat" -f id_rsa Затем нажмите Enter, не вводя пароль. В результате будут созданы файлы id_rsa и id_rsa.pub. Скопируйте содержимое файла id_rsa.pub в репозиторий git, а содержимое файла id_rsa — в систему управления краулерами feaplat.

Создание собственного образа краулера

По умолчанию образ краулера содержит только feapder и фреймворк scrapy. Если вам нужны другие среды, вы можете создать их самостоятельно на основе файла .env, содержащего информацию о SPIDER_IMAGE.

Например, чтобы включить в образ часто используемые библиотеки Python, можно использовать следующий код:

FROM registry.cn-hangzhou.aliyuncs.com/feapderd/feapder:[最新版本号]

# 安装依赖
RUN pip3 install feapder \
    && pip3 install scrapy

Вы можете свободно экспериментировать и изменять файл .env после завершения работы, чтобы изменить значение SPIDER_IMAGE.

Цены

Тип Цена Описание
Пробная версия 0 юаней Можно развернуть 5 задач, задачи нельзя восстановить после удаления
Официальная версия 288 юаней Действует в течение года, можно перенести на другой сервер

После развёртывания по умолчанию используется пробная версия. После покупки лицензии и настройки её в системе она становится официальной версией.

Способ покупки: добавьте WeChat boris_tm

Цены будут корректироваться по мере добавления новых функций.

Обучение и общение

知识星球:17321694 Автор WeChat: boris_tm QQ群号:750614606

Добавьте друга с пометкой «feaplat».

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

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

1
https://api.gitlife.ru/oschina-mirror/Boris-code-feaplat.git
git@api.gitlife.ru:oschina-mirror/Boris-code-feaplat.git
oschina-mirror
Boris-code-feaplat
Boris-code-feaplat
master