Graphite - это бесплатный инструмент с открытым исходным кодом, который можно использовать для отслеживания и отображения производительности компьютерных систем. Graphite - это приложение, которое можно использовать для сбора информации из вашей системы и отображения ее через веб-интерфейс.
В этом уроке я объясню, как установить и настроить Graphite в Ubuntu 16.04.
Предпосылки
- Недавно развернутый экземпляр сервера Vultr Ubuntu 16.04.
- Пользователь без полномочий root с настройками привилегий sudo на вашем сервере.
- В вашей системе настроен статический IP-адрес 192.168.0.227.
Шаг 1: Обновите систему
Сначала обновите систему до последней стабильной версии, выполнив следующую команду:
sudo apt-get update -y
sudo apt-get upgrade -y
Как только ваша система обновится, перезапустите ее, чтобы применить эти изменения:
sudo reboot
Шаг 2: Установите Graphite
Графит состоит из нескольких компонентов, в том числе графитового веб-приложения, хранилища углерода и библиотеки базы данных. Каждый из этих компонентов доступен в репозитории Ubuntu по умолчанию. Вы можете установить их, просто выполнив следующую команду:
sudo apt-get install graphite-web graphite-carbon -y
После завершения установки вы можете перейти к следующему шагу.
Шаг 3: Установите и настройте PostgreSQL
Веб-приложение Graphite представляет собой приложение Python Django, которому для хранения своих данных требуется PostgreSQL. Вы можете установить PostgreSQL и вспомогательные пакеты, выполнив следующую команду:
sudo apt-get install postgresql libpq-dev python-psycopg2 -y
После установки PostgreSQL вам нужно будет создать пользователя и базу данных PostgreSQL для использования в Graphite.
Сначала войдите в оболочку PostgreSQL с помощью следующей команды:
sudo -u postgres psql
Затем создайте пользователя графита и защитите его паролем:
postgres=# CREATE USER graphite WITH PASSWORD 'password';
Затем создайте базу данных графита и передайте права собственности пользователю графита:
postgres=# CREATE DATABASE graphite WITH OWNER graphite;
Наконец, выйдите из оболочки PostgreSQL:
postgres=# \q
После правильной настройки базы данных вам необходимо настроить веб-приложение Graphite. Вы можете сделать это, отредактировав local_settings.py
файл:
sudo nano /etc/graphite/local_settings.py
Отредактируйте файл, как показано ниже:
SECRET_KEY = 'your-secret-key'
TIME_ZONE = 'America/Los_Angeles'
USE_REMOTE_USER_AUTHENTICATION = True
DATABASES = {
'default': {
'NAME': 'graphite',
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'USER': 'graphite',
'PASSWORD': 'password',
'HOST': '127.0.0.1',
'PORT': ''
}
}
Сохраните и закройте файл, когда вы закончите.
Затем выполните следующую команду, чтобы синхронизировать базу данных и создать правильную структуру:
sudo graphite-manage migrate auth
sudo graphite-manage syncdb
Вам будет предложено создать учетную запись суперпользователя для базы данных, как показано в следующем выводе:
Operations to perform:
Synchronize unmigrated apps: account, cli, render, whitelist, metrics, url_shortener, dashboard, composer, events, browser
Apply all migrations: admin, contenttypes, tagging, auth, sessions
Synchronizing apps without migrations:
Creating tables...
Running deferred SQL...
Installing custom SQL...
Running migrations:
No migrations to apply.
You have installed Django's auth system, and don't have any superusers defined.
Would you like to create one now? (yes/no): yes
Username (leave blank to use 'root'):
Email address: [email protected]
Password:
Password (again):
Superuser created successfully.
Теперь вам нужно настроить Carbon, серверную часть хранилища Graphite, отредактировав файл конфигурации сервиса graphite-carbon
.
sudo nano /etc/default/graphite-carbon
Измените файл, чтобы разрешить carbon-cache
запуск при загрузке:
CARBON_CACHE_ENABLED=true
Сохраните и закройте файл, когда вы закончите.
Далее откройте файл конфигурации Carbon:
sudo nano /etc/carbon/carbon.conf
Измените файл, как показано ниже, чтобы включить ротацию журнала:
ENABLE_LOGROTATION = True
Сохраните файл, затем настройте схемы хранения. Для этого отредактируйте файл схемы хранилища, чтобы сообщить Carbon, как долго хранить значения и насколько подробными должны быть эти значения:
sudo nano /etc/carbon/storage-schemas.conf
Добавьте следующий раздел в конец файла:
[test]
pattern = ^test\.
retentions = 6s:4h,1m:1d
Сохраните и закройте файл, когда вы закончите.
Далее вам нужно будет определить способ, которым вы хотите, чтобы агрегация происходила в файле с именем storage-aggregation.conf
. Скопируйте пример файла конфигурации в каталог конфигурации Carbon:
sudo cp /usr/share/doc/graphite-carbon/examples/storage-aggregation.conf.example /etc/carbon/storage-aggregation.conf
Наконец, запустите сервис Carbon с помощью следующей команды:
sudo systemctl start carbon-cache
Вам также необходимо установить веб-сервер Apache, чтобы использовать веб-интерфейс Graphite. Вы можете установить Apache с помощью следующей команды:
sudo apt-get install apache2 libapache2-mod-wsgi -y
Затем скопируйте файл конфигурации примера графита в Apache с помощью следующей команды:
sudo cp /usr/share/graphite-web/apache2-graphite.conf /etc/apache2/sites-available/
После завершения установки отключите файл виртуального хоста по умолчанию и включите файл виртуального хоста графита с помощью следующей команды:
sudo a2dissite 000-default
sudo a2ensite apache2-graphite
Наконец, перезапустите службу Apache, чтобы применить эти изменения:
sudo systemctl restart apache2
Шаг 7: Доступ к веб-интерфейсу Graphite
Затем вам нужно разрешить порт 80
через брандмауэр UFW для доступа к веб-интерфейсу Graphite. Вы можете сделать это, выполнив следующие команды:
sudo ufw allow 80
Пришло время получить доступ к веб-интерфейсу Graphite. Откройте ваш любимый веб-браузер и введите URL http://192.168.0.227
. Затем, предоставьте свои учетные данные для входа (ваше имя пользователя и пароль root), вы увидите экран входа в систему Graphite.