5 вопросов и ответов на собеседование с системным аналитиком

Шаг 2 — Настройка обратного прокси-сервера

Использование сертификата SSL гарантирует безопасность ваших данных путем шифрования подключения к Grafana и от него. Однако для использования этого подключения сначала необходимо перенастроить Nginx в обратный прокси-сервер для Grafana.

Откройте файл конфигурации Nginx, который вы создали при настройке блока сервера Nginx с помощью Let’s Encrypt в . Вы можете использовать любой текстовый редактор, но для этого обучающего руководства мы будем использовать :

Найдите следующий блок:

/etc/nginx/sites-available/your_domain

Поскольку вы уже настроили Nginx для связи через SSL и поскольку весь веб-трафик на ваш сервер уже проходит через Nginx, вам просто нужно сообщить Nginx, чтобы он пересылал все запросы в Grafana, который работает в порту по умолчанию.

Удалите существующую строку в этом и замените ее на :

/etc/nginx/sites-available/your_domain

Это будет направлять прокси-сервер в соответствующий порт. После завершения сохраните и закройте файл, нажав , , а затем , если вы используете .

Теперь протестируйте новые настройки, чтобы убедиться, что все настроено правильно:

Результат будет выглядеть следующим образом:

Наконец, активируйте изменения, перезагрузив Nginx:

Теперь вы можете получить доступ к экрану входа по умолчанию Grafana, указав в адресной строке браузера ​​​. Если вы не можете получить доступ к Grafana, убедитесь, что брандмауэр установлен на разрешение приема трафика в порту , и затем отследите предыдущие инструкции.

После шифрования подключения к Grafana вы можете предпринять дополнительные меры защиты, начиная с изменения административных учетных данных Grafana по умолчанию.

Парсинг лога

Мы увидели логи в графане, но они представленны в неудобном для отбора и фильрации виде. Попробуем это исправить с помощью парсинга логов на стороне promtail.

Открываем файл для редактирования:

vi /etc/promtail/promtail.yaml

Дополним нашу задачу для сбора логов NGINX:


