• Быстрый переход
  • Рубрики
  • Свежие записи
  • Метки
  • Архивы
  • Реклама 1
  • Реклама 2
  • Рейтинг@Mail.ru

    Добро пожаловать! Ваш IP-адрес: ec2-54-80-10-56.compute-1.amazonaws.com

    Linux

    Объединение Bonding сетевых интерфейсов в Linux Debian

    Данной статье описанны возможности объединения сетевых интерфейсов для отказоустойчивости и увеличения пропускной способности. Называется это в Linux - BONDING интерфейсов, в windows - Teaming интерфейсов.

    Типы агрегации (объединения) интерфейсов в Linux

    mode=0 (balance-rr)
    Этот режим используется по-умолчанию, если в настройках не указано другое. balance-rr обеспечивает балансировку нагрузки и отказоустойчивость. В данном режиме пакеты отправляются "по кругу" от первого интерфейса к последнему и сначала. Если выходит из строя один из интерфейсов, пакеты отправляются на остальные оставшиеся.При подключении портов к разным коммутаторам, требует их настройки.

    mode=1 (active-backup)
    При active-backup один интерфейс работает в активном режиме, остальные в ожидающем. Если активный падает, управление передается одному из ожидающих. Не требует поддержки данной функциональности от коммутатора.

    mode=2 (balance-xor)
    Передача пакетов распределяется между объединенными интерфейсами по формуле ((MAC-адрес источника) XOR (MAC-адрес получателя)) % число интерфейсов. Один и тот же интерфейс работает с определённым получателем. Режим даёт балансировку нагрузки и отказоустойчивость.

    mode=3 (broadcast)
    Происходит передача во все объединенные интерфейсы, обеспечивая отказоустойчивость.

    mode=4 (802.3ad)
    Это динамическое объединение портов. В данном режиме можно получить значительное увеличение пропускной способности как входящего так и исходящего трафика, используя все объединенные интерфейсы. Требует поддержки режима от коммутатора, а так же (иногда) дополнительную настройку коммутатора.

    mode=5 (balance-tlb)
    Адаптивная балансировка нагрузки. При balance-tlb входящий трафик получается только активным интерфейсом, исходящий - распределяется в зависимости от текущей загрузки каждого интерфейса. Обеспечивается отказоустойчивость и распределение нагрузки исходящего трафика. Не требует специальной поддержки коммутатора.

    mode=6 (balance-alb)
    Адаптивная балансировка нагрузки (более совершенная). Обеспечивает балансировку нагрузки как исходящего (TLB, transmit load balancing), так и входящего трафика (для IPv4 через ARP). Не требует специальной поддержки коммутатором, но требует возможности изменять MAC-адрес устройства.

    Подробнее...

    Установка MongoDB на Linux Debian

    MongoDB (от англ. humongous — огромный) — документо-ориентированная система управления базами данных (СУБД) с открытым исходным кодом, не требующая описания схемы таблиц. Написана на языке C++.

    MongoDB, по мнению разработчиков, должна заполнить разрыв между простыми хранилищами данных типа «ключ-значение» (быстрыми и легко масштабируемыми) и большими РСУБД (со структурными схемами и мощными запросами).

    Возможности MongoDB:

    Документо-ориентированное хранилище (простая и мощная JSON-подобная схема данных)
    Достаточно гибкий язык для формирования запросов
    Динамические запросы
    Полная поддержка индексов
    Профилирование запросов
    Быстрые обновления «на месте»
    Эффективное хранение двоичных данных больших объёмов, напр., фото и видео
    Журналирование операций, модифицирующих данные в БД
    Поддержка отказоустойчивости и масштабируемости: асинхронная репликация, набор реплик и шардинг
    Может работать в соответствии с парадигмой MapReduce

    MongoDB vs MySQL

    По многочисленным тестам производительности, которые можно найти на просторах интернета, были сделаны выводы, что главное преимущество MongoDB перед MySQL проявляется во время записи и обновления данных в БД, примерно превосходя MySQL в 1,5 раза.
    Во время чтения данных, мнения и тесты расходятся, особенно если учитывать нагрузку, объемы и т.д.

    Подробнее...

    Установка MegaCli на Linux Debian из репозиториев!

    Для начало нужно добавить в /etc/apt/sources.list данный репозиторий!

    deb http://hwraid.le-vert.net/debian wheezy main

    Далее скачиваем и добавляем ключ

    wget -O - http://hwraid.le-vert.net/debian/hwraid.le-vert.net.gpg.key | sudo apt-key add -
    После чего обновляем пакеты Debian:

    apt-get update
    ----------------------------
    Reading package lists... Done

    Далее ставим необходимый пакет megacli

    apt-get install megacli

    Проверяем что получилось!!
    megacli -V

    MegaCLI SAS RAID Management Tool Ver 8.07.14 Dec 16, 2013

    Установка ElasticSearch на LInux Debian или Ubuntu

    Для начало нам нужно обновить список доступных пакетов

    # apt-get update

    Далее, мы должны установить среду выполнения Java. Есть два варианта здесь.

    Установите OpenJDK выполнения поставляемый Ubuntu.
    Установите Elasticsearch рекомендуется Java Runtime, Oracle Java.

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

    Начнем установку OpenJDK:

    # apt-get install openjdk-7-jre-headless -y

    Проверяем как установилось java:

    # java -version

    java version "1.7.0_45"
    Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
    Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

    Все нармально!
    Далее ставим не посредственно Elasticsearch:

    Скачиваем с официального сайта deb пакет и устанавливаем

    # wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-1.0.1.deb
    sudo dpkg -i elasticsearch-1.0.1.deb


    Запускаем сервис:

    # service elasticsearch start
    [ ok ] elasticsearch is running

    Проверяем:
    #curl http://localhost:9200
    или в Вашем браузере http://ваш_ip:9200

    Как создать (виртуальный диск) ramdisk Linux?

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

    Собственно, в ядре должна быть поддержка tmpfs, и если вы (или авторы вашего дистрибутива) не любители усложнять себе жизнь, она там должна быть.
    Создаём новую точку монтирования:

    # mkdir /mnt/tmpfs/
    # chmod 777 /mnt/tmpfs/

    и даём все права на использование. После этого даём команду (от рута или через sudo):
    # mount -t tmpfs -o size=xxxM tmpfs /mnt/tmpfs/
    или
    $ sudo mount -t tmpfs -o size=xxxM tmpfs /mnt/tmpfs/
    где xxxM есть размер RAMdisk в Мегабайтах.
    Будьте осторожны и не размахивайтесь слишком широко: если вы попросите создать ramdisk больше, чем имеете оперативной памяти, система начнёт сгружать всё в swap-файл и дела пойдут очень медленно и грустно.

    Если же вы хотите изменить размер ramdisk - это просто:
    # mount -o remount -o size=yyyM /mnt/tmpfs/
    или
    $ sudo mount -o remount -o size=yyyM /mnt/tmpfs/
    При этом содержимое диска не пропадёт, но его размер тут же увеличится (при уменьшении также ничего не пропадёт, если только данных не больше, чем диск).

    Добавление программ в автозапуск в Linux Debian

    В данном примере описывается как добавить в автозагрузку nginx? По аналогии добавляем и другие программы!
    Для начало нужно задать права на исполнение файла
    # chmod +x /etc/init.d/nginx
    После заносим в автозагрузку:
    # /usr/sbin/update-rc.d -f nginx defaults

    Как установить DNS инструменты dig, nslookup на Linux Debian?

    Установив не давно новую чистую систему Linux Debian, наткнулся на такую проблему что не могу проверить с помощью команды dig и nslookup работоспособность одного сайта!
    Не много по гууглив нашел что нужно ставить днс пакет в котором все эти утилиты есть!

    Для этого тостаточно иметь в /etc/apt/sources.list

    deb http://ftp.de.debian.org/debian/ wheezy main
    deb-src http://ftp.de.debian.org/debian/ wheezy main
    deb http://ftp.de.debian.org/debian/ wheezy-updates main
    deb-src http://ftp.de.debian.org/debian/ wheezy-updates main


    В зависимости от вашей версии Debian:
    Далее:

    # sudo apt-get install dnsutils

    Проверяем dig или nslookup

    Установка MegaCLI на Linux Debian

    # apt-get install -y alien unzip

    Далее скачиваем с официального сайта архив с программой

    http://www.lsi.com/downloads/Public/MegaRAID Common Files/8.00.48_Linux_MegaCLI.zip

    В архиве будут два rpm пакета:
    Lib_Utils-1.00-08.noarch.rpm
    MegaCli-8.01.06-1.i386.rpm

    Расспакавываем файл:

    rpm2cpio MegaCli-8.01.06-1.i386.rpm | cpio -idmv
    ./opt/MegaRAID/MegaCli/MegaCli
    ./opt/MegaRAID/MegaCli/MegaCli64
    rpm2cpio Lib_Utils-1.00-08.noarch.rpm| cpio -idmv
    ./opt/lsi/3rdpartylibs/LGPLLicenseV2.txt
    ./opt/lsi/3rdpartylibs/libsysfs.so.2.0.2
    ./opt/lsi/3rdpartylibs/src/sysfsutils-2.2.0.tar.gz
    ./opt/lsi/3rdpartylibs/x86_64/libsysfs.so.2.0.2

    Копируем MegaCLI в /opt:
    mkdir -p /opt/MegaRAID/MegaCli
    cp ./opt/MegaRAID/MegaCli/* /opt/MegaRAID/MegaCli/

    cp ./opt/lsi/3rdpartylibs/x86_64/libsysfs.so.2.0.2 /usr/lib/

    Все новые скрипты и бинарные файлы нужно сделать исполняемыми:
    chmod 755

    Сделаем символьные ссылки в /usr/bin для MegaCLI:
    ln -s /opt/MegaRAID/MegaCli/MegaCli64 /usr/bin/MegaCli

    MegaCli -v
    MegaCLI SAS RAID Management Tool Ver 8.01.06 Dec 23, 2010
    (c)Copyright 2010, LSI Corporation, All Rights Reserved.

    Exit Code: 0x00

    Далее запускаем:

    megacli -LDInfo -Lall -Aall — информация о контроллере

    megacli -PDList -Aall — состояние всех дисков

    или так

    megacli -PDList -aAll | egrep "Enclosure Device ID:|Slot Number:|Inquiry Data:|Error Count:|state"

    Быстрая установка браузера Firefox на Debian 7 wheezy

    Debian по умолчанию поставляется с Iceweasel веб-браузер, а не Firefox. Хотя рекомендуется использовать Iceweasel у вас может быть необходимость в установке Firefox здесь простой способ, как установить Firefox на Debian хриплый, используя репозиторий Debian импорта Linux Mint в. Для начало редактируем /etc/apt/sources.list и добавьте следующую строку:

    deb http://packages.linuxmint.com debian import
    Далее обновляемся:

    # apt-get update

    Далее устонавливаем

    # apt-get install firefox

    Установка Nginx в Debian

    NGINX - это простой, надежный и быстрый сервер, который не перегружен функциями. Применение веб-сервера NGINX рационально, преимущественно, для статических веб-сайтов, а также в качестве прокси-сервера перед динамическими веб-сайтами.

    Достоинствами NGINX являются:

    Эффективное обслуживание веб-трафика в условиях высокой конкурентности, т.е. большого количества одновременных TCP-соединений и HTTP-запросов;

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

    • Максимально эффективная работа с многопроцессорными системами;
    • Функции масштабируемости на мультипроцессорных компьютерах;
    • Кроссплатформенность, т.е. работа на большинстве существующих аппаратных платформах и операционных системах;
    • Минимальное потребление ресурсов центрального процессора (CPU), а также памяти и системы ввод/вывода (I/O) на компьютерах;
    • Отличный баланс между простотой и гибкостью применяемой конфигурации.
    • Управляя более 15% всех интернет-доменов, NGINX стал стандартным инструментом для создания быстрых и масштабируемых веб-сайтов.

    NGINX полностью поддерживает протоколы HTTP/1.1, SPDY/2, WebSocket, FastCGI, uwsgi и SCGI, и поэтому позволяет подключать пользователей к таким популярным приложениям, как Joomla, WordPress, Magento, Drupal и других, размещенных на одном сервере или в сети для повышения производительности и большой масштабируемости.

    Благодаря своей компактной и предсказуемой памяти и используемого CPU, NGINX чрезвычайно популярное веб-программное обеспечение для использования во всех типах облачных сред, обслуживающий уже более 45% веб-сайтов, размещенных на Amazon AWS.

    NGINX обеспечивает простую интеграцию с применением таких рамок, как Rails, Node.js, JBoss, Django или Zend. Заменяя или дополняя конфигурацию устаревших приложений поставляемых вместе с сервером, NGINX позволяет масштабировать и создавать веб-сайты без покупки лишних аппаратных средств.

    Основные функции HTTP-сервера:
    Акселерированное обратное проксирование с применением кэширования, простейшее распределение нагрузки и устойчивость к отказам;

    Акселерированная поддержка FastCGI, uwsgi, SCGI и memcached серверов с кэшированием;

    Обслуживание статических запросов, индексных файлов, автоматическое создание списка файлов, а также кэш дескрипторов открытых файлов;

    Модульность, фильтры, включая сжатие (gzip), докачка (byte-ranges), chunked ответы, SSI-фильтр, XSLT-фильтр, конвертация изображений; несколько подзапросов на одной странице, которые могут обрабатываться в SSI-фильтре через прокси или FastCGI и выполняться параллельно;

    Поддержка SSL и расширения TLS SNI.

    Другие возможности HTTP-сервера:

    • Большая гибкость конфигурации;
    • Виртуальные серверы, определяемые по IP-адресу и имени;
    • Обновление и изменение настроек исполняемого файла без перерыва в обслуживании клиентов;
    • Поддержка pipelined и keep-alive соединений;
    • Ограничение количества одновременных соединений и запросов с одного адреса;
    • Выполнение различных функций в зависимости от адреса клиента;
    • Ограничение доступа в зависимости от адреса клиента и HTTP Basic авторизации;
    • Проверка HTTP referer;
    • Быстрая ротация логов, настройка форматов логов, а также буферизованная запись в лог;
    • Специальные страницы для ошибок 3xx-5xx;
    • Модуль rewrite: изменение URI с помощью регулярных выражений;
    • Методы PUT, DELETE, MKCOL, COPY и MOVE;
    • FLV и MP4 стриминг;
    • Встроенный Perl;
    • Ограничение скорости выдачи ответов;

    Подробнее...