定制 freebees-club/freebees-hm 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

freebees-club/freebees-hm

Composer 安装命令:

composer create-project freebees-club/freebees-hm

包简介

Freebees hardware monitor

README 文档

README

Это проект инвентаризации компьютеров на базе ОС в на базе ОС Windows 7, 8, 10 с возможностью мониторинга некоторых критичных параметров. Принцип работы проекта заключается в следующем: клиенский компьютер с установленным клиентским сервисом (с заданнной периодичностью) отчитывается системе о своем состоянии и параметрах. Если клинтский компьютер не зарегистрирован в системе, то происходит автоматическая регистрация компьютера. Если компьютер уже есть в системе, то в систему записываются его обновленные параметры и состояние.

Проект предоставляет следующую информацию о клиентских компьютерах:

  • Текущий авторизированный пользователь системы

  • Описание компьютера

  • Версию ОС

  • Сетевое подключение (MAC адрес, адрес ipv4, ipv6, название сетевого адаптера)

  • Модель процессора

  • Модель видеокарты

  • Модель материнской платы

  • Модель жестккого диска

  • Модель монитора

  • Число, имя, полное имя, описание пользователей компьютера

  • Название принтеров, установленных в системе, их драйвер, порт, является ли принтер сетевым, а так же информацию о адресе ресураса, если принтер является сетевым

  • Тома компьютера, название тома, свободное место на томе, размер тома, файловая система

  • Реестр программ, установленнх на компьютере, название пронраммы, издатель, версия программы

Возможности мониторинга:

  • Мониторинг свободного места на томах

  • Мониторинг температуры процессора

  • Мониторинг температуры видеокарты

  • Мониторинг температуры жестких дисков

  • Заряд батарейки БИОС

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

Проект состоит из 3-х частей. Бэкэнд на Symfony 4, сервис Node.js для сервера и сервис для клиентских устройств

Требования к окружению:

  • Apache >= 2.4

  • PHP >= 7.2

  • MySQL >= 5.7

  • Node.js >= 8.10

  • Свободные порты 80, 8080 и 3000

Изменения в версиях

0.0.2

  • Исправлены некоторые ошибки

  • Добавлены отчеты по операционным системам, процессорам, видеокартам, мат. платам, жеским дискам, мониторам, оперативной памяти

  • Добавлена возможность массового удаления компьютеров

  • Изменения в ленте. Добавлена панель с журналом событий системы

Установка

Проект можно установить двумя способами. Оба способа показаны на примере Ubuntu 18.04 LTS

Способ № 1 - для разумных

Создать папку /usr/freebees-hm/mysql

Создать папку /usr/freebees-hm/environments и создать в ней файл environment.json со следующим содержанием

{
	"name": "prod",
	"production": true,
	"settings": {
		"apiUrl": "http://localhost:8080/api/v1/",
    "apiLoginUrl": "http://localhost:8080/api/",
    "serviceUrl": "ws://localhost:3000/"
	}
}

Здесь вместо localhost необходимо указать имя сервера, на который устанавливается проект

Запустить установку Docker командой

$sudo apt install docker.io

Скачать docker образ

$sudo docker pull freebees/freebees-hm

Запустить образ командой

docker run -d -v /usr/freebees-hm/mysql:/var/lib/mysql -v /usr/freebees-hm/environments:/var/www/freebees-hm/public/bundles/frbshm/assets/environments -p 80:80 -p 8080:8080 -p 3000:3000 -it freebees/freebees-hm

Способ № 2 - для смелых

Установка фронтэнда

Для удобства в дальнейшем рекомендуется установить Midnight Commander

$sudo apt install mc

Установка MariaDB сервера

Для установки необходимо обновить список пакетов командой

$sudo apt update

Затем установить MariaDB сервер командой

$sudo apt install mariadb-server

Добавить немножечко костыльной магии

$mysql -u root
use mysql;
update user set authentication_string=password(''), plugin='mysql_native_password' where user='root';

