Upgrade to Pro — share decks privately, control downloads, hide ads and more …

MongoDB by Chef | Yauhen Artsiukhou

MongoDB by Chef | Yauhen Artsiukhou

Yauhen Artsiukhou
Meetup #9

Avatar for Minsk MongoDB User Group

Minsk MongoDB User Group

April 04, 2013
Tweet

More Decks by Minsk MongoDB User Group

Other Decks in Technology

Transcript

  1. MongoDB Meetup. April 2013 Хитрый план • Поднять 1, 10,

    100 mongo cluster-ов. • Поиск решения • Chef — управляем серверами • Долго думаем и пишем рецепты • Поднимаем кластер за 30 минут • Добавляем 100 серверов
  2. MongoDB Meetup. April 2013 Инфраструктура как код • Чёткая организация

    • Хранится в git • Доступно каждому • Поваренные книги • Рецепты • Среды • Роли
  3. MongoDB Meetup. April 2013 Chef Run • Процесс стартует на

    ноде • Скачиваются все необходимые рецепты • Фаза компиляции ресурсов • Фаза запуска
  4. MongoDB Meetup. April 2013 Node internals • run_list • roles

    • attributes • environment • chef-client • ohai
  5. MongoDB Meetup. April 2013 Knife Search Exec • Поиск по

    атрибутам • Поиск по ролям • Поиск по окружению • Поиск по рецептам • Запуск по поиску • knife search node "os:linux AND chef_environment:qa" • knife search node "mongodb_clusters_e3s:*" • knife ssh "chef_environment:qa" -x user -i ~/.ssh/epm-e3s "df -h"
  6. MongoDB Meetup. April 2013 Define Mongos' Attributes • Дерево атрибутов

    в качестве настроек • Атрибуты хранят всё: порты, имена, размеры, пути, файлы логов, путь к данным и т.д. • Некоторые атрибуты будут уникальными, чтобы мы могли определить что делать с нодой. • Часть атрибутов будет использовано по умолчанию.
  7. MongoDB Meetup. April 2013 MongoDB Config • Для каждого кластера

    на этой ноде.. • Для каждого config_db в кластере.. • Определить инстанс config_name
  8. MongoDB Meetup. April 2013 MongoDB Shard • Для каждого кластера..

    • Для каждого шарда.. • Определить шард.
  9. MongoDB Meetup. April 2013 MongoDB Shard Replication • Найти все

    кластера на данной ноде • Найти шарды, принадлежащие кластеру • Для каждого шарда найти все сервера с такими же шардами • Отдать команду MongoDB построить реплику из списка
  10. MongoDB Meetup. April 2013 Protecting with firewall • Включаем фаервол

    на всех серверах • Все порты открываем только другим участникам кластера по принципу: каждый имеет доступ к каждому • Добавляем allow_list для админов и приложения
  11. MongoDB Meetup. April 2013 Power of search • Маленький кусок

    кода, но большие возможности. • Тут используется шаблон mogodb_firewall. Заглянем туда.
  12. MongoDB Meetup. April 2013 MongoDB Firewall • Для каждого сервиса

    на этой ноде.. • Для всех разрешённых ip адресов.. • Добавить правило на вход и на выход.