Как стать автором
Обновить
Oleg @free4x read-only

Пользователь

  • Публикации
  • Комментарии

Поднятие chroot-«виртуалки» с ubuntu для сборки пакетов

Настройка LinuxСистемное администрирование*nix
Приветствую.

На днях надоело для сборки пакетов ходить по ssh на разные машинки и решил поднять парочку у себя. Расскажу о граблях, которые собрал по дороге и о костылях, которые смастерил.

Все действия выполнялись на Arch linux, но действия по настройке chroot-виртуалок и schroot должны быть очень схожими.

Всё, что описано далее, разумеется, разбросано по всей сети. Но проб и ошибок по пути много.
Прошу под кат
Всего голосов 13: ↑10 и ↓3+7
Просмотры16K
Комментарии 10

Установка и настройка XBMC на Raspberry Pi

Работа с видеоГаджеты
Из песочницы
imageПримерно 2 месяца назад купил я игрушку под названием Raspberry Pi. Не удержался от покупки, так как собирался поставить на нее эмулятор старых игровых консолей (Sega, Dendy и тд.), что в итоге и сделал. Но, в связи с недавним постом на хабре о медиацентре для этого компьютера, решено было установить дома медиасервер.
Читать дальше →
Всего голосов 10: ↑7 и ↓3+4
Просмотры46K
Комментарии 12

3G Модем и MikroTik

Сетевое оборудование
Все началось с того, что дома пропал интернет. У меня подключены два проводных оператора и оба стали недоступны. Позже оказалось, что в соседнем доме выключили электричество. Поскучав час другой без интернета, я вспомнил о 3G модеме ZTE MF112. Подключил к компьютеру, но этого было мало, хотелось еще и рабочий Wi-Fi в квартире. По этой причине я его подключил к своему MikroTik RouterBoard 951g-2hnd. Вот об этом я и расскажу.
image
Читать дальше →
Всего голосов 22: ↑19 и ↓3+16
Просмотры128K
Комментарии 11

Микрокомпьютер Module MB 77.07 — русский ответ Raspberry Pi

Блог компании PromwadOpen sourceСистемное программированиеПроизводство и разработка электроники


Читая новости о запрете на поставку электронной компонентной базы из США для отдельных производителей в РФ, мы решили рассказать об одноплатном микрокомпьютере Module МВ 77.07, который был разработан в российском научно-техническом центре «Модуль» на базе одного из наиболее производительных российских процессоров архитектуры ARM. Также мы рассмотрим установку Linux-дистрибутива Debian на этот микрокомпьютер.
Читать дальше →
Всего голосов 119: ↑106 и ↓13+93
Просмотры107K
Комментарии 194

Собираем и анализируем логи с помощью Lumberjack+Logstash+Elasticsearch+RabbitMQ

Блог компании «Maxifier Development»
Добрый день.

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

Поэтому, когда случаются проблемы и надо найти ошибку в логах какого-нибудь сервиса, все зависит от того, насколько силен админ и насколько программисты знают, что искать. А еще от того, отработал ли logrotate и не грохнул ли он старые данные…

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

Почему? Maxifier представляет собой SaaS-продукт с клиентами в США, Бразилии, в нескольких странах Европы и в Японии, так что у нас около сотни серверов, раскиданных по всему миру. Для оперативной работы нам необходимо иметь удобный доступ к логам наших приложений и быстрый поиск ошибок в них в случае проблем на сторонних сервисах/api, появления некорректных данных т.д. Кстати, похожей системой сборки логов пользуются The Guardian (одни из наших клиентов).

После нескольких случаев сборки логов Rsync-ом со множества серверов мы задумались над альтернативой, менее долгой и трудоемкой. И недавно мы разработали свою систему сборки логов для разных приложений. Поделюсь собственным опытом и описанием, как это работает.
image
Читать дальше →
Всего голосов 35: ↑31 и ↓4+27
Просмотры41K
Комментарии 19

Универсальный способ создания пакетов, для различных дистрибутивов GNU Linux

Ruby
Tutorial
Различные дистрибутивы предоставляют свои утилиты, для сборки и установки программ.
Например в Debian/GNU Linux — это debuild и dpkg. В Red Hat Linux — rpmbuild и rpm.
Не редко нам приходится собирать пакеты самостоятельно.
Устанавливать программы через make, в обход системы управления пакетами в дистрибутивах — является дурным тоном.
В случаях, когда мы имеем исходный код, и автор программы позаботился о создании Makefile, можно использовать checkinstall.
Но бывает и так, что автор java приложения, не выкладывает ничего кроме jar файла. Или мы хотим на коленке создать какой-то пакет, и положить в репозиторий, что бы в дальнейшем устанавливать/обновлять его на множестве серверов с различными дистрибутивами. В этом нам поможет утилита под названием fpm.
В чем же ее достоинство? Она из коробки позволяет нам собирать пакеты под различные дистрибутивы и даже операционные системы.

Сейчас поддерживаются:
  • deb
  • rpm
  • solaris
  • tar
  • directories
  • Mac OS X .pkg files (osxpkg)

Читать дальше →
Всего голосов 28: ↑28 и ↓0+28
Просмотры15K
Комментарии 6

Печатаем OSM (Часть 1)

Open sourceOpenStreetMapГеоинформационные сервисы
Tutorial
Представьте себе ситуацию: неподалеку от вас случилось землетрясение, наводнение, извержение вулкана. Вы — участник OpenStreetMap, естественно, написали об этом на форуме. Следующие полдня и ночь вы вместе с другими осмерами провели за рисованием домиков, простановкой адресов, разметкой зоны разрушений и в итоге утром у вас есть подробная электронная карта района. Через полчаса за вами заедет друг и вы вместе собираетесь отвезти теплые вещи и воду пострадавшим. Как за эти полчаса — час распечатать карту, и зачем вообще пострадавшим могут понадобиться карты,

читаем под катом.
Всего голосов 48: ↑47 и ↓1+46
Просмотры29K
Комментарии 22

Автоматизируем добавление сервера в Zabbix с назначением шаблонов

Системное администрирование
Самый простой способ добавить новый сервер в Zabbix — через веб интерфейс. Засетапили новый сервер, пошли в web-морду, добавили машинку. Но, когда что-то делается руками, всегда можно забыть, особенно когда ввод серверов в строй происходит часто.
После очередного такого случая: что-то грохнулось, а потом выяснилось, что оно и не мониторилось никогда, возникла мысль автоматизировать процесс.
Читать дальше →
Всего голосов 6: ↑5 и ↓1+4
Просмотры30K
Комментарии 2

Обзор: Puppet, Chef, Ansible, Salt

Системное администрированиеIT-инфраструктура
Из песочницы

Ведущие инструменты для управления конфигурацией по разному подходят к автоматизации серверов


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

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

В этот момент средства управления конфигурациями и вступают в игру. Во многих случаях, мы управляем группами одинаковых серверов, на которых запущены одинаковые приложения и сервисы. Они размещаются на системах виртуализации внутри организации, или же запускаются как «облачные» и гостевые в удаленных ЦОД. В некоторых случаях, мы можем говорить о большом количестве оборудования, которое существует только для поддержки очень больших приложений или об оборудовании, обслуживающем мириады небольших сервисов. В любом случае, возможность «взмахнуть волшебной палочкой» и заставить их всех выполнить волю системного администратора не может быть обесценена. Это единственный путь управлять огромными и растущими инфраструктурами.

Puppet, Chef, Ansible и Salt были задуманы чтобы упростить настройку и обслуживание десятков, сотен и джае тысяч серверов. Это не значит, что маленькие компании не получат выгоды от этих инструментов, так как автоматизация обычно делает жизнь проще в инфраструктуре любого размера.
Я пристально взглянул на каждый из этих четырех инструментов, исследовал их дизайн и функциональность, и убежден, что несмотря на то, что некоторые оценены выше, чем другие, для каждого есть свое место, в зависимости от целей внедрения. Здесь я подвожу итоги моих находок.

Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Просмотры102K
Комментарии 17

Chef за 21 день. Часть третья. Chef и AWS

Блог компании EPAMAmazon Web Services
Tutorial
Здравствуй, хабраюзер. Вот и подоспела третья часть моей статьи, которая подытожит цикл (часть 1 и часть 2) статей для начинающих. Эта часть будет посвящена конкретному примеру применения Chef в облаке Amazon. Как я уже упоминал – это достаточно популярный сценарий. Для простоты понимания, будет рассмотрен случай с двумя ec2-instance (виртуальные сервера Amazon), один из которых будет выполнять роль Chef-сервера, а второй – узла.

AWS и Chef


Сразу же уточню, что запускать instance мы будем используя AWS CloudFormation. Можно было бы, конечно, запустить и управлять ними вручную, но какой смысл в такой автоматизации?
Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Просмотры16K
Комментарии 13

Два и более рабочих места на одном компьютере — бесплатное решение

Виртуализация
Из песочницы

В данной статье рассматривается идея и практическое руководство по создания многопользовательской рабочей станции (multiseat) с использованием виртуализации KVM, с возможностью удаленного управления через libvirt. С помощью этого руководства возможно создать два и более рабочих мест как в офисе, так и дома, которым может потребоваться возможность полного использования графической подсистемы компьютера. Причем можно на одном системном блоке реализовать одновременно работу различных операционных систем Windows, Linux, Mac OS X, остальное по вкусу.
Читать дальше →
Всего голосов 75: ↑67 и ↓8+59
Просмотры94K
Комментарии 53

Просмотр архивных логов apache c помощью Logstash+Elastisearch+Kibanа

Системное администрирование*nixApache
Tutorial
Recovery mode
Приветствую.

Нет так давно передо мной встала задача пробежаться по старым логам apache. Надо было сделать выборку по нескольким IP адресам, отыскать некоторые аномалии и попытки SQL-injection'ов. Логов было не так много, порядка миллиона строк и можно было спокойно всё сделать стандартным набором grap-awk-uniq-wc итд.

Поскольку я уже какое-то (больше года) время пользуюсь связкой Logstash-Elasticsearch-Kibana для анализа-просмотра всевозможных логов, то решил ей воспользоваться и в данной ситуации.

Краткое описание основных компонентов системы.

Logstash — бесплатная open-source программа на java для сбора и нормализации логов. Может принимать логи либо с локальных файлов, либо через tcp/udp порты. На момент написания статьи, разных входных (input) фильтров насчитывается 26. Есть даже входной модуль, для сбора сообщений из twitter'а или irc.

Elasticsearch — бесплатный open-source поисковый сервер основанный на Apache Lucene. Быстрый, легко настраиваемый и очень масштабируемый.

Kibana — веб-интерфейс написанный на ruby, для отображения данных из Elasticsearch. Простая настройка, но множество функций — поиск, графики, stream.

Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Просмотры45K
Комментарии 25

Собираем, парсим и отдаём логи с помощью Logstash

Системное администрирование*nix
Tutorial
Приветствую.

Так уж сложилось, что по долгу работы мне приходится много времени уделять логам. Это и участие в выработке правил и политик сбора/хранения/использования логов, это и разбор разных инцидентов и обнаружение аномалий. За сутки наши программы, сервисы и серверы генерируют ОЧЕНЬ большое количество логов. И потребность копания в логах растёт постоянно.
Мне довелось поработать с коммерческими лог-менеджмент продуктами типа ArcSight, RSA Envision, Q1 Labs. У этих продуктов есть как плюсы, так и минусы. Но в статье речь пойдёт не о них.
Речь будет о Logstash.

Что же такое Logstash? Зачем он нужен? Что он умеет?
Читать дальше →
Всего голосов 8: ↑8 и ↓0+8
Просмотры214K
Комментарии 13

Паттерны и антипаттерны Chef

Блог компании EPAM
Перевод

Предисловие от переводчика


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

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

Статья будет полезна как для видавших виды «поваров», так и для новичков.
Читать дальше →
Всего голосов 14: ↑11 и ↓3+8
Просмотры11K
Комментарии 38

Тестирование производительности и профилирование OpenStack

Блог компании Mirantis/OpenStackOpen source
Автор: Борис Павлович

Компания Mirantis с радостью анонсирует предстоящий выход нового инструмента для эталонного тестирования в составе OpenStack – Rally. Данный проект отвечает за развертывание OpenStack в конкретной конфигурации облака, тестирование его корректности, а также измерение различных параметров производительности.
Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Просмотры4.6K
Комментарии 5

Создание надёжного iSCSI-хранилища на Linux, часть 2

Настройка Linux*nixВиртуализацияХранение данныхХранилища данных
Tutorial
Часть первая

Продолжаем


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

В прошлый раз мы закончили на том, что началась синхронизация DRBD.
Если мы в качестве Primary сервера для обоих ресурсов выбрали один и тот же сервер, то после завершения синхронизации должны в /proc/drbd увидеть примерно такую картину:
# cat /proc/drbd
version: 8.4.3 (api:1/proto:86-101)
GIT-hash: 89a294209144b68adb3ee85a73221f964d3ee515 build by root@debian-service, 2013-04-30 07:43:49
 0: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate B r-----
    ns:0 nr:190397036 dw:190397036 dr:1400144904 al:0 bm:4942 lo:0 pe:0 ua:0 ap:0 ep:1 wo:d oos:0
 1: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate B r-----
    ns:0 nr:720487828 dw:720485956 dr:34275816 al:0 bm:3749 lo:468 pe:0 ua:0 ap:0 ep:1 wo:d oos:0

Самое интересное поле тут ds:UpToDate/UpToDate, означающее что и локальная и удаленная копия актуальны.

После этого переведем ресурсы в secondary режим — дальше ими будет управлять кластер:
# drbdadm secondary VM_STORAGE_1
# drbdadm secondary VM_STORAGE_2

Pacemaker


Итак, менеджер кластера.
Читать дальше →
Всего голосов 41: ↑39 и ↓2+37
Просмотры23K
Комментарии 21

Создание надёжного iSCSI-хранилища на Linux, часть 1

Настройка Linux*nixВиртуализацияХранение данныхХранилища данных
Tutorial
Часть вторая

Прелюдия


Сегодня я расскажу вам как я создавал бюджетное отказоустойчивое iSCSI хранилище из двух серверов на базе Linux для обслуживания нужд кластера VMWare vSphere. Были похожие статьи (например), но мой подход несколько отличается, да и решения (тот же heartbeat и iscsitarget), используемые там, уже устарели.

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

Вводные


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

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

Осталось хранилище. Разные брендовые решения от ведущих вендоров были отброшены по причине большой стоимости как их самих по себе, так и лицензий на синхронную репликацию. Значит будем делать сами, заодно и поучимся.

В качестве софта было выбрано:
  • Debian Wheezy + LTS ядро 3.10
  • iSCSI-таргет SCST
  • DRBD для репликации
  • Pacemaker для управления ресурсами кластера и мониторинга
  • Подсистема ядра DM-Crypt для шифрования (инструкции AES-NI в процессоре нам очень помогут)

В итоге, в недолгих муках была рождена такая несложная схема:
image
Читать дальше →
Всего голосов 40: ↑39 и ↓1+38
Просмотры53K
Комментарии 10

Прогнозы для Linux и Open source на 2014 год от Джека Уоллена. А с какими из них согласны вы?

Блог компании ТОНКOpen source
Перевод
Здравствуйте, Хабровчане!
Первым постом здесь размещу свой перевод статьи постоянного обозревателя Techrepublic и Linux.com Джека Уоллена. Она мне показалась любопытной и содержащей довольно много пищи для обсуждения.

Буду рад конструктивным комментариям профессионалов и энтузиастов по тем пунктам, которые описаны ниже: почему согласны или не согласны с утверждениями. В том числе в разрезе российской специфики, особенно по пунктам 9 и 10.


image

2013 год был знаменателен для open-source'а — он пережил много взлетов и совсем мало падений. Однако я верю, что для Linux, получившего крепкий фундамент в 2013-м, этот год станет еще лучше.

Многие из вас, возможно, уже потирают руки, ожидая очередного предсказания о всеобщем господстве Linux от его адепта. Но у меня на самом деле накопилось довольно много причин для такого громкого предсказания. Ниже я опишу 10 причин, почему я верю, что 2014-й будет знаковым для open-source'а вообще и для Linux'а в частности:

1. Open-source будет доминировать в корпоративном сегменте
Катализатором этого станет продолжающееся распространение мощной ОС Red Hat Enterprise Linux 6.5, но перспективы лежат гораздо дальше. Поскольку большие корпорации имеют высокие запросы к безопасности и гибкости своих данных, для их удовлетворения они будут переходить на open-source (особенно Linux). Большие компании также более требовательны в плане представления своих данных и совместного доступа к ним, поэтому open-source, по сути, остается единственным вариантом, который они могут избрать.

Читать дальше →
Всего голосов 57: ↑46 и ↓11+35
Просмотры35K
Комментарии 241

Зачем вам вводить пароль в sudo?

Настройка Linux*nix

Если


  • Речь идёт о личном рабочем окружении. 1
  • Вы недостаточно параноик, чтобы довести дело до конца:
    • Все программы работают от вашего пользователя. 2
    • /home монтируется без noexec. Хотя это почти не помогает и очень не удобно в большинстве случаев, но если у вас так — у вас, как у неплохого параноика, есть перспектива далеко зайти этим путём.
  • Вы регулярно администрируете систему из-под своего пользователя (с помощью того же sudo). 3

Рабочее окружение

Рабочее окружение — это тот потенциальный источник заразы, который мы хотим изолировать от остальной системы. Помимо защиты от целенаправленного злодейства, понижение привилегий в нём (то что называется «не работайте от root») спасает от жестоких ошибок и плохо написанных программ, которых может не простить root.

Собственно, не спрашивающий пароля sudo не мешает защите от опечаток (если, конечно, вы не имеете неприятного рефлекса сразу перепечатать эту несработавшую конструкцию с sudo), софт также обычно не приучен самостоятельно использовать sudo, так что единственное, от чего «уточнение» пароля помогает — злостные вирусы и злоумышленники, ставящие своей целью установить всю вашу систему на колени.
Читать дальше →
Всего голосов 27: ↑12 и ↓15-3
Просмотры22K
Комментарии 20

Несколько бесплатных книг по программированию на русском языке

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


Александр Круглов — Ruby — Эту книгу можно использовать как справочник и как отдельный учебник по Ruby. Для изучающих Rails считаю исчерпывающим руководством по языку. Версия языка изучаемая в этой книге — 2.0.0p247.

Слова автора: Не думайте, что прочитав эту книгу вы сразу станете писать высоконагруженные приложения. Максимум чему вы научились — это программирование небольших скриптов, способных немного облегчить вашу повседневную работу. Еще множество необходимых знаний о стиле кода, тестировании и отладке, архитектуре и оптимизации (и т.д.) отделяет вас от гордого звания программиста. Могу лишь надеяться, что удовольствия от работы с Ruby поможет преодолеть все эти препятствия и сообщество получит еще одного единомышленника. Github репозиторий

Читать дальше →
Всего голосов 93: ↑86 и ↓7+79
Просмотры131K
Комментарии 43

Информация

В рейтинге
Не участвует
Откуда
Bielefeld, Nordrhein-Westfalen, Германия
Дата рождения
Зарегистрирован
Активность