Установка веб-сервера Apache

При установке apache никаких дополнительных операций не требуется

$sudo apt install apache2

Установка PHP

Перед установкой PHP необходимо добавить репозиторий для получения актуальной версии PHP

$sudo apt install software-properties-common
$sudo add-apt-repository ppa:ondrej/php
$sudo apt update

Затем установить PHP версии 7.2 коммандой

$sudo apt install php7.2 libapache2-mod-php7.2 php7.2-cli php7.2-mysql php7.2-xml php7.2-zip

И перезагрузить веб-сервер коммандой

$sudo systemctl restart apache2.service

Включить необходимые моды

$sudo a2enmod headers
$sudo a2enmod rewrite

Установка Composer

Это менеджер зависимостей PHP. Он поможет скачать и установить фронтэнд и бэкэнд часть проекта.

$sudo apt install composer

Установка фронтэнд и бэкэнд части проекта

Запускаем, установленный ранее Midnight Commander командой mc и переходим в папку /var/www/. Нажимаем CTRL+O, в командной строке указываем команду

$sudo composer create-project freebees-club/freebees-hm

этим запускаем установку.

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

$sudo php bin/console doctrine:database:create
$sudo php bin/console doctrine:schema:create
$sudo php bin/console doctrine:fixtures:load --append

Минимальная конфигурация веб-сервера

Веб-сервер должен прослушивать 2 порта, 80 для фронтэнда, 8080 для api запросов. Так же важно правильно указать папки, в которых находится проект.Необходимая конфигурация веб-сервера apache в ОС Ubuntu находится в файле /etc/apache2/sites-available/000-default.conf. Файл должен содержать следующие строки:

Listen 8080
ServerName localhost
<Directory "/var/www">
	Options Indexes FollowSymLinks
	AllowOverride All
</Directory>
<VirtualHost *:80>
	DocumentRoot "/var/www/html/freebees-hm/public/bundles/frbshm"
</VirtualHost>
<VirtualHost *:8080>
	DocumentRoot "/var/www/html/freebees-hm/public"
</VirtualHost>

Установка Node.js сервиса

Перед загрузкой сервиса необходимо установить Node.js следующими командами

$sudo apt install nodejs
$sudo apt install build-essential
$sudo apt install npm

Затем при помощи Midnight Commander перейти в папку, в которую вы желаете установить сервис. Например, /home/<имя пользователя>. Командой

$sudo git clone https://freebees-club@bitbucket.org/freebees-club/freebees-hm-service.git
$sudo npm install

скачать и установить сервис.

Для удобства использования сервисом желательно установить PM2. Это удобный менеджер процессов Node.js, который перезагружает сервис в случае сбоя, а так же запускает сервис при загрузке сервера.

Чтобы начать установку PM2, введите в командную строку:

$sudo npm install pm2 -g

Для запуска сервиса при помощи PM2 используте следующую команду

$sudo pm2 start service

при этом необходится в папке с ранее установленным сервисом

Установка сервиса на клиентские устройства

Клиентский сервис можно скачать тут - [http://freebees.ru/downloads][client]

Установка производится традиционным способом от имени администратора, либо в режиме тихой установки командой

msiexec.exe /i "<путь к MSI файлу установки>" /qn hostname="ws://localhost:3000"

где /qn это параметр тихой установки, а hostname="ws://localhost:3000" это имя сервера и порт сервера, на котором установлен Node.js сервис.Тихая установка так же должна производится от имени пользователя с повышенными привелегиями. [client]: http://freebees.ru/downloads

freebees-club/freebees-hm 适用场景与选型建议

freebees-club/freebees-hm 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 21 次下载、GitHub Stars 达 0, 最近一次更新时间为 2018 年 07 月 10 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 freebees-club/freebees-hm 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 freebees-club/freebees-hm 我们能提供哪些服务?
定制开发 / 二次开发

基于 freebees-club/freebees-hm 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 21
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: proprietary
  • 更新时间: 2018-07-10