Изучение 26 методов анализа больших данных: часть 1
Изучение 26 методов анализа больших данных: часть 1
В руководстве « Как установить и настроить Sensu Monitoring в CentOS 7 » вы узнали, как настроить сервер Sensu. Это руководство является второй частью, где вы узнаете, как добавить клиент Sensu. Клиент Sensu - это сервер, который контролирует Sensu.
Я предполагаю, что клиент Sensu является виртуальной машиной CentOS 7. Войдите в SSH и следуйте инструкциям ниже. Вам не нужно ничего менять на сервере Sensu. Пока клиент Sensu успешно проходит аутентификацию на сервере Sensu, проверки будут выполняться автоматически.
Прежде чем мы начнем, убедитесь, что ваш брандмауэр настроен правильно. При настройке по умолчанию откройте исходящие порты TCP 5671и 5672.
Пакет 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которые мы будем использовать. Не запускайте сервис еще.
Модель 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
Мы добавим четыре файла конфигурации в клиент 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
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
Изучение 26 методов анализа больших данных: часть 1
Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.
Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.
Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.
Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.
По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.
CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?
Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!
Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.
Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше