Странное rancher/docker vs LXC

Решил попробовать модный в кругах девопсов кубернейт/docker. Самое простое развертывание кластера, как мне показалось — использовать rancher, который ставит кубернейт из «коробки». Да и сам запускается в контейнере docker.

Поставил на двух виртуальных машинах. Собрал, запустил. Запустил внутри приложение WordPress (nginx, php, mariadb). Немного удивился, сколько ресурсов съела эта связка. Давно у меня машинка swap на 100% не кушала. Конечно я еще не настолько влез во внутренности. Но всё же. Последний раз такой жор ресурсов с приложением по умолчанию я видел у 1С ERP 🙂

При этом, на той же самой виртуалке LXC контейнер со всем этим добром работает не напрягаясь. В общем буду разбираться. Придётся еще 16 гигов памяти прикупить 🙂

Yeastar S300. Побороли басурманов.

Просто замечательно работают братья китайцы и их импортер на просторах Родины. Не, реально хорошо.

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

Добавил LVM в первые шаги

Добавил новый материал, посвящённый работе с LVM в «первые шаги» в разделе «Материалы к курсам«.

Это не полное руководство по LVM. В частности там не указана работа со снапшотами, миграция и некоторые другие плюшки. Но данных хватит для начала работы с lvm и понимания его устройства.

Облэнерго и каменный век

Одна из причин, почему я никогда не куплю дачу — это политика областных энергетиков. Если капает дождь и немного гроза — отключай электричество всегда. (почти стихи)

На 9 Мая, приехали к тёще на дачу. Случилось немного дождя и облэнерго опустило всех в каменный век. Света нет, насос не работает — нет воды, мобилы разрядились — звони в рельсу, книгу не почитать — покупай свечи или пользуйся лучиной. С праздником дорогие клиенты!

Yeastar S, продолжаем

Продолжаем бодаться с глюками телефонной станции Yeastar S серии.

Основная ошибка была описана вот в этом сообщении.

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

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

Прошел где то месяц, IP Matika прислала нам новое обновление 30.10.0.66 . Поставил его. Все вроде заработало. После ребута станции параметры сохраняются и корректно отображаются в поле ввода.

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

Вот так вводим.
Вот такое получаем после повторного открытия шаблона.

Ждём очередного апдейта от китайцев 🙂

Fierfox опять учудил

Сегодня обнаружил, что у Fierfox отключились все аддоны.

Учитывая, что я не обновлял Fierfox, у меня возникли серьезные подозрения, что он зараза регулярно лезет на свои сервера и сверяет установленные у меня аддоны со своим загадочным списком. И если вдруг чего то не то… тупо вырубает у меня оные.

И вот верь после этого в свободный софт 🙂 не такой он оказывается свободный. В день Х могут отрубить все что угодно

Перенёс перевод параметров ядра Linux.

Со старого wiki перенёс на этот сайт перевод на русский язык конфигурационных параметров ядра Linux. Дела конечно давние, но судя по статистике, народ регулярно заходит на эти страницы.

Заодно вспомнил какие технологии были 10 лет назад. Прикольно 🙂

Осталось перенести «Курс молодого бойца». Но это очень много информации. Так что старый wiki пока поживёт.

postfix и LDAP

Почему мне нравится postfix? Вроде бы sendmail вполне хорошо справляется с обработкой почты. Чем же posfix лучше?

Я предпочитаю хранить информацию о пользователях не в локальных файлах или базах данных типа MySQL, а в LDAP серверах (OpenLDAP, Active Directory и т.п.). И лично для меня решающим фактором перехода с sendmail стало то, как postfix работает с LDAP серверами.

В качестве простого примера можно рассмотреть работу с псевдонимами.

По умолчанию postfix использует всем хорошо знакомый файл /etc/aliases.

alias_maps = hash:/etc/aliases

Но доступ к этому файлу имеет только суперпользователь. Если вы один админ на всю деревню – то особых затруднений это не вызывает. Но если админов несколько? Давать всем пароль root? Вы это серьёзно?

Вот тут то и помогает LDAP, в том числе и возможностью разграничения доступа.

Можно создать ou в котором будут храниться псевдонимы. В текущих схемах OpenLDAP на CentOS я не нашел готовую схему для почтовых псевдонимов. Поэтому для хранения информации о них решил использовать objectClass inetOrgPerson.

У inetOrgPerson три обязательных атрибута: cn, sn и mail. Сn будет использоваться в качестве имени псевдонима и части dn записи. Mail – показывает куда пересылать почту. В простейшем случае в sn можно дублировать информацию из cn.

Например, создадим ou в котором будут храниться псевдонимы:

dn: ou=Aliases,dc=company,dc=ru
objectclass: organizationalUnit
objectclass: top
ou: Aliases

И добавим туда простейший псевдоним:

dn: cn=psevdo,ou=Aliases,dc=company,dc=ru
cn: psevdo
mail: localuser
mail: anotheruser@mail.ru
objectclass: inetOrgPerson
objectclass: top
sn: psevdo

Для того, что бы postfix работал с OpenLDAP следует создать текстовый файл фильтра, например /etc/postfix/ldap_aliases.cf следующего содержания:

# или имя сервера
server_host = 1.2.3.4
# контейнер, где хранятся псевдонимы
search_base = ou=Aliases,dc=company,dc=ru
# искать во всем дереве, начиная с указанного выше контейнера
scope = sub
# запрос к LDAP серверу
query_filter = (&(objectClass=inetOrgPerson)(cn=%u))
# атрибут, который мы должны получить в ответ в результате поиска
result_attribute = mail
# Пользователь, с правами которого мы обращаемся к серверу
bind_dn = cn=proxy user,dc=company,dc=ru
# Пароль этого пользователя
bind_pw = this_is_a_password_proxy_user

В файле main.cf добавляем фильтр поиска:

alias_maps = hash:/etc/aliases, ldap:/etc/postfix/ldap_aliases.cf

Т.е. у нас остается классический вариант /etc/aliases и к нему добавляется поиск псевдонимов в LDAP сервере.

В дальнейшем разруливаем права доступа в OpenLDAP для админов, пароль root им больше не понадобится.

Кстати, поле sn можно использовать в качестве логического. Для включения выключения псевдонима.

dn: cn=psevdo,ou=Aliases,dc=company,dc=ru
cn: psevdo
mail: localuser
mail: anotheruser@mail.ru
objectclass: inetOrgPerson
objectclass: top
sn: true

Если хотим, что бы псевдоним работал – присваиваем sn значение true. Для отключения – все что угодно кроме true.

Ну и немного изменим query_filter:

query_filter = (&(objectClass=inetOrgPerson)(cn=%u)(sn=true))

Итак мы можем обратиться к LDAP с любым запросом. Попросить вернуть только нужные нам атрибуты. Как такое сделать в sendmail  я не знаю 🙁