Рубрика «linux» - 224

Внутри одно дата-центра организовать отказоустойчивость легко — есть масса инструментов и техник.
А как быть если надо организовать отказоустойчивость на базе нескольких дата-центров?

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

Смысл заключается в том чтоб в каждом дата-центре был свой NS сервер который отдает IP своего дата-центра.

Читать полностью »

Задача: запустить некоторое количество виртуальных машин с Windows на типовом Линукс-сервере.

Решение: любой современный Linux-дистрибутив, «родная» технология виртуализации KVM, Windows 2003 и настройки, описанные ниже.

Смотри также: вводную часть статьи по настройке KVM-контейнеров для FreeBSD.
Читать полностью »

image

Вчера состоялся большой и очень важный анонс для всей платформы Windows Azure. Была анонсирована широкая доступность (General Availability) платформы IaaS: виртуальных машин и виртуальных сетей в облаке Windows Azure. Статус широкой доступности для облачного сервиса означает предоставление SLA (Service Level Agreements), гарантий и поддержки со стороны Microsoft.

Кроме всего прочего, вместе с анонсом представлены две новые виртуальные машины в Windows Azure с размерами памяти в 28 Гб (4 ядра) и 56 Гб (8 ядер). Новые типы виртуальных машин с увеличенным размером памяти предназначены для проектов и решений, которым требуется большой объем памяти.

Вместе с анонсом широкой доступности платформы IaaS в Windows Azure мы предлагаем новые образы SQL Server, BizTalk Server и SharePoint с лицензирование соответствующих серверов (в том числе, долгожданное лицензирование SQL Server). На выбор предлагаются разные версии серверов, например, от Web Edition до Enterprise для SQL Server.

Мы протестировали еще больше собственных продуктов для работы на платформе IaaS и готовы гарантировать работу и осуществлять поддержку сценариев развертывания серверных решений в облаке Windows Azure. Подробный список продуктов Microsoft, которые поддерживают развертывание в облаке можно найти по этой ссылке.

Разработчикам и ИТ-профессионалам, использующим Linux для своих проектов предлагаются официальные образы openSUSE, SUSE Linux Enterprise Server 11 SP2 с поддержкой от SUSE, Ubuntu 12.04 и 12.10 от Canonical, CentOS 6.3 от OpenLogic. Кроме того, через сообщество VMDepot уже доступны более 200 готовых к развертыванию заранее настроенных образов виртуальных машин на базе Linux с десятками различных инструментов: Ruby, Django, Solr, Jenkins, Jetty, Nginx и множества других.

И, наконец, мы снижаем цены на IaaS и PaaS на 21% и 33%! Вместе с этим снижением цены, мы берем на себя обязательство перед уже существующими 200 000 и всеми будущими клиентами Windows Azure соответствовать ценам Amazon Web Services на вычислительные мощности, хранилище и каналы.

Попробовать новые функции и возможности можно прямо сейчас с помощью бесплатного 90-дневного триала. Первичную информацию о работе с виртуальными машинами на русском языке можно найти на нашем портале azurehub.ru. Поддержка дружного сообщества пользователей Windows Azure располагается на Facebook.
Читать полностью »

Добрый день, хаброчитатели.

Снова хочу поделиться с вами небольшими практическими наработками.
Совсем недавно в рамках одного проекта мне была поставлена задача подготовить для команды тестеров стандартное окружение для сборки и тестирования приложения (Jenkins + SVN + Maven).
Читать полностью »

Настраиваем RAID1+LVM (для снапшотов файловой системы) в Hetzner и ServerLoft
Завалялась у меня тут инструкция, как включить LVM для корневой файловой системы на двух популярных dedicated-хостингах: Hetzner и ServerLoft. Публикую ее здесь.

LVM в Linux используется, в частности, чтобы единомоментно создавать «замороженные» снапшоты файловой системы, которые можно потом спокойно бэкапить, в то время как сервер продолжает работать. Это очень удобная функция, особенно для серверов баз данных: можно делать инкрементный бэкап базы данных, например, при помощи файлового rdiff-backup или duplicity (в том числе на удаленный FTP-сервер, бесплатное и быстрое место на котором предоставляют многие хостеры). Что касается RAID-1 (зеркалирование на 2 дисках), то оно абсолютно необходимо на сервере, чтобы при выходе из строя одного из дисков его можно было заменить, не останавливая машину. Конечно же, нужно ставить LVM поверх RAID-1.