scrape_configs:
— job_name: nginx
  static_configs:
  — targets:
      — localhost
    labels:
      job: nginxlogs
      __path__: /var/log/nginx/*log
  pipeline_stages:
    — match:
        selector: ‘{job=»nginxlogs»}’
        stages:
        — regex:
            expression: ‘^(?P<remote_addr>+) — (?P<remote_user>*) \ «(?P<method>*) (?P<request>*) (?P<protocol>*)» (?P<status>+) (?P<body_bytes_sent>+) «(?P<http_referer>*)» «(?P<http_user_agent>*)»?’
        — labels:
            remote_addr:
            remote_user:
            time_local:
            method:
            request:
            protocol:
            status:
            body_bytes_sent:
            http_referer:
            http_user_agent:

* обратите внимание, что к имеющейся настройки мы добавили pipeline_stages:

selector — тег для отбора логов, которые нужно парсить.
expression — регулярное выражение для парсинга логов. 
labels — список тегов, которые мы будем передавать в loki

Обратите внимание, что названия данных тегов соответствую названиям, которые мы задали в expression.. Перезапускаем сервис для promtail:

Перезапускаем сервис для promtail:

systemctl restart promtail

Идем в Grafana — в Log labels мы должны увидеть новые критерии для фильтра по тегам:

Пробуем добавить, например, фильтр по статусу ответа веб-сервера:

Распределение

Внешняя форма данных, выраженная в мерах описательной статистики, даёт нам информацию об их характере. Это как в жизни: по фигуре, походке и одежде человека обычно можно догадаться о его поле, возрасте и даже профессии. В случае числовых данных мы догадываемся о распределении.

Термин пришёл из теории вероятностей, которая рассматривает любое событие в мире как имеющее ту или иную вероятность. Однородные события хоть и происходят с разной вероятностью, но подчиняются распределению, которое «раздаёт» им эти вероятности.

В Data Science распределение понимается обобщённо: это закон соответствия одной величины другой. Оно подсказывает нам, какой именно процесс может скрываться за данными, и то, насколько эти данные полны. Чуть подробнее об этом в нашей статье про математику для джунов.

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


Распределение размеров чашелистика ириса разноцветного. Изображение: Qwfp / Pbroks13 /

Величина ошибок измерения в физике, длина когтей, зубов и шерсти в биологии, объёмы речных стоков в гидрологии — все эти показатели имеют нормальное распределение. Это, пожалуй, самое распространённое в природе и не только в природе распределение, поэтому оно и названо нормальным.

Распределение Пуассона тоже часто встречается в работе дата-сайентистов и аналитиков: это число событий за какой-то промежуток времени — при условии, что события независимы друг от друга и имеют некоторый порог интенсивности.


При ƛ = 10 горка Пуассона похожа на колокол Гаусса. Будьте внимательны!

Это и число посетителей в торговом центре, и количество голов, забитых футбольной командой, и скорость роста колонии бактерий.

Существуют и , в том числе довольно экзотические: Вигнера, Вейбулла, Коши. Они встречаются намного реже или преимущественно в каких-то специальных областях вроде квантовой физики. Тем не менее дата-сайентисту нужно знать графики, параметры и названия основных распределений, благо их не так много.

Upgrading to v5.2

One of the database migrations included in this release will update all annotation timestamps from second to millisecond precision. If you have a large amount of annotations the database migration may take a long time to complete which may cause problems if you use systemd to run Grafana.

We’ve got one report where using systemd, PostgreSQL and a large amount of annotations (table size 1645mb) took 8-20 minutes for the database migration to complete. However, the grafana-server process was killed after 90 seconds by systemd. Any database migration queries in progress when systemd kills the grafana-server process continues to execute in database until finished.

If you’re using systemd and have a large amount of annotations consider temporary adjusting the systemd setting to something high like before upgrading.

Настройка grafana в Unix/Linux

Установленная grafana, будет работать — http://your_host_or_IP:3000, например как это можно видеть у меня:

Первый вход в grafana

Вводим логин и пароль ( для первого входа используйте admin/admin) и попадаем в дашборд. Его нужно настроить под себя. Для примера, я создам проект c Prometheus и построю ( добавлю) графики. И так, нажимаем на «Data Sources» и добавляем ( заполняем) строки, у меня это выглядит так:

Добавление Prometeus в Grafana

Как все заполнили, нажимаем на «Add». Собственно потом добавляем график и все!

PS: Но для этого нужно иметь уже установленный protheus сервер.

Настройка прокси-сервера для Grafana

Использовать 3000-й порт, — это нормально, но удобно юзать 80-й/443-й и для этого я буду использовать nginx в качестве прокси сервера. Установка описана вот тут:

Открываем конфиг:

# vim /etc/nginx/conf.d/grafana.conf

И прописываем:

server {
 	listen 80;
 	server_name grafana.local;
 	access_log /var/log/nginx/access-grafana.log;
 	error_log /var/log/nginx/error-frafana.log info;
	location / {
		#proxy_set_header X-WEBAUTH-USER $remote_user;
		proxy_pass http://127.0.0.1:3000;
		proxy_http_version 1.1;
		proxy_set_header Upgrade $http_upgrade;
        	proxy_set_header Connection 'upgrade';
		proxy_set_header   Host $host;
		proxy_cache_bypass $http_upgrade;
		proxy_set_header   X-Real-IP        $remote_addr;
            	proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
		proxy_max_temp_file_size 0;
		}
}

Вот и вся установка. Перезапускаем nginx + grafana.

Установка плагинов для  grafana

Самый простой способ установки плагинов — использовать grafana-cli который идет в комплекте с grafana. После внесения любых изменений (добавления, удаление плагинов), необходимо перезапустить grafana-server.

Все установленные плагины лежат в /var/lib/grafana/plugins. Можно переопределить каталог в котором будет работать grafana-cli, указав флаг «-pluginsDir».

И так, чтобы посмотреть список доступных плагинов, используйте команду:

$ grafana-cli plugins list-remote

Установите последнюю версию плагина:

$ grafana-cli plugins install <plugin-id>

Чтобы установить конкретную версию определенного плагина, используйте:

$ grafana-cli plugins install <plugin-id> <version>

Чтобы просмотреть какие плагины уже установлены, выполните:

$ grafana-cli plugins ls

Обновить все установленные плагины можно так:

$ grafana-cli plugins update-all

Или, если нужно обновить конкретный, то используйте:

$ grafana-cli plugins update <plugin-id>

Чтобы удалить определенный плагин, используйте следующую команду:

$ grafana-cli plugins remove <plugin-id>

На этом у меня все, статья «Установка grafana в Unix/Linux» завершена.

Как я стала аналитиком

Меня с детства интересовали математика и программирование, работа с данными, таблицами, поиск и анализ закономерностей. Работа аналитика включает все эти аспекты.

Я закончила НИУ ВШЭ по направлению, связанному с маркетингом. На факультете нам преподавали математику, статистику, прогнозирование, эконометрику, и эти предметы мне нравились больше всего. Кроме того, я занималась программированием на дополнительных курсах.

После окончания вуза я стала работать в PR, но вскоре поняла, что эта сфера деятельности мне не нравится. Мне было неинтересно, работала я через силу, заставляя себя приходить в офис. Поэтому я решила сменить направление. В вузе я узнала, как работает статистика, какие математические инструменты используются для анализа данных, познакомилась с языком программирования SQL. С этими навыками в резюме я решила посмотреть вакансии аналитика и вскоре нашла мою нынешнюю работу. Поначалу мне поручали и другие задачи, но постепенно аналитика стала моим основным занятием.

За три года я стала ведущим аналитиком— руководителем подразделения. В мои обязанности входит не только составление запросов в базы данных, но и распределение задач внутри моей команды, взаимодействие с заказчиками рекламных кампаний или аккаунт-менеджерами, которые ведут этого рекламодателя.

(Дополнительно) Шаг 6 — Настройка Grafana в качестве приложения OAuth для GitHub

Чтобы завершить аутентификацию GitHub для настройки Grafana, вы внесете некоторые изменения в файлы конфигурации Grafana.

Для начала откройте главный файл конфигурации Grafana.

Найдите заголовок и раскомментируйте этот раздел, удалив ​​​ в начале каждой строки, кроме и , которые не будут изменены в этом обучающем руководстве.

Затем выполните следующие изменения:

Установите и вместо . Это позволит выполнить аутентификацию GitHub разрешит членам дозволенной организации самостоятельно создавать учетные записи

Обратите внимание, что эта настройка отличается от свойства в ​​​, которое вы изменили в .
Установите и ​​​ вместо значений, полученных во время создания приложения OAuth для GitHub.
Установите ​​​ в качестве имени вашей организации, чтобы только члены вашей организации могли регистрироваться и входить в Grafana.

Полная конфигурация будет выглядеть следующим образом:

/etc/grafana/grafana.ini

Теперь вы сообщили Grafana всю необходимую информацию о GitHub. Чтобы завершить настройку, вам нужно будет активировать переадресации за обратным прокси-сервером. Это выполняется путем установки значения под заголовком .

/etc/grafana/grafana.ini

Сохраните конфигурацию и закройте файл.

Затем перезапустите Grafana для активации изменений:

Наконец, убедитесь, что служба запущена и работает.

Вывод будет указывать, что служба ​​​.

Теперь протестируйте новую систему аутентификации, перейдя на . Если вы уже вошли в Grafana, наведите мышку на аватар для входа в нижнем левом углу экрана и нажмите Sign out (Выход) в дополнительном меню, которое появляется рядом с вашим именем.

На странице входа вы увидите новый раздел под начальной кнопкой Log in (Вход), который включает кнопку Sign in with GitHub (Регистрация с помощью GitHub) с логотипом GitHub.

Нажмите на кнопку Sign in with GitHub (Регистрация с помощью GitHub) для перенаправления на GitHub, где вы зарегистрируете свою учетную запись GitHub и подтвердите свое намерение авторизовать Grafana (Authorize Grafana).

Нажмите на зеленую кнопку Authorize your_github_organization (Авторизовать your_github_organization).

Примечание. Убедитесь, что ваша учетная запись GitHub принадлежит к утвержденной организации, а ваш адрес электронной почты Grafana соответствует вашему адресу электронной почты GitHub. Если вы попытаетесь аутентифицировать учетную запись GitHub, которая не принадлежит к утвержденной организации, вы получите сообщение Login Failed (Ошибка входа) с текстом User not a member of one of the required organizations (Пользователь не является участником ни одной из утвержденных организаций).

Теперь вы выполните вход с помощью существующей учетной записи Grafana. Если учетная запись уже не существует для пользователя, в качестве которого вы выполнили вход, Grafana создаст новую учетную запись пользователя с разрешениями для просмотра (Viewer), чтобы новые пользователи могли использовать только существующие панели управления.

Чтобы изменить разрешения по умолчанию для новых пользователей, откройте главный файл конфигурации Grafana для редактирования.

Найдите директиву под заголовком и раскомментируйте настройку, удалив в начале строки.

Измените директиву на одно из следующих значений:

  • — может использовать только существующие панели управления
  • ​​​ — может использовать, изменять и добавлять панели управления
  • — имеет разрешение выполнять все действия

В этом руководстве будет установлено автоматическое присвоение :

/etc/grafana/grafana.ini

После сохранения изменений закройте файл и перезапустите Grafana:

Проверьте состояние службы:

Как и ранее, состояние будет выглядеть как ​​​.

На этом этапе вы полностью настроили Grafana, чтобы члены вашей организации GitHub могли регистрироваться и использовать вашу установку Grafana.

1.1. Как я встретил grafonnet

Как водится, всё началось с проблемы.

В конце 2019 года команда, частью которой я являюсь, сдавала в эксплуатацию заказчику два микросервиса-кэша (почитать про них можно здесь и здесь). Одной из «галочек» в чек-листе был настроенный мониторинг с автоматическими оповещениями об авариях. В инфраструктуре заказчика уже существовал полный стек: Telegraf, InfluxDB и Grafana. После настройки стандартных метрик и интреграции с местными системами возникла задача превратить десятки тысяч значений в графики для эксплуатации. И досталась она мне.

По большей части команда состояла из людей, которые начали работать с Tarantool около года назад. Мы уже набили руку в вопросе разработки, но задача мониторинга была неизведанной землёй. Новые метрики и изменения в уже существующих возникали по несколько раз в неделю. Разработка дашборда Grafana велась итеративно: панели добавлялись, удалялись и заменялись на новые. Начало каждой итерации было творческим процессом, который сводился к рутине: изменять нужно было не одну дашборду, а целых четыре.

Задача иметь возможность следить за метриками на двух разных зонах стояла с самого начала, и у неё было как минимум два решения. В запросы Grafana можно встраивать динамические переменные: наборы констант или значения из базы с метриками. Переменные позволяют лёгким движением руки превратить дашборд для зоны А в дашборд для зоны Б. Это удобный инструмент, который, к сожалению, вступает в противоречие с не менее полезными оповещениями. Если в запросе панели есть переменная, на неё нельзя повесить алёрт. Поэтому мы приняли решение поддерживать по две статические дашборды для каждого из проектов.

Рутину захотелось оптимизировать. На начальном этапе дашборды отличались только в фиксированных полях запросов, и проблема решалась с помощью Ctrl+H.

Grafana умеет экспортировать дашборд в формат json. Мы делали изменения в одном из дашбордов, скачивали его и заменяли значения переменных в запросах в текстовом редакторе. Когда замены стали сложнее, был написан Python-скрипт, который читал правила трансформации из yml-файла. Кэши используют разные механизмы репликации из Oracle и холодной загрузки данных, и в один момент дашборды разошлись в наборе графиков. Удалять панель скриптом легко, но добавление — на порядок более сложная задача. Когда мы поняли, что скрипт для трансформации дашбордов превращается в инструмент для их генерирования, стало ясно, что эту проблему решал кто-то до нас.

В открытом доступе существуют такие проекты, как Weaveworks grafanalib, Uber Grafana dashboard generator, Showmax Grafana dashboard generator, grafyaml и grafonnet. Кроме того, Grafana из коробки поддерживает создание дашбордов с помощью JavaScript. Рассматривался и вариант разработки собственного генератора. Сузить выбор помогли наши обстоятельства: только grafonnet умел делать запросы к InfluxDB.

Upgrading to v7.0

PhantomJS removed

PhantomJS was deprecated in and starting from Grafana v7.0.0, all PhantomJS support has been removed. This means that Grafana no longer ships with a built-in image renderer, and we advise you to install the Grafana Image Renderer plugin.

Dashboard minimum refresh interval enforced

A global minimum dashboard refresh interval is now enforced and defaults to 5 seconds. For more information about this setting, refer to .

Backend plugins

Grafana now requires backend plugins to be signed. If a backend plugin is not signed Grafana will not load/start it. This is an additional security measure to make sure backend plugin binaries and files haven’t been tampered with. All Grafana Labs authored backend plugins, including Enterprise plugins, are now signed. It’s possible to allow unsigned plugins using a configuration setting, but is something we strongly advise against doing. For more information about this setting, refer to .

Cookie path

Starting from Grafana v7.0.0, the cookie path does not include the trailing slash if Grafana is served from a subpath in order to align with . However, stale session cookies (set before the upgrade) can result in unsuccessful logins because they can not be deleted during the standard login phase due to the changed cookie path. Therefore users experiencing login problems are advised to manually delete old session cookies, or administrators can fix this for all users by changing the , so the old cookie would get ignored.

Статистика подписчиков инстаграм от Instaplus

Базовая статистика Instagram содержит множество полезной информации, но этого не всегда достаточно для профессионального продвижения. На помощь в таких случаях приходят дополнительные сервисы, способные в автоматическом режиме собирать аналитические данные с аккаунта.

Статистика подписчиков от Инстаплюс имеет расширенный функционал. Во-первых, результаты об изменениях в ваших аккаунтах вы сможете получить уже в течение часа, поскольку сервис регулярно обновляет все данные. Во-вторых, вы сможете работать сразу с несколькими аккаунтами.

Статистика от Instaplus расположена на двух страница. На первой вы можете узнать общую информацию, такую как количество постов и подписчиков по всем аккаунтам. Данные на странице обновляются раз в 24 часа.

На второй странице представлена более подробная информация по каждому из аккаунтов:

  • подробные аналитические отчеты за выбранный отрезок времени;
  • графики роста подписчиков;
  • эффективность каждого используемого в продвижении источника.

Статистика по источникам позволит понять какой из постов принес вам больше всего лайков, комментариев и подписок. В данном графике вы также увидите данные по общему количеству действий пользователя и уровень конверсий, показывающий, сколько пользователей стали вашими читателями после просмотра конкретного источника.

Set up your environment

Before you can get started building plugins, you need to set up your environment for plugin development.

To discover plugins, Grafana scans a plugin directory, the location of which depends on your operating system.

  1. Create a directory called in your preferred workspace.

  2. Find the property in the Grafana configuration file and set the property to the path of your directory. Refer to the for more information.

  3. Restart Grafana if it’s already running, to load the new configuration.

Alternative method: Docker

If you don’t want to install Grafana on your local machine, you can use Docker.

To set up Grafana for plugin development using Docker, run the following command:

Since Grafana only loads plugins on start-up, you need to restart the container whenever you add or remove a plugin.

Alpine image (recommended)

This is the default image. It’s based on the popular Alpine Linux project, available in the Alpine official image. Alpine Linux is much smaller than most distribution base images, and thus leads to slimmer and more secure images.

This variant is highly recommended when security and final image size being as small as possible is desired. The main caveat to note is that it uses musl libc instead of glibc and friends, so certain software might run into issues depending on the depth of their libc requirements. However, most software don’t have an issue with this, so this variant is usually a very safe choice.

Time based thresholds

Thresholds can be overriden, based on day and time of the browser.

Multiple time based threshold rules can be set for any given pattern. If multiple rule matches, last rule wins. If no rule matches, default thresholds will be applicable. Example given below.

Following notations should be followed when added time based threshold rule

Name : Can be any representation in string but not more than 60 characters.

From : in HHMM format examples: 0000 2400 1330 1250

To : in HHMM format examples: 0000 2400 1330 1250

On : Days seperated by comma. Order doesnt matter. Examples; «Sat,Sun», «Mon,Sun,Tue»

Threshold : Same format as default threshold

WARNING: «From» and «To» fields will be compared against timestamp of last data received from server. If the last data point is not availble, then browser time will be considered.

TIPS : If your threshold time rage ranges between two day, (example: 2300 of saturday to 0230 of sunday), then split the rule into two each for saturdary and sunday.

NOTE : If you specify n number threshold levels in default pattern (ex: 20,30),then time based thresholds should also follow same number of levels.

Смещение

Аналогично тому, как производится выборка из генеральной совокупности, дата-сайентисты из готового датасета выделяют тренировочный набор. Именно на этой «выборке второго порядка» модель учится делать предсказания.

Прочитайте нашу статью о создании простой модели машинного обучения. Она предсказывает город, в который вероятнее всего поедет турист, на основании его возраста, пола, места жительства, дохода и транспортных предпочтений. Такая рекомендательная система на минималках.

Смещение происходит, когда модель недооценивает или переоценивает какой-либо параметр. Представим, что модель из статьи выше отправляет всех краснодарцев в Париж — независимо от их дохода, предпочтений и других параметров. В этом случае мы скажем, что модель переоценивает значение параметра «Город проживания».

Чаще всего причиной смещения являются:

  • неправильный сбор данных в датасет: например, в него попали только краснодарцы — любители Парижа;
  • неправильное формирование тренировочного набора из датасета;
  • неправильное измерение ошибок.

Когда мы неверно собираем данные, говорят о систематической ошибке отбора. Например, в прошлом веке многие считали, что во Вселенной больше голубых галактик, — впечатление возникало потому, что плёнка была более чувствительна к голубой части спектра.


О доброте дельфинов мы знаем только от спасённых ими людей. Фото: Pixabay

Другая ошибка — ошибка меткого стрелка — происходит, когда мы вольно или невольно отбираем в выборку только схожие между собой данные, то есть фактически рисуем мишень вокруг места, куда попадём.

Причин, вызывающих смещение, так много, что Марк Твен заметил: «Существует три вида лжи: ложь, наглая ложь и статистика». Например:

  • Эффект низкой/высокой базы. Если в финансовом отчёте найти самый низкий показатель прибыли, то на его фоне любой другой результат будет выглядеть как достижение. И наоборот: если хотите показать, что ученик перестал прогрессировать, сравнивайте текущие оценки с его лучшими результатами за все годы обучения.
  • Сокращение рассматриваемого периода. Если хочется доказать, что рекламная кампания не приносит результатов, надо просто найти период, когда деньги уже потрачены, а эффекта ещё нет. И рассматривать только его.
  • Исключение из выборки. Если вы измеряете результативность методики снижения веса, то можно выкидывать из выборки участников, которые отказались от методики, не дойдя до конца. Это существенно «повысит» эффективность методики.
  • Ну и, конечно же, классика: «Интернет-опрос населения показал, что 100% населения пользуются интернетом».

Эти и другие ошибки смещения трудно выявить статистическими методами, поэтому нужно стараться избежать их до того, как вы начнёте сбор данных.

Если пить «Боржоми» уже поздно (датасет уже сформирован), обязательно спросите себя: «Не смещены ли мои данные?» — а они наверняка смещены, «Куда и почему они смещены?» и «Можно ли с этим жить?»

Где учат на аналитиков

Профессию аналитика получают на направлениях, связанных с информатикой, математикой, программированием. Эти направления есть практически во всех ведущих вузах страны.

Список вузов от редакции: МГУ им. М.В. Ломоносова — факультет вычислительной математики и кибернетики, направление «Прикладная математика и информатика».

СПБГУ — направления «Математика и компьютерные науки», «Математика, алгоритмы и анализ данных», «Прикладная математика и информатика», «Прикладная математика, фундаментальная информатика и программирование», «Программирование и информационные технологии», «Системный анализ и прикладные компьютерные технологии».

НИУ ВШЭ — направления «Экономика и статистика», «Бизнес-информатика», «Прикладная математика и информатика».

Национальный исследовательский университет МЭИ — Институт автоматики и вычислительной техники, направление «Прикладная математика и информатика».

Национальный исследовательский технологический университет МИСиС — факультет «Информатика и вычислительная техника».

Московский политехнический университет — факультет информационных технологий, направление «Прикладная информатика (большие и открытые данные)», «Прикладная математика и информатика», «Бизнес-информатика (IT-менеджмент)».

Московский технический университет связи и информатики (МТУСИ) — факультет экономики и управления (ФЭУ), направление «Прикладная информатика».

Финансовая академия при правительстве России — направления «Прикладная математика и информатика», «Бизнес-информатика», «Прикладная информатика».

Настройка брандмауэра для доступа к Grafana

По умолчанию Grafana доступна на порту 3000. При использовании firewalld или iptables, необходимо разрешить сетевой доступ к этому порту из внешнего мира.

Набор команд для firewalld (добавление нового правила и перезагрузка сервиса firewalld для применения конфигурации):

Набор команд для iptables:

Вписываем в раздел OUTPUT ACCEPT следующую строку:

И перезапускаем iptables:

После выполнения описанных в этом разделе манипуляций, сетевой экран будет разрешать подключения по порту 3000. В этом можно убедиться, открыв в браузере интерфейс Grafana. Логин и пароль по умолчанию admin.

Если не удается войти в Grafana или вы поменяли пароль и не можете его вспомнить, через CLI административный пароль Web-интерфейса можно сбросить:

После выполнения команды выше, можно входить с новым паролем.

Обратный прокси-сервер и SSL

Для настройки SSL в Grafana необходимо использовать обратный прокси-сервер. В этом разделе мы расскажем как настроить такой прокси на базе Nginx. Для целей демонстрации мы зарегистрировали домен grafana.tk, для которого выпустили специальный сертификат Let’s Encrypt.

После создания сервера мы настроили веб-сервер Nginx для работы через SSL. Осталось перенаправить трафик с него на порт 3000, по которому доступна Grafana. Для этого откроем конфигурационный файл веб-сервера.

В этом файле будем работать с этим блоком конфигурации:

Заменим его на следующий:

Таким образом мы настроили переадресацию на локальный порт 3000. Теперь можно проверить корректность конфигурации Nginx:

Осталось перезапустить Nginx:

Теперь наша тестовая Grafana доступна по URL https://grafana.tk. Проверим:

Кроме настроек SSL, в Grafana, для повышения уровня безопасности, можно отключить анонимный доступ и создание новых учетных записей.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Ваша ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: