Як додати клієнт CentOS 7 Sensu

У посібнику « Як встановити та налаштувати моніторинг Sensu на CentOS 7 » ви дізналися, як налаштувати сервер Sensu. Цей посібник є другою частиною, де ви дізнаєтеся, як додати клієнт Sensu. Клієнт Sensu — це сервер, який відстежує Sensu.

Я припускаю, що клієнт Sensu є віртуальною машиною CentOS 7. Увійдіть в SSH і виконайте наведені нижче дії. Вам не доведеться нічого змінювати на сервері Sensu. Поки клієнт Sensu успішно аутентифікується на сервері Sensu, перевірки виконуватимуться автоматично.

Перш ніж почати, переконайтеся, що ваш брандмауер налаштовано правильно. За умовчанням відкрийте вихідні порти TCP 5671і 5672.

Крок 1: Додайте репозиторій Sensu

Пакету sensu-clientнемає у сховищах CentOS за замовчуванням. Додайте сховище, вставивши наступний вміст у файл /etc/yum.repos.d/sensu.repo:

[sensu]
name=sensu
baseurl=https://sensu.global.ssl.fastly.net/yum/$releasever/$basearch/
gpgcheck=0
enabled=1

Далі оновіть yumта встановіть sensu-client:

yum update
yum install sensu

Усі служби ( sensu-server, sensu-clientі sensu-api) будуть встановлені шляхом встановлення sensuпакета. Ви можете сміливо ігнорувати всі послуги, крім тих, sensu-clientякими ми будемо користуватися. Поки що не запускайте службу.

Крок 2: Встановіть необхідні плагіни

Модель Sensu полягає в розподілі навантаження на клієнтів, яке виникає в результаті виконання перевірок і передавання результатів перевірки. В результаті вам потрібно встановити плагіни Sensu на самих клієнтах, а не на сервері Sensu. Деякі плагіни компілюються локально, а це означає, що нам знадобляться інструменти для створення на клієнтах:

yum groupinstall "Development tools"

Наступні плагіни дуже популярні та використовуються для багатьох перевірок. Виконайте кожну з цих команд, щоб встановити плагіни після встановлення пакетів інструментів розробки. Залежно від розміру вашого сервера це може зайняти деякий час:

sensu-install -p uptime-checks
sensu-install -p process-checks
sensu-install -p http
sensu-install -p filesystem-checks
sensu-install -p cpu-checks
sensu-install -p memory-checks
sensu-install -p disk-checks
sensu-install -p load-checks
sensu-install -p network-checks

Крок 3: Додайте файли конфігурації

Ми додамо чотири файли конфігурації до клієнта Sensu.

  • /etc/sensu/conf.d/client.json:

    Цей файл містить підписки, IP-адресу клієнта Sensu та ім’я клієнта. Замініть значення ipaddressта hostnameзначеннями, які описують клієнта, який ви додаєте. Також вкажіть підписки, визначені на сервері Sensu, або, якщо у вас їх немає, видаліть весь subscriptionsрозділ. Не забудьте видалити кому після name:

    {
        "client": {
            "address": "-----ipaddress-----",
            "environment": "production",
            "name": "-----hostname-----",
            "subscriptions": [
                "linux"
            ]
        }
    }
    
  • /etc/sensu/conf.d/transport.json:

    У цьому файлі ми визначаємо використовуваний транспорт. За замовчуванням використовується транспорт RabbitMQ. Вставте наступний вміст у файл. Значення не потрібно змінювати:

    {
        "transport": {
            "name": "rabbitmq",
            "reconnect_on_error": true
        }
    }
    
  • /etc/sensu/conf.d/rabbitmq.json:

    Сервер RabbitMQ та облікові дані вказані в цьому файлі. Замініть hostnameім’ям DNS. За замовчуванням порт призначений 5672для незашифрованих з’єднань. Користувача і пароль RabbitMQ також слід замінити. Ці дані можуть відрізнятися для кожного клієнта Sensu або бути однаковими для всіх клієнтів. Це практичне рішення, яке приймає користувач.

    vhostЦе /за замовчуванням , але часто змінюється на /sensu. Якщо ви не впевнені, що використовувати, спробуйте обидва:

    {
        "rabbitmq": {
            "host": "-----hostname-----",
            "password": "-----rabbitmq_password-----",
            "port": 5672,
            "user": "-----username-----",
            "vhost": "/sensu"
        }
    }
    
  • /etc/sensu/conf.d/checks.json:

    Sensu підтримує два типи перевірок: окремі перевірки та перевірки підписки. Перевірки підписки визначаються на сервері Sensu, а підписки визначаються у client.jsonфайлі на клієнті Sensu. Автономні перевірки – це перевірки, які визначаються на самих клієнтах Sensu. Зазвичай це перевірки, які застосовуються лише до одного конкретного сервера. Наприклад, перевірка передплати — це перевірка, щоб перевірити, чи веб-сервер все ще працює. Окрема перевірка може бути перевіркою, щоб перевірити, чи може сервер A досягти сервера B. Жодному іншому серверу не потрібна ця перевірка.

    У цьому файлі визначено окремі перевірки. Нижче ви знайдете приклад checks.jsonфайлу з деякими прикладами автономних перевірок:

    {
        "checks": {
            "httpd": {
                "command": "sudo check-process.rb -p httpd",
                "handlers": [
                    "default",
                    "pushover"
                ],
                "interval": 180,
                "occurences": 3,
                "refresh": "1800",
                "standalone": true,
                "ttl": 1200
            },
            "mysqld": {
                "command": "sudo check-process.rb -p mysqld",
                "handlers": [
                    "default",
                    "pushover"
                ],
                "interval": 180,
                "occurences": 3,
                "refresh": "1800",
                "standalone": true,
                "ttl": 1200
            }
        }
    }
    

