Статьи

  Резюме
  [-] IT
    [-] Asterisk
      Мониторинг сервера
      Несколько серверов
      Позвони мне
      Установка G729
    [+] Ubuntu Desktop
    [+] Ubuntu Server
    [+] Windows Server
  [+] Программирование
    [+] 1C
    ASP.NET & VB.NET
    bash & sh
    [+] HTML + CSS
    [+] Java
    PHP
    [+] QB - Quick Basic 4-4.5
    [+] T-SQL
    [+] VB - Visual Basic 1-6
    VBScript & JScript
  [+] Творчество
    Кофейная тема
    Наброски
    Размышления
Мониторинг сервера

 

При удаленном расположении сервера, существует необходимость мониторинга его состояния. Однако, не всегда под рукой оказывается putty или linux-terminal. Есть возможность получить диагностику сервера через http.

Инструменты: php, bash

 

Пример работы:

 

 

Скрипт на php

system('serverstatus.sh',$out);
echo $out;

 

Скрипт на bash

#!/bin/bash

# получить информацию по активным / неактивным телефонам
echo '
'
sudo /usr/sbin/asterisk -rx "sip show peers"
echo '

' # получить информацию по активным каналам echo '


' echo '

'

sudo /usr/sbin/asterisk -rx "sip show channels" echo '' # узнать текущую температуру и показатели напряжения сервера echo '


' echo '

'

sudo /usr/bin/sensors echo '' # получить SMART по первому ЖД echo '


' echo '

'

sudo /usr/sbin/smartctl -a /dev/sda echo '' # получить SMART по второмоу ЖД echo '


' echo '

'

sudo /usr/sbin/smartctl -a /dev/sdb echo ''

Для того, чтобы были права на выполнение данных операций, необходимо разрешить выполнение операций без пароля системного администратора. Изменения необходимо сделать в файле /etc/sudoers

 

Пример:

www-data ALL=NOPASSWD: /usr/sbin/asterisk
www-data ALL=NOPASSWD: /usr/bin/sensors
www-data ALL=NOPASSWD: /usr/sbin/smartctl 



X
ПнВтСрЧтПтСбВс