Но беда в том, что ни Hetzner, ни ServerLoft не позволяют включить LVM при первичном создании машины «при помощи одной лишь мышки». Вместо этого они дают возможность установить один из фиксированных образов ОС, максимум что — с включенным RAID-1. Ниже — две инструкции, как переключить такую «налитую» машину на использование LVM для корневой файловой системы, а потом — короткий пример того, как работать со снапшотами. Работать будем с Ubuntu Server 12.04 minimal (для других ОС конфигурация может отличаться).Читать полностью »

Прочитав опубликованную статью Однажды фанера, atmega, да малина, я решил поделиться своей поделкой, которая доступна (не сложна) для повторения.

При создании бота ставились следующие задачи:

  • Управление ботом по беспроводной сети
  • Наличие онлайн камеры
  • Удобство программирования
Бортовой компьютер

Для бортового компьютера был выбрал двухъядерный андроидный миникомпьютер UG-802, который имелся под рукой. В качестве операционной системы — Linaro, полноценный линукс дистрибутив, основанный на Ubuntu.

Читать полностью »

Наконец, случилось то, чего многие уже давно ждали — Nvidia взялись за ум и начали реализовывать поддержку своей технологии гибридной графики Optimus в *nix системах. На данный момент реализован только рендер на карте Nvidia с последующим пробросом изображения к карте Intel. Динамическая смена видеокарты в зависимости от нагрузки пока не поддерживается.
Читать полностью »

Недавно заинтересовался реализацией std::string в libstdc++. Не в связи с принятием нового стандарта, а чтобы разобраться. Благо требования к строковму типу почти не изменились.

Основным средством для анализа кода несомненно является метод пристального вглядывания, но чтобы сузить область вглядывывания и сделать процедуру более захватывающей можно реализовать для строки идиому «трассер» подсмотренную в «C++ Templates: The Complete Guide». Трассировка позволяет выявлять подозрительные интересные операции над строками.

Как известно, std::string это псевдоним для std::basic_string<char> и нам ничего не мешает определить std::basic_string<X>. В X можно определить несколько статических счетчиков и итерировать их в конструкторе, деструкторе и остальных методах. Выполняя разные операции над такой строкой можно будет проследить эффективность применяемых алгоритмов в терминах количества операций.
Кроме того, в g++ для std::string a(«entrails»); выражение
std::cout << reinterpret_cast<char*>(*((void**)(&a)));
выведет содержимое строки. Т.е. std::string — является, по сути, указателем на char.
Вобщем, эти и другие шокирующие поднобности под катом. Читать полностью »

Доброго времени суток уважаемые Хабропользователи!

Столкнулся в недавнем времени с необходимостью использования собственного почтового сервера. Задачи были предельно просты получить собственный сервер с более менее комфортным веб-интерфейсом как для чтения почты, так и для администрирования. Перечитав добрую часть статей на эту темы я решил остановиться на ROSA Enterprise Linux Server (RELS), о котором было написано несколько статей и на хабре. Снаружи все выглядит вполне комфортно так как решение готово к употреблению из коробки, а на самом деле пришлось встретиться с несколькими ошибками о которых было написано письмо в support, в текущем релизе это не исправлено. Так что кому интересно прошу под кат.

Читать полностью »

В какой-то момент мне потребовалось демонизировать некоторое действие на python. В сети валялась куча примеров подобной деятельности разной степени собранности. Так как в дальнейшем предполагалось использовать код демонизации в дальнейшей деятельности я решил разнести на разные части настройки и собственно демона.
В итоге файлов получилось три:

  • Родительские классы — с небольшим изменением классы взятые из интернет статей
  • Классы настройки — реакция на сигналы, реакция на команды и набор статических настроек для запуска
  • Скрипт запуска — собирает первые два в собственно демона

Дальше я попробую описать логику работы всех трех.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js