Comments 64
freebsd is currently unsupported, apologies!
Очень печально.
Валерий, прокомментируйте, пожалуйста, когда ждать версию под FreeBSD и с чем связан unsupported?
P.S. Ставил на рабочий проект, всё идеально установилось. Nginx 1.8.1, Ubuntu 12.04.
Теперь практически отпадает необходимость в Munin и прочих системах мониторинга.
Было бы неплохо на некоторых графиках также видеть статистику не по всей системе, а по виртуальным хостам, чтобы понимать какой именнно хост создаёт нагрузку, наибольшее кол-во ошибок и какой пора переносить на более мощное железо.
7. Updating repository… failed.
Please check the list of supported systems here git.io/vKkev
Действительно не отвечает:
# curl -v packages.amplify.nginx.com/centos/6/x86_64/repodata/repomd.xml
* About to connect() to packages.amplify.nginx.com port 443 (#0)
* Trying 52.9.219.142… Время ожидания соединения истекло
* couldn't connect to host
* Closing connection #0
curl: (7) couldn't connect to host
curl -v packages.amplify.nginx.com/centos/6/x86_64/repodata/repomd.xml * Trying 52.9.219.142...
* Connected to packages.amplify.nginx.com (52.9.219.142) port 80 (#0)
> GET /centos/6/x86_64/repodata/repomd.xml HTTP/1.1
> Host: packages.amplify.nginx.com
> User-Agent: curl/7.45.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Server: nginx
< Date: Mon, 11 Jul 2016 12:40:52 GMT
< Content-Type: text/xml
< Content-Length: 2985
< Last-Modified: Fri, 01 Jul 2016 19:36:11 GMT
< Connection: keep-alive
< ETag: "5776c62b-ba9"
< Accept-Ranges: bytes
......
traceroute? Проверил из разных концов света — всё работает.
- Graphs для всех проектов один
- Prewiew стрелочкой скрываю, затем после перехода с одного сервера на другой Preview снова появляется
Поправьте меня, пожалуйста, если я просто не нашёл как сделать правильно.
P.S. Русскую версию бы ещё.
Использовать абсолютный путь:
https://github.com/nginxinc/nginx-amplify-doc/blob/master/amplify-guide.md#detecting-and-monitoring-nginx-instances
Для каких целей amplify-agent считывает *.pem файлы?
Использую SSL от https://letsencrypt.org/, стандартно все ключи принадлежат root.
/var/log/amplify-agent/agent.log
nginx_config could not read /etc/letsencrypt/live/host.ru/fullchain.pem (maybe permissions?)
777 права на файл не помогают
помогает только в /etc/amplify-agent/agent.conf прописать:
[nginx]
user = root
ошибка пропала из системы мониторинга.
nginx у меня запущен от root, воркеры от пользователя nginx.
правильно ли запускать amplify-agent от root?
Предполагаю, что amplify-agent просто проверяет права на чтение всех файлов которые как-то указаны в конфиге nginx, но тогда точно надо от root или от пользователя от которого запущен nginx-master.
E: The method driver /usr/lib/apt/methods/https could not be found.
N: Is the package apt-transport-https installed?
7. Updating repository ... failed.
Поставить вручную помогло
11. Checking if euid 116(nginx) can find root processes ... agent won't be able to detect nginx - ps(1) is restricted!
Не очень понятно почему — делалось то всё под рутом.
У нас используется hidepid=2 (и это нельзя изменить). Если это оно мешает — может как-то можно вручную помочь?
После установки на паре вдс на опенвз — решил поставить на саму ноду. На что установщик мне радостно сделал
Stopping old amplify-agent, pid 261617
275334
288169
Launching amplify-agent ...
В реальности он правда ничего не постопил и вроде всё как было запущено — так и осталось.
Вопрос — зачем оно использует вообще ps вместо пид файлов?
А еще оно не умеет определять venet интерфейсы внутри опенвз.
Starting amplify-agent (via systemctl): Job for amplify-agent.service failed because a configured resource limit was exceeded. See «systemctl status amplify-agent.service» and «journalctl -xe» for details.
Jul 11 19:43:24 server amplify-agent[15247]: Starting nginx-amplify-agent: runuser: cannot open session: Permission denied
Дальнейшие раскопки в /var/log/secure дают такое:
Jul 11 19:43:24 server runuser: pam_limits(runuser:session): Could not set limit for 'nofile': Operation not permitted
А на другом таком же сервере все запустилось.
Проверьте выполнение следующих условий:
https://github.com/nginxinc/nginx-amplify-doc/blob/master/amplify-guide.md#what-to-check-if-amplify-agent-isnt-reporting-metrics
Также стоит расширить формат логов и повысить уровень логгирования у error_log
:
https://github.com/nginxinc/nginx-amplify-doc/blob/master/amplify-guide.md#additional-nginx-metrics
2016-07-12 20:40:54,328 [480] nginx_metrics failed to collect metrics workers_fds_count due to AccessDenied
2016-07-12 20:40:54,335 [480] nginx_metrics failed to collect metrics workers_rlimit_nofile due to AccessDenied
2016-07-12 20:40:54,335 [480] nginx_metrics failed to collect metrics workers_io due to AccessDenied
Только эти три метрики. Что с этим делать?
2016-07-12 21:00:08,394 [10166] nginx_metrics failed to collect metrics workers_fds_count due to AccessDenied
2016-07-12 21:00:08,395 [10166] nginx_metrics additional info:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/amplify/agent/collectors/nginx/metrics.py", line 52, in collect
method()
File "/usr/lib/python2.7/dist-packages/amplify/agent/collectors/nginx/metrics.py", line 120, in workers_fds_count
fds += p.num_fds()
File "/usr/lib/python2.7/dist-packages/amplify/psutil/__init__.py", line 690, in num_fds
return self._proc.num_fds()
File "/usr/lib/python2.7/dist-packages/amplify/psutil/_pslinux.py", line 877, in wrapper
raise AccessDenied(self.pid, self._name)
AccessDenied: psutil.AccessDenied (pid=21287)
2016-07-12 21:00:08,401 [10166] nginx_metrics failed to collect metrics workers_rlimit_nofile due to AccessDenied
2016-07-12 21:00:08,401 [10166] nginx_metrics additional info:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/amplify/agent/collectors/nginx/metrics.py", line 313, in collect
method()
File "/usr/lib/python2.7/dist-packages/amplify/agent/collectors/nginx/metrics.py", line 349, in workers_rlimit_nofile
rlimit += p.rlimit_nofile()
File "/usr/lib/python2.7/dist-packages/amplify/agent/common/util/ps.py", line 84, in rlimit_nofile
return self.rlimit(psutil.RLIMIT_NOFILE)[1]
File "/usr/lib/python2.7/dist-packages/amplify/psutil/__init__.py", line 740, in rlimit
return self._proc.rlimit(resource)
File "/usr/lib/python2.7/dist-packages/amplify/psutil/_pslinux.py", line 877, in wrapper
raise AccessDenied(self.pid, self._name)
AccessDenied: psutil.AccessDenied (pid=21287)
2016-07-12 21:00:08,402 [10166] nginx_metrics failed to collect metrics workers_io due to AccessDenied
2016-07-12 21:00:08,402 [10166] nginx_metrics additional info:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/amplify/agent/collectors/nginx/metrics.py", line 313, in collect
method()
File "/usr/lib/python2.7/dist-packages/amplify/agent/collectors/nginx/metrics.py", line 367, in workers_io
io = p.io_counters()
File "/usr/lib/python2.7/dist-packages/amplify/psutil/__init__.py", line 702, in io_counters
return self._proc.io_counters()
File "/usr/lib/python2.7/dist-packages/amplify/psutil/_pslinux.py", line 877, in wrapper
raise AccessDenied(self.pid, self._name)
AccessDenied: psutil.AccessDenied (pid=21287)
По вашей проблеме смотрите документацию:
https://github.com/nginxinc/nginx-amplify-doc/blob/master/amplify-guide.md#what-to-check-if-amplify-agent-isnt-reporting-metrics
А точнее последний пункт:
Some VPS providers use hardened Linux kernels that may restrict non-root users from accessing /proc and /sys. Metrics describing system and NGINX disk I/O are usually affected. There is no an easy workaround for this except for allowing the agent to run as root. Sometimes fixing permissions for /proc and /sys/block may work.
NcYMVgDUF@5LZ>O]iuL6H6
А. Понял. Он слишком длинный. Не больше 20-ти символов.
Хотел понаблюдать метрику NGINX REQ/S.
Говорит:
Metrics unavailable:
nginx.http.request.count
внял советам из вашего коммента https://habrahabr.ru/post/305384/#comment_9697278, логи расширил, stub_status вкл и пр.
А Метрики нет.
Что нужно для этого?
Анонс публичной бета-версии NGINX Amplify