  
                  
                 
                 
                 
                СОГЛАСОВАНО 
               | 
               
               
              УТВЕРЖДАЮ
  | 
             
            
               
              Директор Департамента 
               
              государственного регулирования 
               
              в экономике 
               
              Министерства экономического 
               
              развития Российской Федерации
  | 
               
              Генеральный директор 
               
              ЗАО «Госбук»
  | 
             
            
               
              ________________ А.И. Херсонцев
  | 
               
              __________________ С. И. Холкин
  | 
             
            
               
               
              «____»_________________2014 г.
  | 
               
               
              «____»__________________ 2014 г.
  | 
             
            
               
               
              М.П.
  | 
               
               
              М.П.
  | 
             
            
           Руководство по технической эксплуатации АИС «Мониторинг Госсайтов» 
           
          Москва 2014 год 
          Содержание 
           
           
          
             
            1Развертывание программного комплекса 4 
             
            1.1Рекомендуемое программное обеспечение 4 
             
            1.2Необходимый набор модулей PHP 4 
             
            1.3Необходимые параметры PHP 5 
             
            1.4Необходимые изменения в memcached 5 
             
            1.5Настройка composer, node.js, phantom.js 7 
             
            1.6Настройка supervisord и gearmand 7 
             
            1.7Настройка tomcat и solr 8 
             
            1.8Настройка mongodb 9 
             
            1.9Настройка nginx + varnish + apache 9 
             
            1.10Развертывание системы 14 
             
            2Обслуживание программного комплекса 19 
             
            2.1Общие рекомендации по обслуживанию ПО 19 
             
            2.2Резервное копирование данных 19 
             
            2.3Рекомендации по конфигурации аппаратного комплекса 23 
            
           
           
          
            - 
              
 Развертывание программного комплекса
             
           
          
            
              - 
                
 Рекомендуемое программное обеспечение
               
             
            
          Для эксплуатации программного комплекса рекомендуется необходимо установить и использовать следующее программное обеспечение: 
          
             
            Операционная система CentOS 6.6 x86_64 minimal (kernel 2.6.32);
  
             
            MariaDB 10.0.14 – 10.0.x;
  
             
            PHP 5.4.34 – 5.4.x;
  
             
            mongodb 2.6.5 и выше;
  
             
            memcached 1.4.21 и выше;
  
             
            supervisord 3.1.2 и выше;
  
             
            superlance 0.11 и выше;
  
             
            composer 1.0-dev и выше;
  
             
            gearman 1.1.8 и выше;
  
             
            tomcat 7.0.33 – 7.x.x;
  
             
            solr 4.4 - 4.x;
  
             
            node.js 0.10.32 и выше;
  
             
            phantom.js 1.9.8 и выше;
  
             
            java 1.7.0_71 – 1.7.x;
  
             
            python 2.7.8;
  
             
            apache 2.2.27 + mod_php;
  
             
            nginx 1.7.7 и выше;
  
             
            varnish 3.0.6;
  
             
            postfix 2.6.6 и выше (любой почтовый сервис для отправки почты через функцию php mail).
  
            
           
           
          
            
              - 
                
 Необходимый набор модулей PHP
               
             
            
          Для корректной работы необходим следующий набор модулей php: 
          
            
            
            
            
            
            
              
                 
                 bz2 
               | 
               
              gearman
  | 
               
              mongo
  | 
               
              Reflection
  | 
               
              wddx
  | 
             
            
               
              calendar
  | 
               
              gettext
  | 
               
              msgpack
  | 
               
              session
  | 
               
              XCache
  | 
             
            
               
              Core
  | 
               
              gmp
  | 
               
              mysql
  | 
               
              shmop
  | 
               
              XCache Cacher
  | 
             
            
               
              ctype
  | 
               
              hash
  | 
               
              mysqli
  | 
               
              SimpleXML
  | 
               
              xml
  | 
             
            
               
              curl
  | 
               
              iconv
  | 
               
              openssl
  | 
               
              soap
  | 
               
              xmlreader
  | 
             
            
               
              date
  | 
               
              igbinary
  | 
               
              pcntl
  | 
               
              sockets
  | 
               
              xmlwriter
  | 
             
            
               
              dom
  | 
               
              json
  | 
               
              pcre
  | 
               
              SPL
  | 
               
              xsl
  | 
             
            
               
              ereg
  | 
               
              libxml
  | 
               
              PDO
  | 
               
              sqlite3
  | 
               
              zip
  | 
             
            
               
              exif
  | 
               
              mbstring
  | 
               
              pdo_mysql
  | 
               
              standard
  | 
               
              zlib
  | 
             
            
               
              fileinfo
  | 
               
              mcrypt
  | 
               
              pdo_sqlite
  | 
               
              sysvmsg
  | 
               
               
              
  | 
             
            
               
              filter
  | 
               
              memcache
  | 
               
              Phar
  | 
               
              sysvsem
  | 
               
               
              
  | 
             
            
               
              ftp
  | 
               
              memcached
  | 
               
              posix
  | 
               
              sysvshm
  | 
               
               
              
  | 
             
            
               
              gd
  | 
               
              mhash
  | 
               
              readline
  | 
               
              tokenizer
  | 
               
               
              
  | 
             
           
          
            
              - 
                
 Необходимые параметры PHP
               
             
            
          max_execution_time = 180 
           
          max_input_time = 120 
           
          post_max_size = 100M 
           
          upload_max_filesize = 100M 
           
          memory_limit = 2048M 
           
          xcache.size = 1024M 
          
            
              - 
                
 Необходимые изменения в memcached
               
             
            
          Для правильной работы программного комплекса необходимо создать три экземпляра memcached. Для этого необходимо: 
          
            
              - 
                
 
                Создать экземпляры, выполнил в консоли 
                
                   
                  cp /etc/init.d/memcached /etc/init.d/memcached2
  
                   
                  cp /etc/init.d/memcached /etc/init.d/memcached3
  
                   
                  cp /etc/sysconfig/memcached /etc/sysconfig/memcached2
  
                   
                  cp /etc/sysconfig/memcached /etc/sysconfig/memcached3
  
                 
               
              - 
                
 
                Настроить сервисы экземпляров: 
                
                   
                  открыть в любом текстовом редакторе (например, «nano») файл запуска службы: 
                  nano /etc/init.d/memcached2
  
                   
                  Изменить строки в соответствии с предоставленным выводом команды diff: 
                  < # config: /etc/sysconfig/memcached 
                  < # pidfile: /var/run/memcached/memcached.pid 
                  --- 
                  > # config: /etc/sysconfig/memcached2 
                  > # pidfile: /var/run/memcached/memcached2.pid 
                   
                  < if [ -f /etc/sysconfig/memcached ];then 
                  < . /etc/sysconfig/memcached 
                  --- 
                  > if [ -f /etc/sysconfig/memcached2 ];then 
                  > . /etc/sysconfig/memcached2 
                   
                  < pidfile=${PIDFILE-/var/run/memcached/memcached.pid} 
                  < lockfile=${LOCKFILE-/var/lock/subsys/memcached} 
                  --- 
                  > pidfile=${PIDFILE-/var/run/memcached/memcached2.pid} 
                  > lockfile=${LOCKFILE-/var/lock/subsys/memcached2}
  
                   
                  Для третьего экземпляра memcached3 проделать те же изменения со строками в файле /etc/init.d/memcached3
  
                 
               
              - 
                
 
                Прописать настройки экземпляров: 
                
                   
                  Открыть в любом текстовом редакторе (например, «nano») файл /etc/sysconfig/memcached
  
                   
                  Прописать для него следующие параметры, с точным указанием в «USER» имени пользователя, от имени которого работает веб-сервер. 
                  PORT="11211" 
                  USER="apache" 
                  MAXCONN="2048" 
                  CACHESIZE="256" 
                  OPTIONS="-s /var/run/memcached/memcached.socket -n 16 -f 1.05"
  
                   
                  Открыть в любом текстовом редакторе (например, «nano») файл /etc/sysconfig/memcached2
  
                   
                  Прописать для него следующие параметры 
                  PORT="11212" 
                  USER="apache" 
                  MAXCONN="2048" 
                  CACHESIZE="256" 
                  OPTIONS="-s /var/run/memcached/memcached.socket -n 32 -f 1.05"
  
                   
                  Открыть в любом текстовом редакторе (например, «nano») файл /etc/sysconfig/memcached2
  
                   
                  Прописать для него следующие параметры 
                  PORT="11213" 
                  USER="apache" 
                  MAXCONN="2048" 
                  CACHESIZE="2048" 
                  OPTIONS="-s /var/run/memcached/memcached.socket -n 1024 -f 1.05"
  
                 
               
              - 
                
 
                Перезапустить все экземпляры memcached: 
                
                   
                  /etc/init.d/memcached restart
  
                   
                  /etc/init.d/memcached2 restart
  
                   
                  /etc/init.d/memcached3 restart
  
                 
               
             
           
          
            
              - 
                
 Настройка composer, node.js, phantom.js
               
             
            
          Для правильной работы программного комплекса composer, node.js, phantom.js должны быть доступны в окружении пользователя или установлены в папку /usr/bin/ 
          
            
              - 
                
 Настройка supervisord и gearmand
               
             
            
          Для запуска сервиса supervisord необходимо выполнить: 
          supervisord -c /PATH_TO_TRGM/supervisord.conf 
           
          Для проверки статусов выполняемых задачь необходимо выполнить: 
           
          supervisorctl -c /PATH_TO_TRGM/supervisord.conf status; 
           
          Сервис supervisord автоматически запустит задачи, выполняемые в ПО gearman, поэтому, чтобы не произошло конфликтов, системный сервис gearmand должен быть выключен: 
           
          /etc/init.d/gearmand stop 
           
          Предполагается, что сервис tomcat установлен и прослушивает порт 8080. 
           
          Для подключения сервиса solr, необходимо выполнить следующее: 
          
             
            Скопировать архив solr.tar.gz в любое удобное место, например: 
            cp ./solr.tar.gz /var/
  
             
            Перейти в папку и разархивировать архив: 
            cd /var/ 
            tar –xzf /var/solr.tar.gz
  
             
            Скопировать необходимые библиотеки в папку библиотек сервиса tomcat: 
            cp –Ra /var/solr/libs/* /usr/share/java/tomcat/ 
            unzip /var/solr/dist/solr-4.4.0.war -d /usr/share/tomcat/webapps/solr
  
             
            Поменять права на все файлы на пользователя tomcat: 
            chown -R tomcat.tomcat /usr/share/java/tomcat/ /usr/share/tomcat/ /var/solr
  
             
            Перезапустить сервис tomcat: 
            /etc/init.d/tomcat restart
  
             
            Отредактировать файл в любом текстовом редакторе (например, nano): 
            nano /var/lib/tomcat/webapps/solr/WEB-INF/web.xml
  
             
            Найти секцию env-entry и изменить в ней строку, так, чтобы она соответствовала предоставленному выводу: 
             
            solr/home 
            /var/solr 
            java.lang.String 
            
  
             
            Перезапустить сервис tomcat: 
            /etc/init.d/tomcat restart
  
             
            Удостовериться, что solr работает нормально в менеджер сервиса tomcat по url адресу: 
            http://your_domina:8080/solr/#/gosmonitor.ru
  
           
           
          В СУБД mongodb хранятся результаты работы сервиса технических показателей. Для его правильно работы сервис mongodb должен быть включен: 
           
          /etc/init.d/mongod start 
           
          А так же должна быть создана база данных и её структура. Сделать это можно следующей командой: 
           
          php PATH_TO_TRGM/app/console doctrine:mongodb:schema:create 
          
            
              - 
                
 Настройка nginx + varnish + apache
               
             
            
          Для увеличения производительности программного комплекса используются три веб-сервера: 
          
             
            Nginx – frontendрт (порт по умолчанию 80) – для отдачи статического контента и перенаправления части запросов (виджет) в node.js;
  
             
            Varnish – middleend (порт по умолчанию 6180) – для кэширования страниц в связке с drupal;
  
             
            Apache – backend (порт по умолчанию 81) – для обработки php.
  
            
          При это предполагается что внешне доступен только nginx, а все остальные прослушивают адрес 127.0.0.1 и соединяются друг с другом по портам. 
           
          Так же предполагается наличие трёх доменных имён: 
          
             
            gosmonitor.ru – главная стрвница АИС «Госмониторинг»;
  
             
            tr.gosmonitor.ru - сервис сбора технических показателей объектов мониторинга. На главной странице происходит перенаправление на http://monitor.tr.gosmonitor.ru;
  
             
            monitor.tr.gosmonitor.ru – страница мониторинг сервиса supervisord; 
            monitor.tr.gosmonitor.ru/gearman/web/#/status – страница мониторинга очередей сервиса gearmand;
  
             
            validator.tr.gosmonitor.ru – домен для веб-интерфейса валидатора html5-кода
  
            
           
           
           
           
          Для всех доменов применяются стандартные шаблоны конфигурационных файлов для настройки виртуальных хостов. Указывается лишь различные DocumentRoot: 
          
             
            Для gosmonitor.ru - абсолютный путь в ОС до исходных текстов АИС «Госмонитор»: 
            DocumentRoot /PATH_TO_GOSMONITOR/
  
             
            Для tr.gosmonitor.ru - абсолютный путь в ОС до исходных текстов веб-интерфейса системы мониторинга очередей сервиса gearmand: 
            DocumentRoot /PATH_TO_TRGM/web/
  
             
            Для monitor.tr.gosmonitor.ru - абсолютный путь в ОС до исходных текстов веб-интерфейса системы мониторинга процессов сервиса supervisord: 
            DocumentRoot /PATH_TO_MONITORING_TR/public_html/
  
            
          Для домена validator.tr.gosmonitor.ru необходимо использовать представленный конфигурационный файл, который, тем не менее, может быть доработан по необходимости: 
           
           
           
          ServerName validator.tr.gosmonitor.ru 
           
          ServerAlias www.validator.tr.gosmonitor.ru 
           
          DocumentRoot /PATH_TO_VALIDATOR.TR.MONITORING/htdocs 
          ScriptAlias /check /PATH_TO_VALIDATOR.TR.MONITORING/httpd/cgi-bin/check 
           
          ScriptAlias /feedback /PATH_TO_VALIDATOR.TR.MONITORING/httpd/cgi-bin/sendfeedback.pl 
           
           
          Options IncludesNOEXEC Indexes MultiViews 
           
          AllowOverride None 
           
          AddHandler server-parsed .html 
           
          AddCharset utf-8 .html 
           
          AddEncoding x-gzip .gz 
           
           
           
          ForceType application/javascript 
           
           
           
           
           
          ForceType text/css 
           
           
           
           
           
          Options +SymLinksIfOwnerMatch 
           
          RewriteBase /w3c-validator/ 
           
          RewriteRule fragment-upload(\.html)? detailed.html#validate-by-input [R,L,NE] 
           
          RewriteRule file-upload(\.html)? detailed.html#validate-by-upload [R,L,NE] 
           
           
           
           
           
          ExpiresActive On 
           
          ExpiresByType image/gif A2592000 
           
          ExpiresByType image/png A2592000 
           
          ExpiresByType text/html A604800 
           
          ExpiresByType text/css A2592000 
           
          ExpiresByType text/javascript A2592000 
           
          ExpiresByType application/javascript A2592000 
           
          ExpiresByType application/ecmascript A2592000 
           
           
           
           
           
           
           
           
           
          Настройка кэширующего веб-сервера может быть произвольной или по умолчанию. Главное требование, чтобы он мог принимать запросы от веб-сервера nginx и, после обработки, передавать их веб-серверу apache. 
           
           
           
          Для домена gosmonitor.ru применяется конфигурационный файл, следующего содержания, который может быть дополнен или изменён по необходимости: 
           
          server { 
           
          listen 10.62.0.124:80; 
           
          listen 127.0.0.1:80; 
           
          server_name gosmonitor.ru default_server; 
          location ~* \.(jpg|jpeg|gif|png|bmp|svg|swf|htm|ico|mp3|ogg|mpe?g|gz|tar|avi|zip|gz|bz2|rar|doc|docx|xls|xlsx)$ { 
           
          try_files $uri $uri/ @drupal; 
           
          expires 14d; 
           
          root /PATH_TO_GOSMONITOR/; 
           
          } 
          location ~* /widget.css(.*)$ { 
           
          proxy_pass http://127.0.0.1:6081; 
           
          proxy_set_header Host $host; 
           
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
           
          proxy_set_header X-Real-IP $remote_addr; 
           
          } 
          location ~* /widget.php\?(.+)$ { 
           
          rewrite ^(.+)\?(.+)$ http://$host/widget.js$2&oldsid=1 permanent; 
           
          } 
          location ~* /widget.php$ { 
           
          rewrite ^(.+)$ http://$host/widget.js?oldsid=1 permanent; 
           
          } 
          location ~ /\.ht { 
           
          deny all; 
           
          } 
          location /check-opendata { 
           
          proxy_read_timeout 1200; 
           
          proxy_connect_timeout 1200; 
           
          proxy_send_timeout 1200; 
           
          proxy_pass http://127.0.0.1:6081; 
           
          proxy_set_header Host $host; 
           
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
           
          proxy_set_header X-Real-IP $remote_addr; 
           
          } 
          location /widget.js { 
           
          proxy_pass http://127.0.0.1:1337/widget.js; 
           
          proxy_set_header Host $host; 
           
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
           
          proxy_set_header X-Real-IP $remote_addr; 
           
          } 
          location /sites/default/modules/widget/js/widget.php { 
           
          proxy_pass http://127.0.0.1:1337/widget.js; 
           
          proxy_set_header Host $host; 
           
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
           
          proxy_set_header X-Real-IP $remote_addr; 
           
          } 
          location / { 
           
          proxy_pass http://127.0.0.1:6081; 
           
          proxy_set_header Host $host; 
           
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
           
          proxy_set_header X-Real-IP $remote_addr; 
           
          } 
          location @drupal { 
           
          proxy_pass http://127.0.0.1:6081; 
           
          proxy_set_header Host $host; 
           
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
           
          proxy_set_header X-Real-IP $remote_addr; 
           
          } 
           
          } 
          Для доменов tr.gosmonitor.ru, validator.tr.gosmonitor.ru и monitor.tr.gosmonitor.ru применяются стандартные шаблоны конфигурационных файлов для настройки виртуальных хостов, с единственным отличием – передавать данные не на backend, а на middleend. 
           
          Развёртывание системы производится в следующей последовательности: 
          
            - 
              
 
               
              
                - 
                  
 
                   
                 
                - 
                  
 
                   
                 
                - 
                  
 
                   
                 
                - 
                  
 
                   
                 
               
             
           
          
            
              - 
                
 Установка подсистем валидации «validator.tr.gosmonitor.ru»
               
             
           
          
             
            Разархивирование контента в корневую директорию хоста веб-сервера: 
            tar -xzf validator.tr.gosmonitor.ru.tar.gz --strip-components=1 -C /PATH_TO_VALIDATOR.TR.MONITORING/
  
             
            Изменить владельца папки на пользователя web-сервера: 
            chown -R apache:apache /PATH_TO_VALIDATOR.TR.MONITORING/
  
           
          
            
              - 
                
 Установка подсистемы АИС «Госмонитор»
               
             
           
          
             
            Разворачивание контента:
  
           
          
             
            Разархивирование контента в корневую директорию хоста веб-сервера: 
            tar -xzf gosmonitor.ru.tar.gz --strip-components=1 -C /PATH_TO_GOSMONITOR/
  
             
            Изменить владельца папки на пользователя web-сервера: 
            chown -R apache:apache /PATH_TO_GOSMONITOR/
  
           
          
             
            Разворачивание БД СУБД MariaDB. Предполагается выполнение команд от пользователя, аделённого правами на создание БД и пользователей:
  
           
          
             
            Создание новой БД: 
            mysql -e «create database gosmonitorru;»
  
             
            Создание пользователя , наделение его правами на управление созданной базой данных gosmonitorru и установление ему пароля 
            : 
            mysql -e «grant all privileges on `gosmonitorru`.* to 'user'@'localhost' identified by 'password';»
  
             
            Разархивирование архива БД СУБД MariaDB и импорт его в созданную БД gosmonitorru: 
            gunzip -c gosmonitor.ru sql.gz | mysql gosmonitorru
  
           
          
            - 
              
 
              Корректировка файла-настроек. Используйте любой редактор (vi, vim, mc, nano и т.п.): 
              nano /PATH_TO_GOSMONITOR/sites/default/settings.php 
              
                 
                Изменение реквизитов доступа к БД СУБД MariaDB: 
                Необходимо изменить в файле название БД, имя пользователя, пароль и хост на такие, которые были созданы в момент разворачивания БД. 
                Находим и меняем директиву: 
                array ( 
                'database' => 'gosmonitorru', 
                'username' => 'user', 
                'password' => 'password', 
                'host' => 'localhost', 
                'port' => '', 
                'driver' => 'mysql', 
                'prefix' => '', 
                )
  
                 
                Если СУБД mongodb работает на другом сервере, можно указать его адрес и реквизиты для подключения, для перенаправления соответствующих запросов. 
                $conf['mongodb_settings'] = array( 
                'uri' => 'mongodb://127.0.0.1:27017/', 
                'username' => 'user_mongo', 
                'password' => 'password_mongo', 
                'options' => array( 
                'connectTimeoutMS' => 10000 
                ), 
                );
  
               
             
           
          
             
            Перезапускаем (перечитываем конфигурацию) web-сервер:
  
            
          /etc/init.d/httpd graceful 
          
            - 
              
 
              Запустить виджет – подсистема для отображения панели на сайтах, выполнивших установку кода виджета и отображения сводной информации об отзывах, а так же предоставления удобного интерфейса для создания отзыва по текущему гос.сайту: 
              
                 
                Перейти в /PATH_TO_GOSMONITOR/sites/default/modules/widget/nodejs/
  
                 
                Выполнить 
                sh ./check_and_run.sh &
  
               
             
             
            Запустить сервис solr:
  
           
          
            
               
              см.п.1.6.
  
               
              Необходимо зайти на сайт и выполнить авторизацию под администратором системы.
  
               
              Далее перейти в главном меню (сверху) «Конфигурация» - «Поиск и метаданные» - «Search API»
  
               
              Напротив значения «Тип – сервер» нажать «Правка».
  
               
              Проверить параметры подключения к сервису Tomcat-Solr. Если Вы используете http-авторизацию – внести соответствующие параметры в настройках.
  
               
              Нажать «Сохранить параметры».
  
             
           
          
             
            Проверяем работоспособность сайта, пройдя по его url-адресу.
  
            
           
           
          
            
              - 
                
 Установка подсистемы сбора технических показателей объектов мониторинга
               
             
           
          
             
            Разворачивание контента:
  
           
          
             
            Разархивирование контента в корневую директорию хоста веб-сервера: 
            tar -xzf tr.gosmonitor.ru.tar.gz --strip-components=1 -C /PATH_TO_TRGM/
  
             
            Изменить владельца папки на пользователя web-сервера: 
            chown -R apache:apache /PATH_TO_TRGM/
  
           
          
            - 
              
 
              Разворачивание СУБД mongodb. 
              
                 
                См.п. 1.8.
  
                 
                Изменение реквизитов доступа к БД СУБД mongodb. Все параметры находятся в файле конфигурации: 
                nano /PATH_TO_TRGM/app/config/parameters.yml
  
               
             
            - 
              
 
              Настройка конфигурационного файла supervisor.conf. Необходимо открыть и отредактировать следующие пункты: 
              
                 
                В секции [inet_http_server] – username, password port для дальнейшего подключения по этим реквизитам веб-интерфейса подсистемы сбора технических показателей объектов мониторинга.
  
                 
                Все переменные /PATH_TO_TRGM/ и /PATH_TO_VALIDATOR.TR.MONITORING/- на соответствующие реальным.
  
                 
                В секциях [event*] изменить адрес почты администратора при необходимости.
  
               
             
             
            Запуск сервиса supervisord - см. п.1.7. 
  
           
          
            
              - 
                
 Установка веб-интерфейса подсистемы сбора технических показателей объектов мониторинга
               
             
           
          
             
            Разворачивание контента:
  
           
          
             
            Разархивирование контента в корневую директорию хоста веб-сервера: 
            tar -xzf monitor.tr.gosmonitor.ru.tar.gz --strip-components=1 -C /PATH_TO_MONITORING_TR/
  
             
            Изменить владельца папки на пользователя web-сервера: 
            chown -R apache:apache /PATH_TO_MONITORING_TR/
  
           
          
             
            Отредактировать реквизиты подключения веб-интерфейса к сервису supervisord в конфигурационном файле, указав ip, port, username и password: 
            nano /PATH_TO_MONITORING_TR/application/config/supervisor.php
  
           
          
            - 
              
 Обслуживание программного комплекса
              
                - 
                  
 Общие рекомендации по обслуживанию ПО
                 
               
             
            
          Для поддержания работоспособности системы необходимо производить следующие действия: 
          
             
            Мониторинг работоспособности системы. – Проверка соответствия всех показателей системы оптимальным значениям. Для просмотра показателей необходимо перейти во вкладку отчеты в панели администрирования и нажать на ссылку «Отчет о состоянии».
  
             
            Обновление версий и установка патчей. Для этого необходимо запускать файл update.php (более подробно данное действие описано в руководстве администратора системы).
  
             
            Резервное копирование данных.
  
             
            Управление производительностью. Для этого необходимо зайти во вкладку конфигурация и перейти по ссылке производительность. Для улучшения показателей системы можно включить функцию кэширования (отключено по умолчанию), а также отчистить его.
  
           
          
            
              - 
                
 Резервное копирование данных
               
             
            
          Резервная копия программного комплекса создаётся путём автоматического запуска скрипта и создания с его помощью: 
           
          а) инкрементной резервной копии файлов; 
           
          б) дампа базы данных (БД) СУБД MariaDB; 
           
          в) дампа базы данных СУБД mongodump. 
           
          Инкрементная резервная копия файлов создаётся с помощью программы rdiff-backup. Дамп БД СУБД MariaDB — с помощью mysqldump, БД СУБД mongodb – с помощью mongodump. 
           
          Скрипт автоматически запускается операционной системой, на которой находится программный комплекс в указанное время с помощью планировщика задач. После окончания работы скрипта, отправляется отчёт на указанную почту. 
          Общий вид команды автоматического запуска скрипта имеет вид: 
           
          « 
           
          00 01 * * * root /root/scripts/backup_mysql_rdiff.sh 2>&1 | mail -s "Backup xx.xx.xx.xx report" admin@gosmonitor.ru 
           
          » 
           
          Где: 
           
          00 01 * * * - минуты, часы, числа, месяцы, дни недели запуска скрипта; 
           
          root — пользователь, от имени которого выполняется скрипт; 
           
          /root/scripts/backup_mysql_rdiff.sh — абсолютный путь до исполняемого скрипта; 
           
          2>&1 — перенаправление потока ошибок в стандартный поток вывода; 
           
          | - конвейер, позволяющий передать результат работы (вывод) одной программы на вход другой; 
           
          mail — программа, отправляющая письмо; 
           
          -s "Backup xx.xx.xx.xx report" — опция, указывающая тему письма; 
           
          admin@gosmonitor.ru — адрес получателя письма. 
          Общий вид отчёта выглядит как: « 
           
          xx.xx.xx.xx /root/scripts/backup_mysql_rdiff.sh 
           
          gosmonitor.ru Current mirror: Mon Oct 14 14:06:59 2013 
          Databases MariaDB 
           
          -rw-r--r-- 1 root root 85957 Окт 1 01:20 gosmonitorru-2013_10_01_01.sql.gz 
           
          Databases mongodb 
           
          -rw-r--r--. 1 root root 9253614 Окт 1 01:20 trgosmonitorru-2013_10_01_01.tar.bz2 
           
          » 
           
          Где: 
           
          xx.xx.xx.xx — IP адрес сервера на котором запускался скрипт; 
           
          /root/scripts/backup_mysql_rdiff.sh — абсолютный путь скрипта; 
           
          gosmonitor.ru Current mirror: Mon Oct 14 14:06:59 2013 — имя, дата и время последней резервной копии системы (портала); 
           
          Databases MariaDB — обозначение раздела, в котором перечисляются существующие дампы БД СУБД MariaDB; 
           
          -rw-r--r-- 1 root root 85957 Окт 1 01:20 gosmonitorru-2013_10_01_01.sql.gz — дамп БД СУБД MariaDB с указанными датой и временем создания; 
           
          Databases mongodb — обозначение раздела, в котором перечисляются существующие дампы БД СУБД mongodb; 
           
          -rw-r--r--. 1 root root 9253614 Окт 1 01:20 trgosmonitorru-2013_10_01_01.tar.bz2 — дамп БД СУБД mongodb с указанными датой и временем создания. 
           
          Сам скрипт представляет собой набор последовательных команд, которые создают резервную копию данных и отправляют её на хранение на Сервер резервных копий данных. 
          Общий вид скрипта: 
           
          #!/bin/bash 
           
          www="/var/www" 
           
          serverIP="xx.xx.xx.xx" 
           
          backupWwwDir="/backup/$serverIP/www" 
           
          backupMariaDBDir="/backup/$serverIP/dumps" 
           
          backupSrvIP="xx.xx.xx.xx" 
           
          mariaDBRootPaswd="your_mysql_root_password" 
           
          mariaDBDumpOptions="--single-transaction --quick --skip-extended-insert" 
           
          mongoDir=”="/backup/$serverIP/mongo” 
           
          dd=`date +'%Y_%m_%d_%H'` 
          ## hostname for backup in /var/www folder 
           
          hostName=" 
           
          domain.com 
           
          " 
           
          ## Backups file system 
           
          for host in $hostName; 
           
          do 
           
          nice -n 20 rdiff-backup $www/$host $backupSrvIP::$backupWwwDir/$host; 
           
          echo -n $host && echo -e "\t\t`ssh $backupSrvIP rdiff-backup -l $backupWwwDir/$host/ | tail -1`"; 
           
          done 
          ## Backups DBs MariaDB 
           
          for db in `mysql -p$mysqlRootPaswd -Ns -e "show databases;" | grep -v performance_schema | grep -v information_schema | grep -v mysql`; 
           
          do 
           
          mysqldump -p$mariaDBRootPaswd $mariaDBDumpOptions $db | gzip | ssh $backupSrvIP dd of="$backupMariaDBDir/$db-$dd.sql.gz" > /dev/null 2>&1 
           
          done 
          ## Backup MongoDB 
          cd /root && mongodump --quiet; 
          cd /root/dump/; 
          for db in `ls`; do 
           
          tar -cjf /root/dump/$db.tar.bz2 ./$db; 
           
          scp /root/dump/$db.tar.bz2 backupSrvIP:$mongoDir /$db-$dd.tar.bz2; 
           
          rm -rf /root/dump/$db; 
           
          rm -rf /root/dump/$db.tar.bz2; 
           
          done 
          cd /root && rm -rf /root/dump/ 
          ## The output list of databases 
           
          echo "Databases MariaDB " 
           
          ssh $backupSrvIP ls -la $backupMariaDBDir | grep `date +'%Y_%m'` 
           
          echo "Databases mongodb" 
           
          ssh $backupSrvIP ls -la $backupDir | grep `date +'%Y_%m'` 
          Резервное копирование производится минимум раз в сутки. 
          
            
              - 
                
 Рекомендации по конфигурации аппаратного комплекса
               
             
            
          Заказчик предоставляет Исполнителю для обеспечения работы АИС «Мониторинг Госсайтов» следующую техническую инфраструктуру: 
           
          Таблица – Вычислительная инфраструктура (виртуальные серверы) 
          
            
            
            
            
            
            
            
            
              
                 
                №
  | 
                 
                Назначение сервера
  | 
                 
                Кол-во ядер (шт.)
  | 
                 
                Объем ОЗУ 
                 
                (Гб)
  | 
                 
                Объем системы хранения данных 
                 
                (Гб) 
                
  | 
                 
                Операционная система
  | 
                 
                Наличие внешнего IP-адреса (Да/Нет)
  | 
               
            
            
              
                 
                1.
  | 
                 
                Виртуальный веб-сервер
  | 
                 
                16
  | 
                 
                32
  | 
                 
                300
  | 
                 
                CentOS 6 
                
  | 
                 
                Да
  | 
               
              
                 
                2.
  | 
                 
                Сервер резервного копирования
  | 
                 
                1 (4 ядра)
  | 
                 
                4
  | 
                 
                250
  | 
                 
                CentOS 6 
                
  | 
                 
                Нет
  | 
               
            
            
           
           
          
             
             
            Формат А4
  
             
             
           
         |