Після завершення налаштування клієнта Sensu змініть права:

chown -R sensu:sensu /etc/sensu/conf.d

Крок 4: Надайте дозволи sensuкористувачеві

Перевірки виконуються як користувач sensu. Природно, цей користувач має обмежені права. Однак rootдля виконання деяких перевірок потрібні дозволи. Ми дозволимо користувачеві sensuвиконувати будь-яку перевірку, rootале обмежимо інші його дозволи.

Вставте наступний вміст у файл /etc/sudoers.d/sensu:

Defaults:sensu
secure_path=/opt/sensu/embedded/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

sensu ALL=(ALL) NOPASSWD: /opt/sensu/embedded/bin/check*.rb *
sensu ALL=(ALL) NOPASSWD: /opt/sensu/embedded/bin/metrics*.rb *

Перші два рядки визначають шлях за замовчуванням, який дозволяє вказати лише ім’я сценарію в команді перевірки, а не весь шлях. Наприклад, просто використання команди sudo check-process.rb -p mysqldфункціонуватиме без необхідності вказувати весь шлях ( /opt/sensu/embedded/bin/check-process.rb -p mysqld).

Інші рядки дозволяють sensuкористувачеві виконувати будь-який сценарій перевірки як root.

Нарешті, запустіть sensu-clientслужбу та автоматично запустіть її під час завантаження:

systemctl start sensu-client
systemctl enable sensu-client

Якщо у вас інстальовано Uchiwa, новий клієнт повинен з’явитися у списку. Якщо ні, налагодьте sensu-client, перевіривши файл журналу/var/log/sensu/sensu-client.log

Залишити коментар

Повстання машин: застосування ШІ в реальному світі

Повстання машин: застосування ШІ в реальному світі

Штучний інтелект не в майбутньому, він тут прямо в сьогоденні У цьому блозі Прочитайте, як програми штучного інтелекту вплинули на різні сектори.

DDOS-атаки: короткий огляд

DDOS-атаки: короткий огляд

Ви також стали жертвою DDOS-атак і спантеличені методами запобігання? Прочитайте цю статтю, щоб вирішити свої запитання.

Ви коли-небудь замислювалися, як хакери заробляють гроші?

Ви коли-небудь замислювалися, як хакери заробляють гроші?

Можливо, ви чули, що хакери заробляють багато грошей, але чи замислювалися ви коли-небудь, як вони заробляють такі гроші? давайте обговоримо.

Революційні винаходи від Google, які полегшать ваше життя.

Революційні винаходи від Google, які полегшать ваше життя.

Ви хочете побачити революційні винаходи Google і як ці винаходи змінили життя кожної людини сьогодні? Тоді читайте в блозі, щоб побачити винаходи Google.

Friday Essential: Що сталося з автомобілями, керованими штучним інтелектом?

Friday Essential: Що сталося з автомобілями, керованими штучним інтелектом?

Концепція самокерованих автомобілів, щоб вирушати в дороги за допомогою штучного інтелекту, є мрією, яку ми давно мріємо. Але, незважаючи на кілька обіцянок, їх ніде не видно. Прочитайте цей блог, щоб дізнатися більше…

Технологічна сингулярність: віддалене майбутнє людської цивілізації?

Технологічна сингулярність: віддалене майбутнє людської цивілізації?

Оскільки наука розвивається швидкими темпами, бере на себе багато наших зусиль, ризики піддати себе незрозумілій Сингулярності також зростає. Читайте, що може означати для нас сингулярність.

Функціональні можливості шарів еталонної архітектури великих даних

Функціональні можливості шарів еталонної архітектури великих даних

Прочитайте блог, щоб дізнатися про різні шари архітектури великих даних та їх функціональні можливості найпростішим способом.

Еволюція зберігання даних – інфографіка

Еволюція зберігання даних – інфографіка

Методи зберігання даних можуть розвиватися з моменту народження Даних. Цей блог висвітлює еволюцію зберігання даних на основі інфографіки.

6 дивовижних переваг використання пристроїв розумного дому в нашому житті

6 дивовижних переваг використання пристроїв розумного дому в нашому житті

У цьому цифровому світі пристрої розумного дому стали важливою частиною життя. Ось кілька дивовижних переваг пристроїв розумного дому щодо того, як вони роблять наше життя гідним життя та спрощують його.

Оновлення доповнення macOS Catalina 10.15.4 спричиняє більше проблем, ніж вирішує

Оновлення доповнення macOS Catalina 10.15.4 спричиняє більше проблем, ніж вирішує

Нещодавно Apple випустила додаткове оновлення macOS Catalina 10.15.4, щоб виправити проблеми, але схоже, що оновлення викликає більше проблем, що призводять до блокування комп’ютерів Mac. Прочитайте цю статтю, щоб дізнатися більше