Панель ЛДСП Графит (16х1830х2750): древесно-плитные материалы
Панель ЛДСП Графит 16х1830х2750
Ламинированная древесно-стружечная плита (ЛДСП)
― древесно-стружечная плита высокого качества, облицованная ламинирующими пленками широкой цветовой гаммы Шаттдекора с целью повышения потребительских свойств, сопротивляемости к внешним механическим и химическим воздействиям (влажность, температурные перепады). Официально принятое сокращение ― ламинированная ДСтП.Предлагаемая нами плита имеет следующие показатели
- древесина, используемая при получении производственного сырья;
- плотность прессования;
- габаритные размер листа.
Форматы плиты, мм вес, кг на 1 м2 на лист 2750x1830x10 7,8 39,3 2750x1830x16 11,39 57,3 2750x1830x18 12,82 64,5 2750x1830x22 14,22 71,6 В настоящее время, как производители, так и потребители уделяют большое внимание характеристикам ЛДСП, ведь от плиты зависит качество мебели.
Нашей целью является бесперебойное обеспечение клиентов ламинированной ДСП, соответствующей российским и европейским стандартам, поэтому особое место в процессе производства занимает система контроля качества.
Во всем мире особое внимание уделяется показателю экологической безопасности плиты. Поэтому предлагаемая нами продукция не только соответствует требованиям российских государственных стандартов, но по показателю выделения формальдегида даже превышает их. Самый высокий класс эмиссии плиты Е1 согласно европейским нормативам не должен превышать содержание формальдегида 8 мг на 100 г. абсолютно сухого ДСП, производит плиты с содержанием формальдегида 4 – 6 мг. По этому показателю ЛДСП подходит для производства любых видов мебели (бытовой, офисной, детской, специализированной и пр.)
В подведение итогов хочется сказать, что, благодаря простоте обработки и огромной цветовой гамме покрытий, ламинированные ДСП нашли широчайшее применение в мебельном производстве. В отличие от изделий из натурального дерева, продукция на основе ЛДСП выгодно отличается по стоимости, так как трудозатраты при ее производстве несоизмеримо меньше. В мебели, выполненной из этого материала, не заводятся вредители, она не рассыхается и, при соблюдении элементарных условий эксплуатации, способна радовать своих хозяев долгим сроком безупречной службы. Также ламинированные древесно-стружечные плиты используются в качестве материала для внутренних отделочных работ. Они просто незаменимы при создании интерьеров эконом-класса, в дизайн-проектах которых присутствуют элементы с древесной фактурой.
Урал Декор | Каталог мебельной фурнитуры и плитной продукции для производства мебели
Пользовательское СоглашениеНастоящее Пользовательское Соглашение (Далее Соглашение) регулирует отношения между ООО «Мебельная Фурнитура» (далее Урал Декор или Администрация) с одной стороны и пользователем сайта с другой. Сайт Урал Декор не является средством массовой информации.
Используя сайт, Вы соглашаетесь с условиями данного соглашения. Если Вы не согласны с условиями данного соглашения, не используйте сайт Урал Декор!
Права и обязанности сторон
Пользователь имеет право:
— осуществлять поиск информации на сайте
— получать информацию на сайте
— распространять информацию на сайте
— копировать информацию на другие сайты с указанием источника
— требовать от администрации скрытия любой информации о пользователе
— требовать от администрации скрытия любой информации переданной пользователем сайту
Администрация имеет право:
— по своему усмотрению и необходимости создавать, изменять, отменять правила
— ограничивать доступ к любой информации на сайте
— создавать, изменять, удалять информацию
— отказывать в регистрации без объяснения причин Пользователь обязуется:
— обеспечить достоверность предоставляемой информации
— не нарушать работоспособность сайта
— не использовать скрипты (программы) для автоматизированного сбора информации и/или взаимодействия с Сайтом и его Сервисами
Администрация обязуется:
— поддерживать работоспособность сайта за исключением случаев, когда это невозможно по независящим от Администрации причинам.
— осуществлять разностороннюю защиту учетной записи Пользователя
Ответственность сторон
— администрация не несёт ответственность за несовпадение ожидаемых Пользователем и реально полученных услуг
Условия действия Соглашения Данное Соглашение вступает в силу при любом использовании данного сайта. Соглашение перестает действовать при появлении его новой версии. Администрация оставляет за собой право в одностороннем порядке изменять данное соглашение по своему усмотрению. При изменении соглашения, в некоторых случаях, администрация может оповестить пользователей удобным для нее способом.
Гармония
В новую квартиру нужна была кухня, долго выбирала, думала, присматривалась к разным фирмам. Хотелось: 1. работать с производителем, думаю, причины понятны. 2. учесть все-все, т.к. делала на заказ и можно было сделать все удобно и “под себя”. 3. поскольку я не эксперт в области качества, нужен был грамотный и ненавязчивый совет и по ширине фасадов и по столешнице и фартуку и размерам и еще сотня других параметров. 3. грамотный замер стен, углов т.к. кухня практически “в потолок” и должна была “встать” правильно. 4. профессиональную сборку, т.е. хотелось быть уверенной, что кухню собирают и технику встраивают (варочная поверхность, духовой шкаф, вытяжка) люди, которые этим занимаются постоянно, а не дилетанты. 5. хорошую репутацию производителя!!! 6. не заоблачный ценник. 7. качественную фурнитуру. И это не все. В общем, требований было много. Поскольку изучать вопрос я начала еще до сдачи квартиры, изучила все, что могла, побывала во многих салонах, в некоторых по несколько раз) Итог – фабрика Гармония (Великие луки). Замерщик от фабрики – пунктуален и аккуратен. Пока я принимала квартиру от застройщика, он все замерил и, что интересно, я его в процессе даже не видела) + сделал схему разводки розеток для кухни. Однозначно плюс. Дизайнеру Наталье (“Гармония Мебель” ТЦ “Мебельный континент” у метро Электросила) отдельная благодарность за ее терпение и очень нужные советы. Я что-то меняла, у меня были сотни вопросов от высоты ножек до ширины зазора между потолком и “крышей” кухни, я звонили, писала, приезжала. Она во всем принимала участие, вплоть до модели вытяжки. Все сделали в срок, как обещали. Срок производства длительный, но у меня кухня из эмали (белый глянец), а это особая технология, так что к длительность понятна. Тут главное – качественно. Цены по сравнению с другими производителями – то, что надо. Да, недешево, но по сравнению с аналогами по качеству у других производителей, цены действительно гуманные. Фурнитура – Hettich. Петли с доводчиками. Ящики полного выдвижения, я от них в восторге, очень удобно. Спасибо сборщикам!!! Установили кухню и вмонтировали технику очень качественно, ничего не болтается, не ходит, не дребезжит. Все работы заняли 6 часов!!! Не устанавливайте самостоятельно, сами вы все так не сделаете, скупой платит дважды. Итог – я очень довольна! Однозначно, рекомендую!!!
В новую квартиру нужна была кухня, долго выбирала, думала, присматривалась к разным фирмам. Хотелось: 1. работать с производителем, думаю, причины понятны. 2. учесть все-все, т.к. делала на заказ и можно было сделать все удобно и “под себя”. 3. поскольку я не эксперт в области качества, нужен был грамотный и ненавязчивый совет и по ширине фасадов и по столешнице и фартуку и размерам и еще сотня других параметров. 3. грамотный замер стен, углов т.к. кухня практически “в потолок” и должна была “встать” правильно. 4. профессиональную сборку, т.е. хотелось быть уверенной, что кухню собирают и технику встраивают (варочная поверхность, духовой шкаф, вытяжка) люди, которые этим занимаются постоянно, а не дилетанты. 5. хорошую репутацию производителя!!! 6. не заоблачный ценник. 7. качественную фурнитуру. И это не все. В общем, требований было много. Поскольку изучать вопрос я начала еще до сдачи квартиры, изучила все, что могла, побывала во многих салонах, в некоторых по несколько раз) Итог – фабрика Гармония (Великие луки). Замерщик от фабрики – пунктуален и аккуратен. Пока я принимала квартиру от застройщика, он все замерил и, что интересно, я его в процессе даже не видела) + сделал схему разводки розеток для кухни. Однозначно плюс. Дизайнеру Наталье (“Гармония Мебель” ТЦ “Мебельный континент” у метро Электросила) отдельная благодарность за ее терпение и очень нужные советы. Я что-то меняла, у меня были сотни вопросов от высоты ножек до ширины зазора между потолком и “крышей” кухни, я звонили, писала, приезжала. Она во всем принимала участие, вплоть до модели вытяжки. Все сделали в срок, как обещали. Срок производства длительный, но у меня кухня из эмали (белый глянец), а это особая технология, так что к длительность понятна. Тут главное – качественно. Цены по сравнению с другими производителями – то, что надо. Да, недешево, но по сравнению с аналогами по качеству у других производителей, цены действительно гуманные. Фурнитура – Hettich. Петли с доводчиками. Ящики полного выдвижения, я от них в восторге, очень удобно. Спасибо сборщикам!!! Установили кухню и вмонтировали технику очень качественно, ничего не болтается, не ходит, не дребезжит. Все работы заняли 6 часов!!! Не устанавливайте самостоятельно, сами вы все так не сделаете, скупой платит дважды. Итог – я очень довольна! Однозначно, рекомендую!!!
Graphite-web’s local_settings.py — документация Graphite 1.2.0
Graphite-web использует соглашение об импорте файла local_settings.py
из модуля webapp settings.py
. Отсюда загружается конфигурация среды выполнения Graphite-web. Также можно установить альтернативный модуль локальных настроек (см. Ниже). Это может быть использовано для развертываний с несколькими экземплярами.
Расположение файла конфигурации
По умолчанию модуль настроек — local_settings.py
, и он обычно находится в основном модуле graphite
, где находится код веб-приложения. В макете установки по умолчанию это /opt/graphite/webapp/graphite/local_settings.py
. Можно использовать альтернативные местоположения, установив символическую ссылку на этот путь или убедившись, что модуль можно найти в пути поиска модуля Python.
Это можно изменить, установив переменную среды GRAPHITE_SETTINGS_MODULE
. Например, в файле wsgi.
Общие настройки
- URL_PREFIX
По умолчанию: /
Установите URL_PREFIX при развертывании graphite-web в некорневом расположении.
- СЕКРЕТНЫЙ КЛЮЧ
По умолчанию: UNSAFE_DEFAULT
Этот ключ используется для объединения хэшей, используемых в токенах аутентификации, промежуточном программном обеспечении CRSF, хранилище файлов cookie и т. Д. Он должен быть установлен одинаково для всех узлов, если используется за балансировщиком нагрузки.
- ALLOWED_HOSTS
По умолчанию: *
В Django 1.5+ задайте список хостов, с которых доступны ваши графические экземпляры. См. Https://docs.djangoproject.com/en/dev/ref/settings/#std:setting-ALLOWED_HOSTS
- TIME_ZONE
По умолчанию: Америка / Чикаго
Установите местный часовой пояс.Часовой пояс указывается с использованием имен zoneinfo.
- DATE_FORMAT
По умолчанию:% m /% d
Установите краткий формат даты по умолчанию. См. Strftime (3) для получения информации о поддерживаемых последовательностях.
- DOCUMENTATION_URL
По умолчанию: http://graphite.readthedocs.io/
Переопределяет ссылку Documentation , используемую в заголовке Graphite Composer.
- LOG_RENDERING_PERFORMANCE
По умолчанию: Ложь
Запускает создание рендеринга
.log
, который регистрирует время для вызовов API URL рендеринга.- LOG_CACHE_PERFORMANCE
По умолчанию: Ложь
Запускает создание
cache.log
, в котором регистрируются тайминги удаленных вызовов Carbon-cache , а также попадания и промахи кэша запросов (memcached).- LOG_INFO_PERFORMANCE
По умолчанию: True
Запускает создание
info.log
, в котором регистрируются общие журналы.Включено по умолчанию.- ОТЛАДКА = Истина
По умолчанию: Ложь
Позволяет создавать подробные страницы ошибок Django. Подробности смотрите в документации Django.
- ПРОМЫВКА
По умолчанию:
Если установлено, выполняет
rrdtool flushcached
перед выборкой данных из файлов RRD. Установите адрес или сокет демона rrdcached. Пример:unix: /var/run/rrdcached.sock
- MEMCACHE_HOSTS
По умолчанию: []
Если установлено, включает кэширование вычисленных целей (включая прикладные функции) и визуализированных изображений.При запуске кластера веб-приложений Graphite каждое веб-приложение должно иметь одинаковые значения для этого параметра, чтобы предотвратить ненужные пропуски кеша.
Установите это значение в список хостов memcached. Пример:
['10 .10.10.10: 11211 ', '10 .10.10.11: 11211', '10 .10.10.12: 11211 ']
- MEMCACHE_KEY_PREFIX
По умолчанию: графит
Префикс Memcached для графитовых ключей.
- MEMCACHE_OPTIONS
По умолчанию: {}
Допустимые параметры зависят от реализации Memcached и версии Django.До Django 1.10 параметры используются только для pylibmc. Начиная с 1.11 параметры используются как для python-memcached, так и для pylibmc.
- DEFAULT_CACHE_DURATION
По умолчанию: 60
Срок действия кэшированных данных и изображений по умолчанию.
- DEFAULT_CACHE_POLICY
По умолчанию: []
Данные показателей и графики по умолчанию кэшируются на одну минуту. Если определено, DEFAULT_CACHE_POLICY представляет собой список кортежей с минимальными временными диапазонами запроса, сопоставленными с продолжительностью кеширования для результатов.Это позволяет кэшировать большие запросы на более длительные периоды времени. Время в секундах. Пример конфигурации:
DEFAULT_CACHE_POLICY = [(0, 60), # по умолчанию 60 секунд (7200, 120), #> = 2 часа запросы кешируются 2 минуты (21600, 180)] #> = 6 часов запросы кэшируются 3 минуты
Это кэширует любые запросы от 0 секунд до 2 часов в течение 1 минуты, любые запросы от 2 до 6 часов в течение 2 минут и все, что превышает 6 часов в течение 3 минут.Если политика пуста или не определена, все будет кэшироваться в течение DEFAULT_CACHE_DURATION.
- AUTO_REFRESH_INTERVAL
По умолчанию: 60
Интервал для функции автоматического обновления в Composer, измеряемый в секундах.
- MAX_TAG_LENGTH
По умолчанию: 50
Graphite использует теги Django для поддержки тегов в событиях. По умолчанию каждый тег ограничен 50 символами.
Пути файловой системы
Эти настройки определяют расположение дополнительных файлов конфигурации Graphite-web, статического содержимого и данных.Их необходимо отрегулировать, если Graphite-web установлен вне стандартной схемы установки.
- КОРЕНЬ ГРАФИТА
- По умолчанию: / opt / graphite Базовый каталог для установки Graphite. Этот параметр используется для перемещения установки Graphite из базового каталога по умолчанию, сохраняя макет по умолчанию. Пути, полученные из этого параметра, также можно индивидуально переопределить.
- CONF_DIR
- По умолчанию: GRAPHITE_ROOT / conf Расположение дополнительных файлов конфигурации Graphite-web.
- STORAGE_DIR
- По умолчанию: GRAPHITE_ROOT / хранилище Базовый каталог, из которого ссылаются пути WHISPER_DIR, RRD_DIR, CERES_DIR, LOG_DIR и INDEX_FILE по умолчанию.
- STATIC_ROOT
По умолчанию: см. Ниже Расположение статического контента Graphite-web. По умолчанию это
статических /
трех родительских каталогов вместоsettings.py
. В макете по умолчанию это/ opt / graphite / static
.Этот каталог даже не существует после того, как вы установили графит.Его необходимо заполнить следующей командой:
PYTHONPATH = $ GRAPHITE_ROOT / webapp django-admin.py collectstatic --noinput --settings = graphite.settings
Он собирает статические файлы для графитовых веб-приложений и внешних приложений (а именно, приложения администратора Django) и помещает их в каталог, который должен быть доступен по URL-адресу
/ static /
вашего веб-сервера. Для настройки Apache:Псевдоним / static / "/ opt / graphite / static"
Для Nginx:
location / static / { псевдоним / opt / graphite / static /; }
В качестве альтернативы, статические файлы могут обслуживаться непосредственно веб-приложением Graphite, если вы установите пакет Python
whitenoise
.- DASHBOARD_CONF
- По умолчанию: CONF_DIR / dashboard.conf Расположение конфигурации Graphite-web Dashboard.
- GRAPHTEMPLATES_CONF
- По умолчанию: CONF_DIR / graphTemplates.conf Расположение конфигурации Graphite-web Graph Template.
- WHISPER_DIR
- По умолчанию: / opt / graphite / storage / Whisper Расположение файлов данных Whisper.
- CERES_DIR
- По умолчанию: / opt / graphite / storage / ceres Расположение файлов данных Цереры.
- RRD_DIR
- По умолчанию: / opt / graphite / storage / rrd Расположение файлов данных RRD.
- СТАНДАРТНЫЕ КАТАЛОГИ
- По умолчанию: [WHISPER_DIR, RRD_DIR] Список каталогов, в которых производился поиск файлов данных. По умолчанию это значение WHISPER_DIR и RRD_DIR (если обнаружена поддержка rrd). Если этот параметр определен, параметры WHISPER_DIR, CERES_DIR и RRD_DIR не действуют.
- LOG_DIR
- По умолчанию: STORAGE_DIR / log / webapp Каталог для записи файлов журнала Graphite-web.Этот каталог должен быть доступен для записи пользователю, запустившему веб-приложение Graphite-web.
- INDEX_FILE
- По умолчанию: / opt / graphite / storage / index Расположение файла индекса поиска. Этот файл создается сценарием build-index.sh и должен быть доступен для записи пользователю, запускающему веб-приложение Graphite-web.
- НАЙТИ_ХРАНИЛИЩА
- По умолчанию: () Можно использовать альтернативный уровень хранения, отличный от используемого по умолчанию, Whisper, чтобы удовлетворить определенные потребности.См .: http://graphite.readthedocs.io/en/latest/storage-backends.html
- FETCH_TIMEOUT
По умолчанию: 6
Тайм-аут выборки данных в секундах.
- FIND_TIMEOUT
По умолчанию: 3
Таймаут запросов на поиск (просмотр в метрической системе) в секундах.
- TAGDB
- По умолчанию: «graphite.tags.localdatabase.LocalDatabaseTagDB» Драйвер базы данных тегов для использования, другие варианты включают графит .tags.redis.RedisTagDB
- TAGDB_REDIS_HOST
- По умолчанию: «localhost» Хост Redis для использования с TAGDB = ‘graphite.tags.redis.RedisTagDB’
- TAGDB_REDIS_PORT
- По умолчанию: 6379 Порт Redis для использования с TAGDB = ‘graphite.tags.redis.RedisTagDB’
- TAGDB_REDIS_DB
- По умолчанию: 0 База данных Redis для использования с TAGDB = ‘graphite.tags.redis.RedisTagDB’
- TAGDB_REDIS_PASSWORD
- По умолчанию: ‘’ Пароль Redis для использования с TAGDB = ‘graphite.tags.redis.RedisTagDB ’
Настроить веб-сервер (Apache)
В каталоге примеров исходного кода веб-графита есть файл example example-graphite-vhost.conf
. Вы можете использовать это для настройки apache. В разных дистрибутивах есть разные способы настройки Apache. Пожалуйста, обратитесь к документации вашего дистрибутива по этому поводу.
Например, Ubuntu использует / etc / apache2 / sites-available
и sites-enabled /
, чтобы справиться с этим (символическая ссылка с sites-enabled /
на sites-available /
будет использоваться после размещения файла в сайтах-доступных /).
Другие используют директиву Include в файле httpd.conf
, например:
# Это идет в httpd.conf Включите /usr/local/apache2/conf/vhosts.d/*.conf
Все файлы конфигурации необходимо добавить в /usr/local/apache2/conf/vhosts.d/
. Третьи могут вообще не помочь справиться с этим, и вы должны добавить конфигурацию непосредственно в свой файл http.conf.
Graphite будет находиться в DocumentRoot вашего веб-сервера и не позволит вам получить доступ к обычному HTML в подкаталогах без дополнительной настройки.Вы можете отредактировать файл example-graphite-vhost.conf
, чтобы изменить номера портов, или использовать дополнительные директивы "SetHandler None"
, чтобы разрешить доступ к другим каталогам.
Не забудьте перезагрузить конфигурацию Apache, запустив sudo /etc/init.d/apache2 reload
или sudo /etc/init.d/httpd reload
.
Конфигурация электронной почты
Эти параметры настраивают функциональность электронной почты Django, которая используется для отправки по электронной почте визуализированных графиков.Дополнительную информацию об этих настройках см. В документации Django.
- EMAIL_BACKEND
- По умолчанию: django.core.mail.backends.smtp.EmailBackend Установите значение
django.core.mail.backends.dummy.EmailBackend
, чтобы отправлять электронные письма на пол и эффективно отключать функции электронной почты. - EMAIL_HOST
- По умолчанию: localhost
- EMAIL_PORT
- По умолчанию: 25
- EMAIL_HOST_USER
- По умолчанию: ‘’
- EMAIL_HOST_PASSWORD
- По умолчанию: ‘’
- EMAIL_USE_TLS
- По умолчанию: Ложь
Конфигурация аутентификации
Эти настройки добавляют дополнительные серверные модули к настройкам AUTHENTICATION_BACKENDS и MIDDLEWARE.Дополнительные схемы аутентификации возможны путем непосредственного управления этими списками.
LDAP
Эти параметры настраивают пользовательский сервер аутентификации LDAP, предоставляемый Graphite. Дополнительные параметры к приведенным ниже можно настроить, задав глобальные параметры модуля LDAP с помощью ldap.set_option
. См. Дополнительную информацию в документации модуля.
# Пример SSL импорт ldap ldap.set_option (ldap.OPT_X_TLS_REQUIRE_CERT, ldap.OPT_X_TLS_ALLOW) ldap.set_option (ldap.OPT_X_TLS_CACERTDIR, "/ etc / ssl / ca") ldap.set_option (ldap.OPT_X_TLS_CERTFILE, "/etc/ssl/mycert.pem") ldap.set_option (ldap.OPT_X_TLS_KEYFILE, "/etc/ssl/mykey.pem")
- ИСПОЛЬЗОВАТЬ_LDAP_AUTH
- По умолчанию: Ложь
- LDAP_SERVER
По умолчанию: ‘’
Установите сервер LDAP здесь или, альтернативно, в
LDAP_URI
.- LDAP_PORT
По умолчанию: 389
Установите порт сервера LDAP здесь или в качестве альтернативы в
LDAP_URI
.- LDAP_URI
По умолчанию: Нет
Устанавливает URI сервера LDAP. Например.
ldaps: //ldap.mycompany.com: 636
- LDAP_SEARCH_BASE
По умолчанию: ‘’
Устанавливает базу поиска LDAP. Например.
OU = пользователи, DC = mycompany, DC = com
- LDAP_BASE_USER
По умолчанию: ‘’
Устанавливает базового пользователя LDAP для привязки к серверу. Например.
CN = some_readonly_account, DC = mycompany, DC = com
- LDAP_BASE_PASS
По умолчанию: ‘’
Устанавливает пароль базового пользователя LDAP для привязки к серверу.
- LDAP_USER_QUERY
По умолчанию: ‘’
Устанавливает запрос LDAP для возврата объекта пользователя, в котором
% s
заменяется идентификатором пользователя. Например.(имя пользователя =% s)
или(sAMAccountName =% s)
(Active Directory).- LDAP_USER_DN_TEMPLATE:
По умолчанию: ‘’
Вместо использования жестко запрограммированного имени пользователя и пароля для учетной записи, которая привязана к серверу LDAP, вы можете использовать учетные данные пользователя, который пытается войти в Graphite.Это шаблон, который создает полное DN для привязки.
Другая аутентификация
- USE_REMOTE_USER_AUTHENTICATION
По умолчанию: Ложь
Позволяет использовать серверную часть аутентификации Django RemoteUserBackend . Дополнительную информацию см. В документации Django.
- REMOTE_USER_BACKEND
По умолчанию: «django.contrib.auth.middleware.RemoteUserBackend»
Позволяет использовать альтернативный сервер удаленной аутентификации.
- REMOTE_USER_MIDDLEWARE
По умолчанию: «django.contrib.auth.middleware.RemoteUserMiddleware»
Позволяет использовать альтернативное промежуточное ПО для удаленной аутентификации.
- LOGIN_URL
По умолчанию: / account / login
Изменяет URL-адрес, указанный в ссылке Login в интерфейсе Composer. Это полезно для направления пользователей к внешней ссылке аутентификации, такой как аутентификация удаленного пользователя, или к бэкэнду, например django_openid_auth.
Конфигурация авторизации на приборной панели
Эти параметры определяют, кому разрешено сохранять и удалять информационные панели. По умолчанию эти действия может выполнять кто угодно, но, установив DASHBOARD_REQUIRE_AUTHENTICATION, пользователи должны как минимум войти в систему, чтобы сделать это. Два других параметра позволяют дополнительно ограничить круг лиц, которые могут выполнять эти действия. Пользователи, не авторизованные должным образом, по-прежнему смогут использовать и изменять информационные панели, но не смогут сохранять изменения или удалять информационные панели.
- ПРИБОРНАЯ ПАНЕЛЬ_REQUIRE_AUTHENTICATION
По умолчанию: Ложь
Если установлено значение True, панели мониторинга могут быть сохранены и удалены только зарегистрированными пользователями.
- DASHBOARD_REQUIRE_EDIT_GROUP
По умолчанию: Нет
Если задано имя группы пользователей, панели мониторинга могут быть сохранены и удалены только зарегистрированными пользователями, которые являются членами этой группы. Группы можно настроить в приложении Django Admin или в LDAP.
Обратите внимание, что DASHBOARD_REQUIRE_AUTHENTICATION должен иметь значение true — в противном случае этот параметр игнорируется.
- DASHBOARD_REQUIRE_PERMISSIONS
По умолчанию: Ложь
Если установлено значение True, панели мониторинга могут быть сохранены или удалены только пользователями, имеющими соответствующее разрешение (изменение или удаление) (как установлено в приложении Django Admin). Эти разрешения могут быть установлены на уровне пользователя или группы. Обратите внимание, что разрешение Django «добавить» не используется.
Обратите внимание, что DASHBOARD_REQUIRE_AUTHENTICATION должен иметь значение true — в противном случае этот параметр игнорируется.
Конфигурация базы данных
Следующее настраивает параметры базы данных Django.Graphite использует базу данных для хранения профилей пользователей, информационных панелей и функций событий. Graphite по умолчанию использует файл базы данных SQLite, расположенный в STORAGE_DIR / graphite.db
. При запуске нескольких экземпляров Graphite-web требуется база данных, такая как PostgreSQL или MySQL, чтобы все экземпляры могли использовать один и тот же источник данных.
Примечание
Начиная с Django 1.2, конфигурация базы данных определяется базами данных.
словарь вместо старого формата DATABASE_ *
.Пользователи должны использовать новый
спецификация на наличие рабочей базы данных.
Полную документацию по настройке БАЗЫ ДАННЫХ см. В документации Django.
Примечание
Помните, что для настройки новой базы данных требуется запустить PYTHONPATH = $ GRAPHITE_ROOT / webapp django-admin.py migrate --settings = graphite.settings
для создания начальной схемы.
Примечание
Если вы используете собственный сервер базы данных (кроме SQLite), вы должны сначала создать $ GRAPHITE_ROOT / webapp / graphite / local_settings.py, который переопределяет настройки, связанные с базой данных, из settings.py. Используйте $ GRAPHITE_ROOT / webapp / graphite / local_settings.py.example в качестве шаблона.
Если у вас возникли проблемы, раскомментируйте следующую строку в /opt/graphite/webapp/graphite/local_settings.py:
и просмотрите журналы своих веб-приложений. Если вы используете файл по умолчанию graphite-example-vhost.conf, ваши журналы будут находиться в / opt / graphite / storage / log / webapp /.
Если вы используете базу данных SQLite по умолчанию, вашему веб-серверу потребуются разрешения на чтение и запись в файл базы данных.Так, например, если ваше веб-приложение запущено в Apache как пользователь «none», вам нужно будет исправить разрешения следующим образом:
sudo chown никто: никто /opt/graphite/storage/graphite.db
Конфигурация кластера
Эти параметры настраивают веб-приложение Graphite для кластерного использования. Если задано CLUSTER_SERVERS
, запросы просмотра и рендеринга показателей заставят веб-приложение запрашивать другие веб-приложения в CLUSTER_SERVERS для сопоставления показателей. Graphite может либо объединить ответы, либо выбрать лучший ответ, если несколько серверов кластера возвращают одну и ту же серию.
- CLUSTER_SERVERS
По умолчанию: []
Список IP-адресов и портов удаленных веб-приложений Graphite в кластере. Каждый из этих серверов должен иметь локальный доступ к данным метрики для обслуживания. Пример: [«10.0.2.2:80», «http://10.0.2.3:80?format=pickle&local=1»]
Определения кластерного сервера могут дополнительно включать протокол (http: // или https: //) и / или дополнительные параметры конфигурации.
Параметр формата может иметь значение pickle (по умолчанию) или msgpack для управления кодировкой, используемой для запросов поиска и рендеринга внутри кластера.
Для параметра local можно задать значение 1 (по умолчанию) или 0 , чтобы указать, должны ли кластерные серверы возвращать результаты только от локальных средств поиска или передавать запрос своим удаленным средствам поиска.
- USE_WORKER_POOL
По умолчанию: True
Создает пул рабочих потоков, которым могут быть отправлены задачи. Это имеет смысл, если существует несколько CLUSTER_SERVERS и / или STORAGE_FINDERS, потому что тогда связь с ними может быть распараллелена.Количество потоков равно: min (количество искателей, POOL_MAX_WORKERS)
Будьте осторожны при увеличении количества потоков, особенно если вы запускаете несколько процессов graphite-web (с uwsgi или аналогичными), так как это увеличит потребление памяти (и количество подключений к memcached).
- POOL_MAX_WORKERS
По умолчанию: 10
Максимальное количество рабочих потоков, которые должны быть созданы.
- REMOTE_RETRY_DELAY
По умолчанию: 60
Время в секундах для внесения веб-приложения в черный список после запроса тайм-аута.
- FIND_CACHE_DURATION
По умолчанию: 300
Время кэширования результатов удаленного поиска метрики в секундах.
- MAX_FETCH_RETRIES
По умолчанию: 2
Количество повторных попыток для определенной удаленной выборки данных.
- FIND_TOLERANCE
По умолчанию: FIND_TOLERANCE = 2 * FIND_CACHE_DURATION
Если запрос не полностью попадает в окно FIND_TOLERANCE, мы игнорируем это окно.Это предотвращает ненужные удаленные выборки возникает, когда углеродный кеш искажает node.intervals, создавая впечатление, что удаленные системы имеют данные, которых у нас нет локально, что, вероятно, у нас есть.
- REMOTE_STORE_MERGE_RESULTS
По умолчанию: True
Во время перебалансировки согласованного хеш-кластера, после события раздела в репликации> 1 кластера или в других случаях мы можем получить несколько данных TimeSeries для ключа метрики. Объедините их вместе, а не выбирайте «самый полный» (до 0.9.14 поведение).
- REMOTE_STORE_USE_POST
По умолчанию: Ложь
Этот параметр включает запросы POST вместо GET для удаленных запросов.
- REMOTE_STORE_FORWARD_HEADERS
По умолчанию: []
Предоставьте список заголовков HTTP, которые вы хотите пересылать с этого хоста при отправке запроса на удаленный сервер веб-приложений в CLUSTER_SERVERS.
- REMOTE_EXCLUDE_LOCAL
По умолчанию: Ложь
Попытайтесь определить, когда кластерный сервер является локальным, и не пересылать запросы
- REMOTE_RENDERING
По умолчанию: Ложь
Разрешить удаленный рендеринг изображений и данных (JSON и др.) в удаленных веб-приложениях Graphite. Если это включено,
RENDERING_HOSTS
также должно быть включено и настроено соответствующим образом.- RENDERING_HOSTS
По умолчанию: []
Список IP-адресов и портов удаленных веб-приложений Graphite, используемых для выполнения рендеринга. Каждое веб-приложение должно иметь доступ к тем же данным, что и веб-приложение Graphite, которое использует этот параметр либо через общее локальное хранилище, либо через
CLUSTER_SERVERS
. Пример: [«10.0.2.4:80», «10.0,2,5: 80 дюймов]- REMOTE_RENDER_CONNECT_TIMEOUT
По умолчанию: 1.0
Тайм-аут соединения для запросов удаленного рендеринга в секундах.
- CARBONLINK_HOSTS
По умолчанию: [127.0.0.1:7002]
Если на этом компьютере запущено несколько углеродных кэшей, каждый из них должен быть указан здесь, чтобы веб-приложение Graphite могло запрашивать в кешах данные, которые еще не были сохранены. Экземпляры удаленного углеродного кэша в кластерной установке с несколькими хостами должны быть указаны здесь , а не .Имена экземпляров должны быть указаны в соответствующем списке. Пример: [‘127.0.0.1:7002:a’ ,’127.0.0.1:7102:b ’,‘ 127.0.0.1:7202:c ’]
- CARBONLINK_TIMEOUT
По умолчанию: 1.0
Тайм-аут для запросов кэша углеродного кэша в секундах.
- CARBONLINK_HASHING_TYPE
По умолчанию: carbon_ch
Возможные значения: carbon_ch, fnv1a_ch
По умолчанию carbon_ch — это традиционная реализация согласованного хеширования в Graphite.В качестве альтернативы вы можете использовать fnv1a_ch , который поддерживает реализацию хеш-функции Фаулера – Нолла – Во (FNV-1a), предлагаемую проектом ретрансляции углерода-c-relay.
- CARBON_METRIC_PREFIX:
По умолчанию: углерод
Префикс для внутренней статистики углерода.
- INTRACLUSTER_HTTPS
По умолчанию: Ложь
Этот параметр определяет, используется ли https для связи между членами кластера, для которых не указан явный протокол.
Дополнительные настройки Django
local_settings.py.example
, поставляемый с Graphite-web, импортирует app_settings.py
в пространство имен для дальнейшей настройки Django. Это позволяет устанавливать или настраивать стандартные параметры Django, а также устанавливать и настраивать дополнительное промежуточное ПО.
Чтобы управлять этими настройками, убедитесь, что app_settings.py
импортирован как таковой:
из графита.app_settings импорт *
Наиболее распространенными настройками для управления являются INSTALLED_APPS
, MIDDLEWARE
и AUTHENTICATION_BACKENDS
.
django — Аутентификация LDAP не работает в Graphite
Я установил Graphite на сервере RHEL7. Я выполнил настройку LDAP в Graphite local_settings.py
## Настройка аутентификации LDAP / ActiveDirectory
USE_LDAP_AUTH = Верно
LDAP_SERVER = "ldap-test.com "
LDAP_PORT = 389
#LDAP_USE_TLS = Ложь
## Ручная настройка URI / запроса
LDAP_URI = "ldap: //ldap-test.com: 389"
LDAP_SEARCH_BASE = "ou = xxxxx, dc = zxxxx"
LDAP_BASE_USER = "uid = xxxx, ou = xxxxx, cn = xxxxx"
LDAP_BASE_PASS = "ххххх"
LDAP_USER_QUERY = "(sAMAccountName =% s)" # Для использования Active Directory "(sAMAccountName =% s)"
# Шаблон DN пользователя для использования для привязки (и аутентификации) к
# Сервер LDAP. % (имя пользователя) заменяется именем пользователя, указанным в
# графитовый логин.
LDAP_USER_DN_TEMPLATE = "cn =% (имя пользователя), ou = xxxxx, dc = xxxxx"
# Если вы хотите дополнительно настроить параметры подключения ldap, вам следует
# напрямую использовать ldap.set_option для установки глобальных опций модуля ldap.
# Например:
#
#import ldap
# ldap.set_option (ldap.OPT_X_TLS_REQUIRE_CERT, ldap.OPT_X_TLS_ALLOW) # Используйте # ldap.OPT_X_TLS_DEMAND для принудительного использования TLS
# ldap.set_option (ldap.OPT_REFERRALS, 0) # Включить для Active Directory
# ldap.set_option (ldap.OPT_X_TLS_CACERTDIR, "/ etc / ssl / ca")
# ldap.set_option (ldap.OPT_X_TLS_CERTFILE, "/etc/ssl/mycert.pem")
# ldap.set_option (ldap.OPT_X_TLS_KEYFILE, "/etc/ssl/mykey.pem")
# ldap.set_option (ldap.OPT_DEBUG_LEVEL, 65535) # Чтобы включить подробную отладку
# См. Http: // www.python-ldap.org/ для получения дополнительных сведений об этих параметрах.
Я также перезапустил графическую службу service uwsgi restart
. При попытке авторизоваться выдает
«Попытка аутентификации не удалась, убедитесь, что вы ввели свой логин. и пароль правильно «
В журналах также не могу найти сообщения об ошибках. Как исправить эту проблему.
Согласно приведенному ниже комментарию, я обновил файл views.py, расположенный в папке graphite / webapp / graphite.
Отслеживание импорта
из django.http import HttpResponseServerError
из загрузчика импорта django.template
def server_error (запрос, template_name = '500.html'):
template = loader.get_template (имя_шаблона)
context = {'stacktrace': traceback.format_exc ()}
вернуть HttpResponseServerError (template.render (context))
# Написание пользовательского бэкенда аутентификации
из django.contrib.auth.models импортировать пользователя
импорт ldap
# Написание собственной логики для аутентификации ldap
def verifyLogin (имя пользователя = Нет, пароль = Нет):
"" "Проверяет учетные данные для имени пользователя и пароля.Возвращает None в случае успеха или строку с описанием ошибки в случае неудачи.
# Адаптируйтесь к вашим потребностям
"" "
если не имя пользователя или не пароль:
вернуть "Неверное имя пользователя или пароль"
LDAP_SERVER = 'XX.XX.XX'
# полное имя пользователя AD
LDAP_USERNAME = 'uid = xx, ou = xx, cn = xx'
# твой пароль
LDAP_PASSWORD = xxxxxxxxxx
base_dn = 'ou = xx, dc = xx'
ldap_filter = '(sAMAccountName =% s)'
attrs = ['memberOf']
пытаться:
# создать клиента
ldap_client = ldap.initialize (LDAP_SERVER)
# выполняем синхронное связывание
ldap_client.set_option (ldap.OPT_REFERRALS, 0)
ldap_client.simple_bind_s (LDAP_USERNAME, LDAP_PASSWORD)
кроме ldap.INVALID_CREDENTIALS:
#print ("wron")
ldap_client.unbind ()
вернуть "Неверное имя пользователя или пароль"
кроме ldap.SERVER_DOWN:
#print ("вниз")
вернуть "сервер AD недоступен"
# получить все группы пользователей и сохранить их в сеансе cerrypy для будущего использования
ab = str (ldap_client.search_s (base_dn,
ldap.SCOPE_SUBTREE, ldap_filter, attrs) [0] [1] ['memberOf'])
#print ("ab" + ab)
ldap_client.отвязать ()
вернуть успех
‘ По-прежнему возникает та же ошибка.
## Графит local_settings.py | |
# Измените этот файл, чтобы изменить настройки веб-приложения Graphite по умолчанию | |
# | |
# В этот файл также можно добавить дополнительные настройки Django | |
################################### | |
# Общая конфигурация # | |
################################### | |
# | |
# Установите длинную случайную уникальную строку для использования в качестве секретного ключа для этого | |
# install.Этот ключ используется для соления хэшей, используемых в токенах аутентификации, | |
# ПО промежуточного слоя CRSF, хранилище файлов cookie и т. Д. Это должно быть установлено одинаково для | |
# экземпляров, если используется за балансировщиком нагрузки. | |
#SECRET_KEY = ‘UNSAFE_DEFAULT’ | |
# В Django 1.5+ установите это в список хостов, на которых ваши графические экземпляры — | |
# доступен как.См .: | |
# https://docs.djangoproject.com/en/dev/ref/settings/#std:setting-ALLOWED_HOSTS | |
#ALLOWED_HOSTS = [‘*’] | |
# Установите местный часовой пояс (по умолчанию Django — Америка / Чикаго) | |
# Если ваши графики смещены на пару часов, то это, вероятно, | |
Для | # необходимо явно указать местный часовой пояс. |
#TIME_ZONE = ‘America / Los_Angeles’ | |
# Установить краткий формат даты по умолчанию. См. Strftime (3) для получения информации о поддерживаемых последовательностях. | |
#DATE_FORMAT = ‘% m /% d’ | |
# Переопределите это, чтобы предоставить документацию, относящуюся к вашему развертыванию Graphite | |
# DOCUMENTATION_URL = «http: // графит.readthedocs.io/ « | |
# Logging | |
# Их также можно настроить с помощью LOGGING Django: | |
# https://docs.djangoproject.com/en/1.11/topics/logging/ | |
#LOG_ROTATION = True | |
#LOG_ROTATION_COUNT = 1 | |
#LOG_RENDERING_PERFORMANCE = True | |
#LOG_CACHE_PERFORMANCE = True | |
#LOG_INFO_PERFORMANCE = Ложь | |
# Имена файлов для вывода журнала, установите ‘-‘ для входа в stderr | |
#LOG_FILE_INFO = ‘info.log ‘ | |
#LOG_FILE_EXCEPTION = ‘exception.log’ | |
#LOG_FILE_CACHE = ‘cache.log’ | |
#LOG_FILE_RENDERING = ‘рендеринг.log’ | |
# Включить полное отображение страницы отладки при исключениях (страницы внутренних ошибок сервера) | |
#DEBUG = True | |
# Если используются файлы RRD и rrdcached, установить адрес или сокет демона | |
#FLUSHRRDCACHED = ‘unix: / var / run / rrdcached.носок ‘ | |
# Здесь перечислены серверы memcached, которые будут использоваться этим веб-приложением. | |
# Если у вас есть кластер веб-приложений, вы должны убедиться, что все они | |
# имеют * точное * значение для этого параметра. Это увеличит кеш | |
# эффективность. Установка пустого MEMCACHE_HOSTS отключит использование | |
# memcached целиком. | |
# | |
# Вы не должны использовать здесь адрес обратной связи (127.0.0.1), если используете кластеризацию | |
# поскольку каждое веб-приложение в кластере должно использовать одни и те же значения, чтобы предотвратить | |
# ненужные промахи в кэше. Установите значение [], чтобы отключить кеширование изображений и полученных данных. | |
#MEMCACHE_HOSTS = [‘10.10.10.10: 11211 ‘, ’10 .10.10.11: 11211’, ’10 .10.10.12: 11211 ‘] | |
# По умолчанию данные показателей и графики кэшируются на одну минуту. Если определено, | |
# DEFAULT_CACHE_POLICY — список сопоставленных кортежей минимальных временных диапазонов запроса. | |
# к длительности кеширования результатов. Это позволяет для больших запросов быть | |
# кэшируется на более длительный период времени.Время в секундах. Если политика | |
# пусто или не определено, все результаты будут кэшироваться в течение DEFAULT_CACHE_DURATION. | |
#DEFAULT_CACHE_DURATION = 60 # Кэшировать изображения и данные на 1 минуту | |
#DEFAULT_CACHE_POLICY = [(0, 60), # по умолчанию 60 секунд | |
# (7200, 120), #> = 2 часа запросы кэшируются 2 минуты | |
# (21600, 180)] #> = 6 часов запросы кэшируются 3 минуты | |
#MEMCACHE_KEY_PREFIX = «графит» | |
# Здесь перечислены параметры memcached.По умолчанию — пустой диктант. | |
# Допустимые параметры зависят от реализации Memcached и версии Django. | |
# До Django 1.10 параметры используются только для pylibmc. | |
# Начиная с 1.11, параметры используются как для python-memcached, так и для pylibmc. | |
#MEMCACHE_OPTIONS = {‘socket_timeout’: 0,5} | |
# этот параметр управляет значением xFilesFactor по умолчанию, используемым для агрегирования во время запроса | |
DEFAULT_XFILES_FACTOR = 0 | |
# Установить URL_PREFIX при развертывании graphite-web в некорневое расположение | |
#URL_PREFIX = ‘/ graphite’ | |
# Graphite использует теги Django для поддержки тегов в событиях.По умолчанию каждые | |
Длина тега | # не должна превышать 50 символов. |
#MAX_TAG_LENGTH = 50 | |
# Интервал для функции автоматического обновления в Composer, измеряемый в секундах. | |
#AUTO_REFRESH_INTERVAL = 60 | |
# Таймауты для запросов на поиск и рендеринг | |
#FIND_TIMEOUT = 3.0 # Тайм-аут для запросов на поиск метрики | |
#FETCH_TIMEOUT = 3.0 # Тайм-аут для выборки данных серии | |
# Разрешить имена метрик UTF-8 (может вызвать проблемы с производительностью) | |
# UTF8_METRICS = Ложь | |
################################### | |
# Пути файловой системы # | |
################################### | |
# | |
# Измените только GRAPHITE_ROOT, если ваша установка просто перенесена из / opt / graphite | |
# куда-нибудь | |
#GRAPHITE_ROOT = ‘/ opt / graphite’ | |
# Большинство установок, выполненных вне отдельного дерева, такого как / opt / graphite, будут | |
# нужно изменить эти настройки.Обратите внимание, что настройки по умолчанию для каждого | |
# из них относится к GRAPHITE_ROOT. | |
#CONF_DIR = ‘/ opt / graphite / conf’ | |
#STORAGE_DIR = ‘/ opt / graphite / storage’ | |
#STATIC_ROOT = ‘/ opt / graphite / static’ | |
#LOG_DIR = ‘/ opt / graphite / storage / log / webapp’ | |
#INDEX_FILE = ‘/ opt / graphite / storage / index’ # Поиск файла индекса | |
# Для дальнейшей или полной настройки путей измените следующее.Обратите внимание, что | |
# настройки по умолчанию для каждого из них относятся к CONF_DIR и STORAGE_DIR | |
# | |
## Файлы конфигурации Webapp | |
#DASHBOARD_CONF = ‘/opt/graphite/conf/dashboard.conf’ | |
#GRAPHTEMPLATES_CONF = ‘/opt/graphite/conf/graphTemplates.conf’ | |
## Каталоги данных | |
# | |
# ПРИМЕЧАНИЕ: Если какой-либо каталог в STANDARD_DIRS не читается, просмотр метрики будет нарушен. | |
# | |
#CERES_DIR = ‘/ opt / graphite / storage / ceres’ | |
#WHISPER_DIR = ‘/ opt / graphite / storage / Whisper’ | |
#RRD_DIR = ‘/ opt / graphite / storage / rrd’ | |
# | |
# Каталоги данных с использованием «Стандартного» средства поиска метрик (т.е.е. не Церера) | |
#STANDARD_DIRS = [WHISPER_DIR, RRD_DIR] # По умолчанию: устанавливается из указанных выше переменных | |
## Искатели данных | |
# Можно использовать альтернативный уровень хранения, отличный от стандартного, Whisper, | |
# для удовлетворения конкретных потребностей. | |
# См .: http: // graphite.readthedocs.io/en/latest/storage-backends.html | |
# | |
# STORAGE_FINDERS = ( | |
# ‘graphite.finders.remote.RemoteFinder’, | |
# ‘graphite.finders.standard.StandardFinder’, | |
# ‘graphite.finders.ceres.CeresFinder’, | |
#) | |
################################### | |
# Конфигурация электронной почты # | |
################################### | |
# | |
# Используется для отправки по электронной почте визуализированных графиков.Бэкэнд по умолчанию — SMTP. | |
#EMAIL_BACKEND = ‘django.core.mail.backends.smtp.EmailBackend’ | |
# | |
# Чтобы отправлять электронные письма на пол, включите вместо этого Dummy backend. | |
#EMAIL_BACKEND = ‘django.core.mail.backends.dummy.EmailBackend’ | |
#EMAIL_HOST = ‘локальный хост’ | |
#EMAIL_PORT = 25 | |
#EMAIL_HOST_USER = » | |
#EMAIL_HOST_PASSWORD = » | |
#EMAIL_USE_TLS = Ложь | |
################################### | |
# Конфигурация аутентификации # | |
################################### | |
# | |
## Настройка аутентификации LDAP / ActiveDirectory | |
#USE_LDAP_AUTH = Верно | |
#LDAP_SERVER = «ldap.mycompany.com « | |
#LDAP_PORT = 389 | |
#LDAP_USE_TLS = Ложь | |
## Ручная настройка URI / запроса | |
#LDAP_URI = «ldaps: //ldap.mycompany.com: 636» | |
#LDAP_SEARCH_BASE = «OU = users, DC = mycompany, DC = com» | |
#LDAP_BASE_USER = «CN = some_readonly_account, DC = mycompany, DC = com» | |
#LDAP_BASE_PASS = «readonly_account_password» | |
#LDAP_USER_QUERY = «(username =% s)» # Для использования Active Directory «(sAMAccountName =% s)» | |
# Шаблон DN пользователя для использования для привязки (и аутентификации) к | |
# Сервер LDAP.% (имя пользователя) заменяется именем пользователя, указанным в | |
# графитовый логин. | |
#LDAP_USER_DN_TEMPLATE = «CN =% (имя пользователя) s, OU = пользователи, DC = mycompany, DC = com» | |
# Если вы хотите дополнительно настроить параметры подключения ldap, вам следует | |
# напрямую использовать ldap.set_option для установки глобальных опций модуля ldap. | |
# Например: | |
# | |
#import ldap | |
# ldap.set_option (ldap.OPT_X_TLS_REQUIRE_CERT, ldap.OPT_X_TLS_ALLOW) # Используйте ldap.OPT_X_TLS_DEMAND для принудительного использования TLS | |
# ldap.set_option (ldap.OPT_REFERRALS, 0) # Включить для Active Directory | |
#ldap.set_option (ldap.OPT_X_TLS_CACERTDIR, «/ etc / ssl / ca») | |
# ldap.set_option (ldap.OPT_X_TLS_CERTFILE, «/etc/ssl/mycert.pem») | |
# ldap.set_option (ldap.OPT_X_TLS_KEYFILE, «/etc/ssl/mykey.pem») | |
# ldap.set_option (ldap.OPT_DEBUG_LEVEL, 65535) # Для включения подробной отладки | |
# См. Http://www.python-ldap.org/ для получения дополнительных сведений об этих параметрах. | |
## REMOTE_USER аутентификация. См .: https://docs.djangoproject.com/en/dev/howto/auth-remote-user/ | |
#USE_REMOTE_USER_AUTHENTICATION = True | |
# Заменить URL для ссылки входа (например, для django_openid_auth) | |
#LOGIN_URL = ‘/ account / login’ | |
############################## | |
# Авторизация для Личного кабинета # | |
############################## | |
# По умолчанию на дашбордах нет безопасности — любой пользователь может добавлять, изменять или удалять их. | |
# В этом разделе представлены 3 разные модели авторизации разной степени строгости. | |
# Если установлено значение True, пользователи должны войти в систему, чтобы сохранять или удалять панели мониторинга. По умолчанию False | |
#DASHBOARD_REQUIRE_AUTHENTICATION = True | |
# Если установлено имя группы пользователей, панели мониторинга могут быть сохранены и удалены любым пользователем в этом | |
# группа.Группы можно настроить в приложении Django Admin или в LDAP. По умолчанию Нет. | |
# ПРИМЕЧАНИЕ: игнорируется, если DASHBOARD_REQUIRE_AUTHENTICATION не установлен | |
#DASHBOARD_REQUIRE_EDIT_GROUP = «группа-редакторы-панели» | |
# Если установлено значение True, панели мониторинга могут быть сохранены или удалены любым пользователем, имеющим соответствующий | |
# (изменить или удалить) разрешение (как установлено в приложении Django Admin).По умолчанию False | |
# ПРИМЕЧАНИЕ: игнорируется, если DASHBOARD_REQUIRE_AUTHENTICATION не установлен | |
#DASHBOARD_REQUIRE_PERMISSIONS = True | |
######################### | |
# Конфигурация базы данных # | |
######################### | |
# | |
# По умолчанию используется sqlite.Если вы группируете несколько веб-приложений, вам понадобится | |
# для настройки внешней базы данных (например, MySQL) и настройки всего веб-приложения | |
# экземпляров для использования одной и той же базы данных. Обратите внимание, что эта база данных используется только для хранения | |
# Модели Django, такие как сохраненные графики, информационные панели, пользовательские настройки и т. Д. | |
# Метрические данные здесь не хранятся. | |
# | |
# НЕ ЗАБУДЬТЕ ЗАПУСТИТЬ МИГРАЦИЮ ПОСЛЕ НАСТРОЙКИ НОВОЙ БАЗЫ ДАННЫХ | |
# http://graphite.readthedocs.io/en/latest/config-database-setup.html | |
# | |
# | |
# Доступны следующие встроенные механизмы баз данных: | |
# джанго.db.backends.postgresql_psycopg2 | |
# django.db.backends.mysql | |
# django.db.backends.sqlite3 | |
# django.db.backends.oracle | |
# | |
# По умолчанию ‘django.db.backends.sqlite3’ с файлом ‘graphite.db’ | |
# находится в STORAGE_DIR | |
# | |
#DATABASES = { | |
# ‘default’: { | |
# ‘ИМЯ’: ‘/ opt / graphite / storage / graphite.db ‘, | |
# ‘ДВИГАТЕЛЬ’: ‘django.db.backends.sqlite3’, | |
# ‘ПОЛЬЗОВАТЕЛЬ’: », | |
# ‘ПАРОЛЬ’: », | |
# ‘HOST’: », | |
# ‘ПОРТ’: ‘ | |
#} | |
#} | |
# | |
######################## | |
# Конфигурация кластера # | |
######################## | |
# | |
# Чтобы избежать чрезмерного поиска DNS, вы хотите использовать только IP-адреса | |
# во всем этом разделе. | |
# | |
# Здесь должен быть указан IP-адрес (и, возможно, порт) веб-приложения на каждом | |
# удаленный сервер в кластере. Каждый из этих серверов должен иметь локальный доступ к | .|
# метрические данные. Обратите внимание, что первым сервером, который вернет совпадение по запросу, будет | .|
# используется. | |
#CLUSTER_SERVERS = [«10.0.2.2:80», «10.0.2.3:80»] | |
# Использование пула рабочих потоков для параллельной отправки запросов поиска | |
#USE_WORKER_POOL = True | |
# Максимальное количество рабочих потоков для одновременных операций хранения | |
#POOL_MAX_WORKERS = 10 | |
# Этот параметр определяет, используется ли https для связи между участниками кластера | |
#INTRACLUSTER_HTTPS = Ложь | |
# Время до повторной попытки неудачного удаленного веб-приложения | |
#REMOTE_RETRY_DELAY = 60.0 | |
# Завершить все запросы, если какой-либо удаленный вызов веб-приложения завершился неудачно | |
#STORE_FAIL_ON_ERROR = Ложь | |
# Пытаться определить, когда кластерный сервер является localhost и не пересылать запросы | |
#REMOTE_EXCLUDE_LOCAL = Ложь | |
# Количество попыток для определенной удаленной выборки данных. | |
#MAX_FETCH_RETRIES = 2 | |
#FIND_CACHE_DURATION = 300 # Время кэширования результатов удаленного поиска метрик | |
# Если запрос не полностью попадает в окно FIND_TOLERANCE | |
# игнорируем окно. Это предотвращает ненужные удаленные выборки | |
# вызвано перекосом узла кэша углерода.интервалы, дающие вид | |
# в удаленных системах есть данные, которых у нас нет локально, что, вероятно, у нас есть. | |
#FIND_TOLERANCE = 2 * FIND_CACHE_DURATION | |
#REMOTE_STORE_USE_POST = False # Использовать POST вместо GET для удаленных запросов | |
# Размер буфера, используемого для потоковой передачи ответов удаленного кластера.Установите 0, чтобы избежать десериализации потоковой передачи. | |
#REMOTE_BUFFER_SIZE = 1024 * 1024 | |
# Во время перебалансировки согласованного хеш-кластера, после события раздела на репликации> 1 кластера, | |
# или в других случаях мы можем получить несколько данных TimeSeries для ключа метрики. Скорее объедините их вместе | |
# который выбирает «самый полный» (pre-0.9.14 поведение). | |
#REMOTE_STORE_MERGE_RESULTS = Верно | |
# Предоставьте список заголовков HTTP, которые вы хотите пересылать с этого хоста | |
# при запросе к удаленному серверу webapp в CLUSTER_SERVERS | |
#REMOTE_STORE_FORWARD_HEADERS = [] # Итерация имен HTTP-заголовков | |
## Настройки удаленного рендеринга | |
# Установите значение True, чтобы включить рендеринг графиков в удаленном веб-приложении | |
#REMOTE_RENDERING = True | |
# Список IP-адресов (и, возможно, порта) веб-приложения на каждом удаленном сервере, который | |
# будет использоваться для рендеринга.Обратите внимание, что каждый хост рендеринга должен иметь локальный | |
# доступ к данным метрики или должен быть настроен CLUSTER_SERVERS | |
#RENDERING_HOSTS = [] | |
#REMOTE_RENDER_CONNECT_TIMEOUT = 1.0 | |
# Если на этом компьютере запущено несколько углеродных кешей (обычно за | |
# реле, использующее согласованное хеширование), вам необходимо указать IP-адрес, кеш | |
# порт запроса и имя экземпляра каждого экземпляра углеродного кэша на локальном | |
# (НЕ каждый углеродный кеш во всем кластере).Кеш по умолчанию | |
# порт запроса — 7002, и общая схема — использовать 7102, например, b, 7202 | |
# например c и т. Д. | |
# Если вы используете последовательное хеширование, сохраняйте порядок хостов таким же, как | |
# порядок НАЗНАЧЕНИЙ в вашем реле — иначе вы получите промахи кеша. | |
# | |
# Вы * должны * использовать 127.0.0.1 здесь в большинстве случаев. | |
# | |
#CARBONLINK_HOSTS = [«127.0.0.1:7002:a», «127.0.0.1:7102:b», «127.0.0.1:7202:c»] | |
#CARBONLINK_TIMEOUT = 1.0 | |
#CARBONLINK_RETRY_DELAY = 15 # секунд для занесения отказавшего удаленного сервера в черный список | |
# Установить протокол pickle для использования для запросов Carbonlink, | |
# (по умолчанию -1 — HIGHEST_AVAILABLE для вашей версии Python) | |
# подробнее: https: // docs.python.org/3/library/pickle.html#data-stream-format | |
#CARBONLINK_PICKLE_PROTOCOL = -1 | |
# Тип метрической хеш-функции. | |
# По умолчанию `carbon_ch` — это традиционная реализация согласованного хеширования в Graphite. | |
# В качестве альтернативы вы можете использовать `fnv1a_ch`, который поддерживает хэш Фаулера-Нолл-Во | |
Реализация хэша функции | # (FNV-1a), предложенная проектом Carbon-c-relay |
# https: // github.com / grobian / карбон-c-реле | |
# | |
# Поддерживаемые значения: carbon_ch, fnv1a_ch | |
# | |
#CARBONLINK_HASHING_TYPE = ‘carbon_ch’ | |
# «keyfunc» — это определяемая пользователем функция Python, которой присвоено имя метрики | |
# и возвращает строку, которую следует использовать при хешировании имени метрики. | |
# Это важно, когда ваше хеширование должно учитывать определенные группы метрик. | |
#CARBONLINK_HASHING_KEYFUNC = «/opt/graphite/bin/keyfuncs.py:my_keyfunc» | |
# Префикс для внутренней статистики углерода. | |
# CARBON_METRIC_PREFIX = ‘углерод’ | |
# Коэффициент репликации для использования при согласованном хешировании. | |
# Обычно это значение должно соответствовать значению, настроенному в Carbon. | |
#REPLICATION_FACTOR = 1 | |
################################### | |
# Настройки TagDB # | |
################################### | |
# База данных тегов | |
#TAGDB = ‘графит.tags.localdatabase.LocalDatabaseTagDB ‘ | |
# Time to cache seriesByTag results | |
#TAGDB_CACHE_DURATION = 60 | |
# Предел результатов автозаполнения по умолчанию | |
#TAGDB_AUTOCOMPLETE_LIMIT = 100 | |
# Настройки для Redis TagDB | |
#TAGDB_REDIS_HOST = «локальный хост» | |
#TAGDB_REDIS_PORT = 6379 | |
#TAGDB_REDIS_DB = 0 | |
#TAGDB_REDIS_PASSWORD = » | |
# Настройки для HTTP TagDB | |
#TAGDB_HTTP_URL = » | |
#TAGDB_HTTP_USER = » | |
#TAGDB_HTTP_PASSWORD = » | |
# Поддерживает ли удаленная TagDB автозаполнение? | |
#TAGDB_HTTP_AUTOCOMPLETE = Ложь | |
################################### | |
# Плагины функций # | |
################################### | |
# Список модулей расширения пользовательских функций | |
# См .: http: // graphite.readthedocs.io/en/latest/functions.html#function-plugins | |
FUNCTION_PLUGINS = [] | |
################################### | |
# Дополнительные настройки Django # | |
################################### | |
# Раскомментируйте следующую строку для прямого доступа к настройкам Django, например | |
# MIDDLEWARE или ПРИЛОЖЕНИЯ | |
# из графита.app_settings импорт * |
Хранение и визуализация временных рядов с графитом
12 сентября 2013 г.
ЧТО ТАКОЕ ГРАФИТ?
Graphite — это инструмент, который достаточно хорошо выполняет две задачи: хранение числовых данных временных рядов (метрика, значение, временная метка эпохи) и отображение графиков этих данных по запросу. Графитовые данные временных рядов — это инструмент мониторинга в масштабе предприятия, написанный Крисом Дэвисом из Orbitz, а затем открытый исходный код по лицензии Apache в 2008 году.
В этом посте я объясню, как настроить Graphite, и перейду к «Hello World» графических показателей.
ПОЧЕМУ ИСПОЛЬЗУЕТСЯ ГРАФИТ?
Graphite прост в использовании, и в течение нескольких часов после установки и сбора данных вы можете графически отображать свои данные, чтобы они были значимы для вас и других. Это также означает, что вы можете передать его деловым людям для построения понятных им графиков. Тем не менее, люди могут создавать «плохие» графики, создание которых требует времени, так что имейте это в виду.С большой властью приходит большая ответственность!
Графики, создаваемые Graphite, статичны, так как они создаются как изображения. В большинстве случаев этого достаточно, но бывают случаи, когда вы хотите изучить свои данные более интерактивным способом. К счастью, вы можете получить те же данные в формате JSON через HTTP.
НАСТРОЙКА ГРАФИТА
Для целей этой статьи я предполагаю, что вы используете CentOS. В настоящее время Graphite не так прост, как «yum install graphite», но настройка проста.
Следующие шаги помогут вам установить Graphite и все его зависимости на новую виртуальную машину или сервер.
Установить репозиторий EPEL
$ sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm $ sudo yum -y update
Установить зависимости
$ sudo yum -y установить gcc.x86_64 git.x86_64 \ python-devel pyOpenSSL python-memcached \ растровые растровые шрифты python-crypto zope \ pycairo mod_python python-ldap Django \ Django-тегирование python-sqlite2 mod_wsgi
Установите программное обеспечение для управления пакетами Python
$ sudo yum -y установить python-pip.noarch
Установите графит
$ sudo pip-python установить шепот из углеродного графита-паутины
Скопируйте примеры файлов конфигурации.
$ cp /opt/graphite/conf/carbon.conf.example \ /opt/graphite/conf/carbon.conf $ cp /opt/graphite/conf/storage-schemas.conf.example \ /opt/graphite/conf/storage-schemas.conf
Настроить веб-сервер
Нам нужно настроить веб-приложение Django:
$ cp graphite.wsgi.example графит.WSGI
Теперь нам нужно отредактировать следующие файлы:
/etc/httpd/conf.d/graphite-vhost.conf
Для того, чтобы носитель сайта администратора django работал, вы должны изменить @ DJANGO_ROOT @ на путь к вашей установке django, который, вероятно, выглядит примерно так /usr/lib/python2.6/site-packages/django
/opt/graphite/webapp/graphite/settings.py
Добавьте это в конец файла, который настраивает веб-приложение Graphite для использования с автономной базой данных с использованием SQLite.
БАЗЫ ДАННЫХ = { 'По умолчанию': { 'ДВИГАТЕЛЬ': 'django.db.backends.sqlite3', 'ИМЯ': присоединиться (STORAGE_DIR, 'graphite.db'), 'USER': '', # Не используется с sqlite3. 'PASSWORD': '', # Не используется с sqlite3. 'HOST': '', # Не используется с sqlite3. 'PORT': '', # Не используется с sqlite3. } }
Первоначальное создание базы данных
Вы должны указать Django создать таблицы базы данных, используемые графитовым веб-приложением.Выполните следующие команды и оставьте настройки по умолчанию.
$ cd / opt / graphite / webapp / графит $ sudo python manage.py syncdb
Для следующих файлов могут потребоваться изменения разрешений в зависимости от того, как вы запускаете веб-сервер Apache. Если вы работаете как никто: никто, вам не нужно запускать
sudo chown никто: никто
в этих файлах:
/opt/graphite/storage/log/webapp/info.log /opt/graphite/storage/log/webapp/exception.log / opt / графит / хранилище / журнал / веб-приложение / opt / graphite / хранилище / opt / графит / хранилище / графит.db
Углеродные демоны
Graphite требует для работы трех демонов:
1. carbon-cache.py
Это рабочая лошадка, которая собирает метрики. Метрики изначально хранятся в памяти, а затем сбрасываются на диск. Перед запуском необходимо разместить два файла конфигурации: carbon.conf и storage-schemas.conf.
2. carbon-relay.py
Это обеспечивает репликацию и сегментирование данных метрики. Он смотрит на carbon.conf и relay-rules.conf для его конфигурации.
3. carbon-aggregator.py
Используется перед файлом carbon-cache.py для буферизации и агрегирования показателей перед их отправкой в базу данных шепота. Это полезно, когда вам не нужны детализированные данные, и сокращает количество операций ввода-вывода.
Полную информацию о демонах можно найти на веб-сайте Graphite, а также информацию о шепоте.
Графитовый Hello World
Чтобы начать работу, сначала скопируйте примеры файлов конфигурации.
cp /opt/graphite/conf/carbon.conf.example /opt/graphite/conf/carbon.conf cp /opt/graphite/conf/storage-schemas.conf.example /opt/graphite/conf/storage-schemas.conf
Сначала запустите углеродный кеш (я предполагаю, что ваш веб-сервер запущен и работает):
$ sudo / usr / bin / python /opt/graphite/bin/carbon-cache.py \ - начало отладки
Использование –debug даст вам представление о том, как работает Graphite. А теперь давайте отправим ему некоторые данные.
Данные, отправляемые в Graphite, имеют форму трех значений:
- название в метрической системе
- значение в метрической системе
- метка времени эпохи
Этот небольшой скрипт каждые 60 секунд генерирует фиктивные данные, запускайте их из другого окна терминала.
для i в {1..20}; сделать echo metric.example `number = $ RANDOM; пусть «число% = 100»; echo $ number` date +% s` | nc ВАШ_СЕРВЕР_IP 2003; спать 60; сделано
Мы создаем метрику под названием «metric.example», устанавливаем значение от 1 до 100 и отправляем его на сервер Graphite через порт 2003 (углеродный кеш порта работает).
Теперь, когда данные поступают, вы должны видеть, что что-то происходит в окне терминала, в котором запущен углеродный кеш, благодаря флагу отладки.
Теперь давайте создадим простой график. Посетите Graphite UI в своем браузере, http://10.10.0.1/dashboard/, подставив имя хоста вашего сервера. Вы должны увидеть что-то вроде этого:
Щелкните «Метрика», и вы увидите следующее:
Теперь щелкните «metric.example», и вы увидите диаграмму с данными примера.
Поздравляем! Вы создали свой первый график. Все графики в Graphite имеют прямой URL, поэтому вам не нужно переходить через панели управления.Вы можете сгруппировать их в веб-страницу и отображать их так, как вам нравится.
Как видите, названия показателей имеют точечную нотацию. Поскольку мы использовали «metric.example», мы можем добавить больше примеров в «metric». как это:
Вы видите три отдельных графика. Поскольку эти показатели связаны, было бы неплохо увидеть их на единой диаграмме. Используя точечную нотацию, мы можем сделать это, используя подстановочный знак *. Так что мы можем посмотреть на них, выбрав «метрика. *» Вот так:
Вывод JSON
Как я сказал ранее, вы можете получить данные Graphite обратно в формате JSON.Все зависит от URL-адреса, поэтому, чтобы получить вышеуказанный набор данных в формате JSON, попробуйте:
http://10.10.0.54/render?from=-5minutes&until=now&target=metric.*&format=json
Полученные данные будут выглядеть примерно так:
[{"target": "metric.example", "datapoints": [[21.0, 1376001405], [81.0, 1376001420], [20.0, 1376001435], [50.0, 1376001450], [9.0, 1376001465], [16.0] , 1376001480], [42,0, 1376001495], [19,0, 1376001510], [96,0, 1376001525], [26,0, 1376001540], [86,0, 1376001555], [55.0, 1376001570], [85.0, 1376001585], [45.0, 1376001600], [4.0, 1376001615], [81.0, 1376001630], [11.0, 1376001645], [1.0, 1376001660], [61.0, 1376001675], [99.0, 1376001690]]}, {"target": "metric.example2", "datapoints": [[40.0, 1376001405], [0.0, 1376001420], [6.0, 1376001435], [36.0, 1376001450], [5.0, 1376001465], [90.0, 1376001480] ], [46,0, 1376001495], [76,0, 1376001510], [83,0, 1376001525], [13,0, 1376001540], [73,0, 1376001555], [12,0, 1376001570], [71,0, 1376001585], [31,0, 1376001600], [91.0, 1376001615], [68,0, 1376001630], [98,0, 1376001645], [20,0, 1376001660], [79,0, 1376001675], [86,0, 1376001690]]}, {"target": "metric.example3", "datapoints": [[21.0, 1376001405], [80.0, 1376001420], [19.0, 1376001435], [79.0, 1376001450], [47.0, 1376001465], [95.0, 1376001480] ], [89,0, 1376001495], [57,0, 1376001510], [26,0, 1376001525], [56,0, 1376001540], [15,0, 1376001555], [54,0, 1376001570], [84,0, 1376001585], [44,0, 1376001600], [34,0, 1376001615], [11,0, 1376001630], [41,0, 1376001645], [0.метрика \. удержания = 15 с: 1 дн.
Документация Graphite содержит полную информацию о том, что все означает, но, чтобы дать вам представление, эти директивы управляют тем, сколько данных Graphite хранит и как долго в каких сегментах. Итак, 15s: 1d означает хранение 15-секундных блоков данных в течение одного дня. Если вы посмотрите на файловую систему, вы увидите каталоги и файлы для каждой метрики.
Поздравляем! Теперь у вас есть Graphite. Поэкспериментируйте с отправкой в него реальных данных.
Изображение заголовка — Джастин Граймс. Используется под CC BY-SA 2.0.
1 |
|
Установка Graphite для использования с NAV в Debian - документация NAV 4.9.9.dev13 + gb482be056
Это краткое руководство по установке и настройке простого Graphite установка, посвященная NAV, на Debian 9 (Stretch) или Debian 10 (Buster) сервер.
Предупреждение
Не запускайте NAV , пока не настроите должным образом схемы хранилища Carbon-cache с предоставленной схемой хранилища NAV config, иначе у будут проблемы с пустыми областями в вашем графики, которые вам нужно будет разрешить вручную постфактум.
Получение графита
Полная установка Graphite состоит из внутреннего сервера Carbon , который получает метрики по TCP или UDP, а также веб-интерфейс Graphite , который позволяет просматривать и получение / отображение сохраненных показателей.NAV будет собирать метрики и отправить в первый, а второй использовать для получения метрик и рендеринга графики.
Предполагая, что вы будете запускать Graphite на том же сервере Debian, что и вы при запуске NAV все, что вам нужно сделать для установки Graphite на Debian 9 , это:
apt-get install python-psycopg2 graphite-carbon \ Python-шепот / стрейч-бэкпорты графит-паутина / стрейч-бэкпорты
Для Debian 10 это будет:
apt-get install python3-psycopg2 графит-углерод графит-паутина
Настройка Carbon
Carbon, бэкэнд Graphite, принимающий метрики, должен быть настроен перед этим. может использоваться с NAV.Мы рассмотрим только простой случай использования одиночный углеродный кэш процесс. Большая часть этой информации взята из Интеграция Graphite с разделом NAV общей установки документация.
Отредактируйте /etc/carbon/carbon.conf
, чтобы убедиться, что эти параметры установлены в [кэш]
раздел:
MAX_CREATES_PER_MINUTE = inf ENABLE_UDP_LISTENER = Верно
Первая строка гарантирует, что Carbon не задержит создание бэкэнда Whisper. файлы для метрик, которые NAV отправляет.Значение по умолчанию - не более 50. создает в минуту (существует настройка, ограничивающая нагрузку на ввод-вывод на огромных установках), это означает, что при начальной загрузке установки NAV могут пройти часы или дни. до того, как все его метрики будут фактически сохранены в Graphite.
Вторая строка гарантирует, что Carbon принимает метрики на сокете UDP, который требуется NAV.
Carbon также должен знать разрешение, при котором будут храниться ваши временные ряды. данные, как долго их хранить и как сворачивать данные с высоким разрешением архивы данных в архивы более низкого разрешения.Это схемы хранения и методы агрегирования. NAV предоставляет для этого свои собственные примеры конфигурации; на Графитовый бэкэнд , предназначенный для NAV , вы можете просто создать символьную ссылку на эти файлы конфигурации из NAV:
компакт-диск / и т. Д. / Карбон / mv хранилище-schemas.conf хранилище-schemas.conf.bak mv хранилище-aggregation.conf хранилище-aggregation.conf.bak ln -s /etc/nav/graphite/*.conf / etc / carbon /
Наконец, перезапустите демон carbon-cache
:
systemctl перезапустить углеродный кеш
Настройка веб-интерфейса Graphite
Чтобы включить веб-интерфейс, вам нужно сделать две вещи:
- Настройте и создайте базу данных, которая будет использоваться для хранения определений графов.
- Настройте Apache для обслуживания веб-интерфейса.
Создание графитовой базы данных
Graphite по умолчанию будет использовать базу данных SQLite, но это не рекомендуется в настройки производства, так как это вызовет проблемы с несколькими одновременными пользователей. У вас уже есть установка PostgreSQL из-за NAV, поэтому мы рекомендую использовать это.
Создайте пользователя graphite
PostgreSQL и дайте ему пароль (обратите внимание на
пароль), затем создайте базу данных, принадлежащую этому пользователю:
sudo -u postgres createuser --pwprompt --no-createrole --no-superuser --no-createdb --login graphite sudo -u postgres createdb --owner = графитовый графит
Файл конфигурации веб-приложения Graphite находится в / и т.д. / графит / local_settings.py
. Есть в основном три настройки, которые вы
потребуется настроить: SECRET_KEY
, TIME_ZONE
и БАЗЫ ДАННЫХ
. В SECRET_KEY
используется для криптографических целей при работе с файлами cookie и
данные сеанса (точно так же, как настройка SECRET_KEY
из nav.conf
). Это
должна быть случайной строкой символов; мы можем предложить использовать makepasswd
команда для генерации такой строки:
$ makepasswd --chars 51 iLNScMiUpNy5hditWAp9e2dyHGTFoX44UKsbhj91f9xL4fdJSDY
Затем отредактируйте / etc / graphite / local_settings.ру
(нет, ни под каким
обстоятельства, повторно используйте фактическое значение примера SECRET_KEY
здесь!) и
make, чтобы установить эти три параметра:
SECRET_KEY = 'iLNScMiUpNy5hditWAp9e2dyHGTFoX44UKsbhj91f9xL4fdJSDY' TIME_ZONE = 'Europe / Oslo' # Это должно соответствовать вашему фактическому часовому поясу, также как в nav.conf БАЗЫ ДАННЫХ = { 'По умолчанию': { "НАЗВАНИЕ": "графит", 'ДВИГАТЕЛЬ': 'django.db.backends.postgresql_psycopg2', 'ПОЛЬЗОВАТЕЛЬ': 'графит', 'PASSWORD': 'пароль, который вы записали выше', 'HOST': 'localhost', «ПОРТ»: «5432» } }
Теперь заставьте graphite-web
инициализировать свою схему базы данных:
sudo -u _graphite graphite-manage migrate auth --noinput sudo -u _graphite graphite-manage migrate --run-syncdb --noinput
Настроить Apache для обслуживания веб-приложения Graphite
В принципе, вы можете использовать любой веб-сервер, поддерживающий интерфейс WSGI.Ты
у вас уже есть Apache с mod_wsgi
, так что вы можете его использовать. Однако если
вы используете Debian 10 , пакет graphite-web
будет работать на Python 3,
тогда как текущий выпуск NAV работает на Python 2. mod_wsgi
может только поддерживать
одна версия Python на том же сервере.
В двух следующих примерах будет определен виртуальный хост Apache, который будет обслуживать веб-приложение Graphite на порту 8000 . Добавление SSL-шифрования оставлено как упражнение для читателя (но в этом нет необходимости, если вы разумно решите установить настроить сервер для прослушивания только интерфейса localhost).
Предупреждение
Вся статистика по графиту станет доступной для просмотра всем, кто может
доступ к вашему серверу через порт 8000. Вероятно, вы захотите
ограничить доступ к этому порту, используя iptables или ACL в
ваши роутеры. Или, если вас не интересует просмотр веб-приложения
сами измените оператор Listen
на Listen
127.0.0.1:8000
, так что только установка NAV на localhost
сможет получить к нему доступ.
В Debian 9 (Stretch)
Graphite-web потребуется собственный виртуальный хост, поэтому давайте добавим новую конфигурацию сайта для
Apache (этот пример вдохновлен примером graphite-web
пакет в / usr / share / graphite-web / apache2-graphite.conf
):
Слушайте 8000WSGIDaemonProcess _graphite process = 1 thread = 1 display-name = '% {GROUP}' inactivity-timeout = 120 user = _graphite group = _graphite WSGIProcessGroup _graphite WSGIImportScript /usr/share/graphite-web/graphite.wsgi process-group = _graphite application-group =% {GLOBAL} WSGIScriptAlias / /usr/share/graphite-web/graphite.wsgi Псевдоним / content / / usr / share / graphite-web / static / <Местоположение "/ content /"> SetHandler Нет Журнал ошибок $ {APACHE_LOG_DIR} / graphite-web_error.бревно LogLevel предупреждать CustomLog $ {APACHE_LOG_DIR} /graphite-web_access.log вместе
В Debian 10 (Buster)
Graphite-web по-прежнему потребуется собственный виртуальный хост, но в этой версии Debian мы запустим приложение, используя контейнер uWSGI, и определим виртуальный хост Apache для прокси-запросов к этому контейнеру.
Сначала установите uWSGI и необходимые модули Apache для настройки запроса uWSGI. прокси:
apt-get install uwsgi uwsgi-plugin-python3 libapache2-mod-proxy-uwsgi libapache2-mod-uwsgi
Затем перейдите к добавлению нового определения приложения uWSGI:
/ и т.д. / uwsgi / приложения-включенные / графит.ini[uwsgi] uid = _graphite gid = _graphite размер буфера = 32768 chdir = / usr / share / графит-сеть env = DJANGO_SETTINGS_MODULE = graphite.settings максимальное количество запросов = 100 module = graphite.wsgi: приложение плагины = python3 процессы = 5 socket = 127.0.0.1:7999 сенсорная перезагрузка = /usr/lib/python3/dist-packages/graphite/wsgi.py
Чтобы запустить контейнер приложения, который будет прослушивать запросы на localhost: 7999
, просто запустите:
Теперь вы готовы добавить определение сайта Apache для этого приложения:
/ и т.д. / apache2 / сайты-доступные / графит-веб.confСлушайте 8000Псевдоним / static / / usr / share / graphite-web / static / <Местоположение "/ static /"> SetHandler Нет Требовать все предоставлено <Местоположение "/"> Параметры FollowSymlinks Индексы Требовать все предоставлено ErrorLog \ $ {APACHE_LOG_DIR} /graphite-web_error.log LogLevel предупреждать CustomLog \ $ {APACHE_LOG_DIR} / graphite-web_access.журнал комбинированный ProxyRequests отключен ProxyPreserveHost Off # Разрешить Apache обслуживать статические файлы ProxyPass / static /! ProxyPassReverse / static /! # Остальное отдайте нашему экземпляру uWSGI ProxyPass / uwsgi: //127.0.0.1: 7999 / ProxyPassReverse / uwsgi: //127.0.0.1: 7999 / ProxyTimeout 300
Затем убедитесь, что для использования этой конфигурации сайта включены необходимые модули Apache:
a2enmod uwsgi прокси-сервер proxy_uwsgi
Наконец, в обеих версиях Debian
Включить новый сайт на порту 8000:
a2ensite графит-паутина systemctl перезапустить apache2
Поздравляем, теперь вы готовы к запуску NAV!
(PDF) Месторождение графита Мойале, юг Эфиопии
NGU-BULL 4 36, 2000 - PAGE 169
Месторождение графита Мойале, юг Эфиопии
HAILE
-MICHAEL
FENTAW,
SE
HAMMED
, N
ESIBU
S
EB
HAT
& HAvARD
GAU
TNEB
Fentaw, H.М., Мохаммед, С., Себхат, Н. и Гаут неб, Х. 2000: Графитовые месторождения Мойале расположены южнее Эфиопии. Norges
geo log iske undersekelse Bullet in 436, 169-173.
Докембрийские метаморфические породы юга Эфиопии, относящиеся к панафриканскому поясу (Мозамбикский пояс). разместить
Moyale g raphite Dep osit. Основная порода
пачка
сланцы амфиболовые, кварц-полевошпат-слюдистые сланцы, гранодиориты,
кварциты и графитовые сланцы.Графитосодержащий агрегат
размещается на кварцевых сланцах и кварцевых слюдяных сланцах, а
обычно образуют непрерывные тела, простирающиеся на
сотни
единиц метра. Регулярная вариация в градации и размере хлопка
графита не предусмотрена. Судя по его более позднему масштабу и способу залегания, графит считается осадочным в происхождении
–. Согласно анализу изображений, средний объемный процент графита равен 7.9%; Средняя длина
осей самого короткого и длинного стержня графита составляет 155 и 407 мкм соответственно. Статистический анализ показывает, что
около 60% зерен гранита имеют наибольшую длину оси между 100 и 300 мкм, а оставшиеся 40% приходятся на фракцию размером> 300
мкм. Предварительные флотационные испытания для концентрирования графитов фракцией <400 IJm привели к содержанию концентрата
7,1% с извлечением более 90%.
Haile-Michael Fe
nt
aw, Seid
Mohammed
& Nesibu Sebhot, Ethiopi an I
nstitu
te
of
Ge
, Добавочный номер
Abobo, Ethio pia.
Hciv
ard
G
autn
eb, Geol
ogic
al Survey of Norway, N-7491 T
rondh
eim, N orwa y.
Введение
Графит встречается в большинстве метаморфических пород
из
Эфиопия -
pia. Некоторые из известных залежей (например, район Кибре Менгист
) характеризуются очень мелкими чешуйками и содержат минералы сульфидов сульфидов
. Месторождения жильного рафита в Эфиопии пока не известны
. Настоящее исследование касается графита
из района Мояле, расположенного в 750 км к югу от
Аддис-Абеба, на границе с Кенией (рис.1). Графит
встречается примерно в 6 км от нас.
из
Moyale
буксир
n. Исследования
графита Moyale включили отображение графита -
итерации геологическими и геофизическими методами. Методы, анализ
содержания углерода графита и определение
из
размера
и текстуры
из
зерен графита. Были предприняты предварительные усилия
для концентрирования графита методом флотации
.
Геологическая обстановка
Северо-восточная ветвь
из
Пояса Мозамбик, крупная
Протерозойская структурно-метаморфическая единица
из
Восточная Африка,
простирается от Кении до
в Эфиопии.в южной Аравии (Warden & Horke 1984). В Мозаме -
двукратный пояс южной Эфиопии, три основных подразделения (нижний,
,средний и верхний комплексы) различались на
характерных контрастов в l
, литологии
, метаморфизме. и
структурный стиль (Kazmin et al.1978). Метаосадочные породы
(графитовые филлиты, био
тит
сланцы и метакалькарейные породы)
в районе Адола образуют верхний пермост
участок
верхнего слоя
плекс
плекс
плекс
юг Эфиопии. На основе этой схемы, породы
региона Мояль коррелируют с нижней частью
из
верхнего комплекса и, вероятно, относятся к неопротерозойскому возрасту
–(Alene & Barker 1993).Согласно Hussien (1999), ассоциация горных пород
в районе Мояле типична для комплекса субдукции
, состоящего из метаморфозов
maf
ic-ultramafic
пород, образованных фордугой и аккреционным клином. метаседи-
и сопутствующие породы. Хуссиен далее предположил, что
литологическая ассоциация в доме Мойя указывает на
существование океанической коры до субдукции.
Основные орогенные пояса Африканского Рога, Аравийского
Щита и Мозамбикского пояса пересекаются в районе Мояле
(Kazmin et al.