Wolf
Roman Grossi
Tobishua
Digital nomad and originality

Для начала несколько слов о том, что такое GlusterFS: как говорит Википедия, GlusterFS - это распределённая, параллельная, линейно масштабируемая файловая система с возможностью защиты от сбоев. Ну, вы поняли, да? Имеем несколько серверов (лучше, если географически распределённых) и с помощью GlusterFS строим на них распределённую файловую систему, которая будет реплицирована или распределена по ним или всё вместе (да, так тоже можно). Что имеем в итоге: возможность создания ОЧЕНЬ больших файловых хранилищ, отказоустойчивость и прочее-прочее.
В этом посте напишу некоторое введение в работу с GlusterFS на Ubuntu (или на любом другом debian-like дистрибутиве).

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

Завтра в россиюшке состоится заседание суда, на котором будет вынесено решение о блокировке Telegram (я не сомневаюсь, что суд решит заблокировать, да). Поэтому, пришло время действовать! А именно бороться партизанскими методами, тем более, что несколько апдейтов назад в Телеграм завезли настройки socks5. Теперь к делу: как установить socks5 прокси-сервер на Ubuntu 16.04.

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

SSH

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

В моём примере оповещения отправляются мне в Telegram с некоторым форматированием.

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

IPv6 Ready

Небольшой пост о том как настроить роутинг IPv6 с хоста на виртуалки в KVM с помощью virsh и чтобы при перезагрузке сети минимизировать даунтайм или вообще избежать его.

К сожалению, при рестарте сети, которая является основной для виртуального сервере не обойтись без даунтайма, но есть способы как минимизировать его или полностью избежать, а именно:

  1. Минимизируем даунтайм - перезагружаем сеть и переподключаем виртуалки с помощью bash-скрипта

  2. Избегаем даунтайма - создаём новую сеть для IPv6

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

Каждый имеет право на неприкосновенность частной жизни, личную и семейную тайну, защиту своей чести и доброго имени.
Каждый имеет право на тайну переписки, телефонных переговоров, почтовых, телеграфных и иных сообщений. Ограничение этого права допускается только на основании судебного решения. (Статья 23, Конституция РФ)
Никто не может быть принужден к выражению своих мнений и убеждений или отказу от них.
Каждый имеет право свободно искать, получать, передавать, производить и распространять информацию любым законным способом. Перечень сведений, составляющих государственную тайну, определяется федеральным законом.
Гарантируется свобода массовой информации. Цензура запрещается. (Статья 29, Конституция РФ)

С ноября в россиюшке будут блокировать VPN-сервисы и анонимайзеры за отказ блокировать сайты по спискам роскомпозора. Поэтому, пришло время написать этот пост.

Поехали!

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

Небольшой гайд для самого себя по настройке хранения сессий PHP в Redis вместо файлов.

Используемое окружение: две виртуалки на Ubuntu Server 16.04 (одна сервер приложений с nginx и php-fpm, другая - сервер для Redis).

Версия Redis: 4.0.1

Версия PHP: PHP 7.0.22

Преимущества, которые даёт использование Redis для хранения сессий:

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

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

Для начала о том, что за “IOY” такое? Это “Improvy”, но без некоторых букв, так мы решили называть всё, что относится к сайд-работе, например, наша серверная архитектура, наша внутренняя “кухня”, любые мини-сервисы, в основном предназначенные для внутреннего использования.
А теперь к теме этого поста: как устроена наша серверная архитектура. Всё это время мы арендовали выделенный сервер в Hetzner и что бы про него не говорили, это отличная компания с прекрасным качеством услуг: с февраля 2014 года по вине Hetzner у нас набежало всего около двух часов даунтайма, а проблем с железом не было ни разу (за исключением случая с перегревом жёстких дисков, что было исправлено путём установки дополнительного охлаждения в сервер за 5 минут). И всё это время мы имели развёрнутую на этом сервере систему на которую была установлена связка Nginx+Apache+MySQL+PHP и всякие дополнительные штуки вроде Memcache, Redis, Gearman и почтового сервера. Недавно было принято решение наконец-то сделать всё по уму и через libvirt разбить сервер на несколько виртуалок, каждая из которых выполняет свою конкретную функцию.

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

Следующий мануал посвящён проблеме с которой я боролся весь вечер и в итоге победил её перерыв весь Google, кучу форумов (в том числе японские) и другие источники информации, в которых не оказалось ничего полезного касательно моей проблемы.

HTTP/2

Описывать буду всё пошагово, а в конце укажу некоторые проблемы, которые пришлось решить.

Первый шаг: обновление nginx (буду рассматривать вариант при котором он уже установлен).

Для того, чтобы обновить nginx необходимо добавить репозиторий, т.к. в дефолтных репозиториях последняя доступная версия: nginx/1.8.0.

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

Некоторое время назад у меня по необъяснимой причине вызывала сложности настройка авторизации на SSH-сервере по ключам вместо паролей, поэтому, решил написать мини-мануал по настройке этого "для себя".

Всё описанное производилось на Ubuntu 15.04 (домашний ПК) и Ubuntu Server 12.04.5 LTS (удалённый сервер).

 

Для генерации ключей необходимо в терминале ввести следующую команду:

user@HomePC:~$ ssh-keygen -t rsa

 

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