У меня ЧП. При незапланированном отключении электричества я понадеялся на авось, бесперебойник выдержит и мой HP MicroServer Gen8 (4CPUs x 2,494Ghz, Intel Xeon CPU E3-1265L V2 2.50GHz, RAM 12Gb)
успешно выключит все виртуальные машины, но да он выключил, но в процессе два диска по 1Tb
в Bay3 & Bay4
хоть и были в RAID 1
успешно умерли до хрустов, а на них находились мои важные виртуальные машины:
srv-domoticz (Ubuntu 18.04)
srv-fog (Ubuntu 18.04)
srv-wiki (Mercurial, 3Proxy + Tor)
и данные с них не восстановить, но ничего все бывает в первый раз, значит не все продумал. В виду этого факта я приобрел себе другой сервер на базе Motherboard:
Supermicro SYS-5019S-M
где на нем установил Proxmox 6
и попробую использовать ZFS
, как и писал ранее + подошла память: M378A4G43MB1-CTD
в количестве двух штук.
Итого, я заново воссоздаю свою рабочую структуру, сейчас на первом месте разобрать как установить FOG Project
на Ubuntu 18.04 Server
заново от и до:
На заметку: От 25.01.2022
Лучше ставить версию 1.5.8
(https://github.com/FOGProject/fogproject/archive/1.5.8.tar.gz
), она стабильнее т.к. 1.5.9
как по мне какая-то бета.
Шаг №1:
Установил (пока вручную, но исправлюсь на автоматизированную через этот сервис) виртуальную машину с осью Ubuntu 18.04 Server
Шаг №2:
Через собственный скрипт настройки системы привожу ее к дальнейшему использованию:
ekzorchik@srv-fog:~$ hg clone http://172.35.35.8/hg/default http authorization required for http://172.35.35.8/hg/default realm: Mercurial repositories user: ekzorchik password: destination directory: default requesting all changes adding changesets adding manifests adding file changes added 3 changesets with 2 changes to 2 files new changesets da60dcb8f0f5:9934092d9750 updating to branch default 2 files updated, 0 files merged, 0 files removed, 0 files unresolved ekzorchik@srv-fog:~$ ekzorchik@srv-fog:~$ sudo ./default/default.sh
Шаг №3:
Скачиваю самую последнюю версию FOG Project:
ekzorchik@srv-fog:~$ wget https://github.com/FOGProject/fogproject/archive/refs/heads/master.zip ekzorchik@srv-fog:~$ unzip master.zip ekzorchik@srv-fog:~$ sudo mv fogproject-master/ /opt/fog ekzorchik@srv-fog:~$ cd /opt/fog/bin/
Шаг №4:
Запускаю мастер установки:
ekzorchik@srv-fog:/opt/fog/bin$ sudo ./installfog.sh Version: 1.5.9 Installer/Updater What version of Linux would you like to run the installation for? 1) Redhat Based Linux (Redhat, CentOS, Mageia) 2) Debian Based Linux (Debian, Ubuntu, Kubuntu, Edubuntu) 3) Arch Linux Choice: [2] выбираю пункт два - 2 Starting Debian based Installation FOG Server installation modes: * Normal Server: (Choice N) This is the typical installation type and will install all FOG components for you on this machine. Pick this option if you are unsure what to pick. * Storage Node: (Choice S) This install mode will only install the software required to make this server act as a node in a storage group More information: http://www.fogproject.org/wiki/index.php?title=InstallationModes What type of installation would you like to do? [N/s (Normal/Storage)] нажимаю клавишу N We found the following interfaces on your system: * ens18 - 172.35.35.20/24 Would you like to change the default network interface from ens18? If you are not sure, select No. [y/N] нажимаю клавишу N Would you like to setup a router address for the DHCP server? [Y/n] нажимаю клавишу n Would you like DHCP to handle DNS? [Y/n] нажимаю клавишу n Would you like to use the FOG server for DHCP service? [y/N] нажимаю клавишу n This version of FOG has internationalization support, would you like to install the additional language packs? [y/N] нажимаю клавишу y Using encrypted connections is state of the art on the web and we encourage you to enable this for your FOG server. But using HTTPS has some implications within FOG, PXE and fog-client and you want to read https://wiki.fogproject.org/HTTPS before you decide! Would you like to enable secure HTTPS on your FOG server? [y/N] нажимаю клавишу N Which hostname would you like to use? Currently is: srv-fog Note: This hostname will be in the certificate we generate for your FOG webserver. The hostname will only be used for this but won't be set as a local hostname on your server! Would you like to change it? If you are not sure, select No. [y/N] нажимаю клавишу N * Here are the settings FOG will use: * Base Linux: Debian * Detected Linux Distribution: Ubuntu * Interface: ens18 * Server IP Address: 172.35.35.20 * Server Subnet Mask: 255.255.255.0 * Server Hostname: srv-fog * Installation Type: Normal Server * Internationalization: 1 * Image Storage Location: /images * Using FOG DHCP: No * DHCP will NOT be setup but you must setup your | current DHCP server to use FOG for PXE services. * On a Linux DHCP server you must set: next-server and filename * On a Windows DHCP server you must set options 066 and 067 * Option 066/next-server is the IP of the FOG Server: (e.g. 172.35.35.20) * Option 067/filename is the bootfile: (e.g. undionly.kpxe) * Are you sure you wish to continue (Y/N) Y На заметку: следующие пакеты устанавливает инсталлятор — это чтобы знать, для справки. apache2 bc build-essential cpp curl g++ gawk gcc genisoimage gettext git gzip htmldoc isolinux lftp libapache2-mod-php7.2 libc6 libcurl4 liblzma-dev m4 mariadb-client mariadb-server net-tools nfs-kernel-server openssh-server php7.2 php7.2-bcmath php7.2-cli php7.2-curl php7.2-fpm php7.2-gd php7.2-json php7.2-ldap php7.2-mbstring php7.2-mysql php7.2-mysqlnd php-gettext tar tftpd-hpa tftp-hpa unzip vsftpd wget xinetd zlib1g и начинается установка * You still need to install/update your database schema. * This can be done by opening a web browser and going to: http://172.35.35.20/fog/management * Press [Enter] key when database is updated/installed. * Update fogstorage database password.........................Failed! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! The installer was not able to run all the way to the end as !! !! something has caused it to fail. The following few lines are !! !! from the error log file which might help us figure out what's !! !! wrong. Please add this information when reporting an error. !! !! As well you might want to take a look at the full error log !! !! in /opt/fog/bin/error_logs/fog_error_1.5.9.log !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! └─10086 php-fpm: pool www Jan 22 16:44:52 srv-fog systemd[1]: Starting The PHP 7.2 FastCGI Process Manager... Jan 22 16:44:52 srv-fog systemd[1]: Started The PHP 7.2 FastCGI Process Manager. ERROR 1146 (42S02) at line 1: Table 'fog.globalSettings' doesn't exist ekzorchik@srv-fog:/opt/fog/bin$
Т.к. при установке mysql-server
не использовалось запроса на указания создания пароля на учетную запись root
, то я его задам самостоятельно.
ekzorchik@srv-fog:/opt/fog/bin$ sudo mysqladmin -u root password 712mbddr@ ekzorchik@srv-fog:/opt/fog/bin$ cd ~ ekzorchik@srv-fog:~$
Шаг №5:
Открываю URL
: http://172.35.35.20/fog/management/?node=schema
и нажимаю Install/Update Now
После
Перехожу на гиперссылку "here" / http://172.35.35.20/fog/management/index.php
и вот она страница авторизации:
Default User Information
Username: fog
Password: password
После успешного входа – FOG Project
успешно установлен
В последующих заметках я еще раз пошагово пройдусь по воссозданию всего того что у меня было при использовании версии 1.5.5.
Шаг №6:
Отобразить какие сайты автоматический установщик сделал:
ekzorchik@srv-fog:~$ sudo a2ensite Your choices are: 000-default 001-fog default-ssl Which site(s) do you want to enable (wildcards ok)? ekzorchik@srv-fog:~$
Отключаю дефолтные сайты Apache:
ekzorchik@srv-fog:~$ sudo a2dissite 000-default Site 000-default already disabled ekzorchik@srv-fog:~$ sudo a2dissite default-ssl Site default-ssl already disabled
Шаг №7:
Проверяю есть ли ошибки или замечания у настроенного сайта 001-fog
и какого его содержимое (это так для справки как это сделано разработчиками)
ekzorchik@srv-fog:~$ apache2ctl -S | grep fog AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message *:80 172.35.35.20 (/etc/apache2/sites-enabled/001-fog.conf:1) ekzorchik@srv-fog:~$ ekzorchik@srv-fog:~$ echo "ServerName localhost" | sudo tee -a /etc/apache2/apache2.conf ServerName localhost ekzorchik@srv-fog:~$ cat /etc/apache2/sites-enabled/001-fog.conf <VirtualHost *:80> <FilesMatch "\.php$"> SetHandler "proxy:fcgi://127.0.0.1:9000/" </FilesMatch> ServerName 172.35.35.20 ServerAlias srv-fog DocumentRoot /var/www/ KeepAlive Off <Directory /var/www/fog/> DirectoryIndex index.php index.html index.htm </Directory> RewriteEngine On RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK) RewriteRule .* - [F] RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-d RewriteRule ^/fog/(.*)$ /fog/api/index.php [QSA,L] </VirtualHost> ekzorchik@srv-fog:~$ apache2ctl -S | grep fog *:80 172.35.35.20 (/etc/apache2/sites-enabled/001-fog.conf:1) ekzorchik@srv-fog:~$
Шаг №8:
На роутере (у меня Mikrotik RB2011UiAS-2HnD
) нужно прописать опции необходимые для работы сервиса FOG
, для этого подключаюсь к своему роутеру по SSH
и дополняю настройки своего DHCP
-сервиса. В Вашем случае вы уже сами должны уметь прописывать записи.
ekzorchik@navy:~$ ssh -l ekzorchik 172.33.33.1 [ekzorchik@ekzorchik] > ip dhcp-server network set 0 next-server=172.35.35.20 boot-file-name=undionly.kpxe [ekzorchik@ekzorchik] > ip dhcp-server network print where boot-file-name=undionly.kpxe Flags: D - dynamic # ADDRESS GATEWAY DNS-SERVER WINS-SERVER DOMAIN 0 172.33.33.0/24 172.33.33.1 [ekzorchik@ekzorchik] > quit Connection to 172.33.33.1 closed. ekzorchik@navy:~$
Вот теперь отлично у меня снова есть заметка пошаговая, которую я применю к своей виртуальной машине где у меня развернут apt-cacher-ng
и с его помощью я создаю собственное зеркало наиболее часто используемых пакетов дабы не лазить каждый раз за ними в интернет. Т.е. не завишу от интернета.
На этом заметка завершена, с уважением автор блога Олло Александр aka ekzorchik.