Pull to refresh
0
0
Maksim Malchuk @mmalchuk

Cloud Architect

Send message

Организация инфраструктуры с помощью Kubernetes и Helm. Видеозаписи докладов с Kubernetes meetup 22 марта 2017

Reading time1 min
Views11K
image

22 марта в Avito прошёл второй митап московского Kubernetes коммьюнити, а сегодня мы делимся материалами встречи. Денис Измайлов сделал обзор последних изменений инструмента, Евгений Ольков и Павел Селиванов рассказали про то, как используется Kubernetes, соответственно, в Avito и Центре Недвижимости от Сбербанка, а Сергей Орлов сделал короткий доклад про пакетный менеджер Helm. Приятного просмотра!
Total votes 29: ↑29 and ↓0+29
Comments1

Осваиваем Python. Унция 1. Типы данных.

Reading time6 min
Views80K
image
Продолжаю своё начинание. Данная статья является логическим продолжением первой. Было приятно читать ваши комментарии. Я надеялся, что данный цикл статей окажется для кого-то полезным, но совершенно не предполагал, что заинтересовавшихся будет довольно большое количество. Это заставляет относится к делу серьёзнее и ответственнее.
Без лишних слов, сразу к делу.
Читать дальше →
Total votes 54: ↑45 and ↓9+36
Comments55

Три дня, которые потрясли нас в 2013

Reading time11 min
Views74K


«Если у вас есть сомнения, авария это или нет — то это авария!»
(с) Мудрость предков

Большие сбои в онлайн-проектах происходят редко. А в больших проектах — ещё реже. Конечно, чем сложнее система, тем выше вероятность ошибки. Один час простоя крупных систем, особенно соцсетей, обходится недёшево, и потому в больших проектах прикладывается очень много усилий по предотвращению аварий и снижению негативного эффекта для пользователей. Но иногда то ли звёзды складываются в особенную комбинацию, то ли закон Мёрфи обретает реальную силу, и большие аварии всё же происходят. В истории Одноклассников крупнейший сбой произошёл 4 апреля 2013 года: в течение трёх дней проект был целиком или частично неработоспособен. О том, что же тогда произошло, по каким причинам и как мы с этим боролись, будет наш рассказ.
Читать дальше →
Total votes 78: ↑68 and ↓10+58
Comments39

Тюним память и сетевой стек в Linux: история перевода высоконагруженных серверов на свежий дистрибутив

Reading time10 min
Views94K
image

До недавнего времени в Одноклассниках в качестве основного Linux-дистрибутива использовался частично обновлённый OpenSuSE 10.2. Однако, поддерживать его становилось всё труднее, поэтому с прошлого года мы перешли к активной миграции на CentOS 7. На подготовительном этапе перехода для CentOS были отработаны все внутренние процедуры, подготовлены конфиги и политики настройки (мы используем CFEngine). Поэтому сейчас во многих случаях миграция с одного дистрибутива на другой заключается в установке ОС через kickstart и развёртывании приложения с помощью системы деплоя нашей разработки — всё остальное осуществляется без участия человека. Так происходит во многих случаях, хотя и не во всех.

Но с самыми большими проблемами мы столкнулись при миграции серверов раздачи видео. На их решение у нас ушло полгода.
Читать дальше →
Total votes 110: ↑104 and ↓6+98
Comments73

Исследуем OpenWRT: чем отличаются образы uImage и sysupgrade

Reading time11 min
Views52K

В комментариях к статье “Прошиваем роутер Upvel UR-313N4G на OpenWRT” между вашим покорным слугой и уважаемым Maysoft завязался спор насчет различий в структуре образов uImage и sysupgrade прошивки OpenWRT. Я обещал Maysoft разобраться в проблеме, и вот перед вами эта статья.

Как известно, в каталоге загрузок OpenWRT доступны, по большей части, прошивки двух типов — uImage и sysupgrade, например:

openwrt-15.05-rc3-ramips-rt305x-dir-320-b1-initramfs-uImage.bin
openwrt-15.05-rc3-ramips-rt305x-dir-320-b1-squashfs-sysupgrade.bin

Официальный FAQ пишет об их различиях весьма скупо:
What is the difference between the different image formats?
a factory image is one built for the bootloader flasher or stock software flasher
a sysupgrade image (previously named trx image) is designed to be flashed from within openwrt itself
The two have the same content, but a factory image would have extra header information or whatever the platform needs. Generally speaking, the factory image is to be used with the OEM GUI or OEM flashing utilities to convert the device to OpenWrt. After that, use the sysupgrade images.

Согласно документации, содержание образов идентично, за исключением того, что в образе factory присутствуют дополнительные заголовки, чтобы этот образ можно было прошить через Web-интерфейс оригинальной прошивки.
Читать дальше →
Total votes 19: ↑19 and ↓0+19
Comments14

Чистим домашний интернет от очень назойливой рекламы (Ad's blocker для OpenWRT)

Reading time2 min
Views120K


Дело было вечером, делать было нечего... © С. В. Михалков
Навеяно публикацией «Как я bind`ом вирусы искал…», а конкретно этой веткой комментариев. Надеюсь, не поздно размещаю.

Сидел я и думал, телевизор Samsung, WinPhone, (а впоследствии может кофеварка и пылесос) показывают суперназойливую рекламу, надо с этим чтото делать, и раз в WinPhone и телевизор(кофеварку, пылесос) плагина AdBlock нету, то он должен быть там где ходит их трафик, на роутере.
Читать дальше →
Total votes 42: ↑41 and ↓1+40
Comments49

Прошиваем роутер Upvel UR-313N4G на OpenWRT

Reading time12 min
Views48K


Как-то раз, еще до скачков курса доллара, мне понадобился очень дешевый SOHO-роутер. Требования — 5 портов, NAT и Wi-Fi, не помешал бы и USB. Выбор пал на Upvel UR-313N4G, который в те времена стоил в Citilink’е смешные 860 рублей. Роутер был куплен и выполнял свои обязанности вполне сносно, стабильно зависая раз в неделю. Кроме того, не работал проброс портов, ну и что, он не больно сильно был нужен. К тому же в Web-интерфейсе был доступ к командной строке, так что в критичных случаях можно было просто написать iptables -A PREROUTING -j DNAT и наслаждаться работающими портами до следующего зависания. Впрочем, большего я от коробочки за такую смешную цену я не ждал. Потом кое-что в моей жизни поменялось и роутер лег на дальнюю полку, а его заменил TP-Link TR-ML3420. Надо сказать, TR-ML3420 отлично работает под OpenWRT и никаких проблем с ним не возникает, а вот роутеры Upvel официально не поддерживаются OpenWRT чуть менее, чем полностью (из всего модельного ряда — только два роутера).
Когда стало ясно, что Upvel UR-313N4G мне уже не жалко, я решил попробовать поставить на него OpenWRT. Основная задача — заставить работать 3G-модем Megafon M21-4, он же Huawei E3531. Надо сказать, что опыт прошивки роутеров на OpenWRT у меня был, как через Web-интерфейс, так и через UART, но он сводился к “выберите файл для прошивки и молитесь” или “наберите эти три команды в консоли и молитесь”. На этот раз мне хотелось разобраться, почему вводятся именно такие команды, ну и вообще получить общее представление об архитектуре MIPS, с которой я до этого не работал.

Тут, конечно, нужно отметить, что читать этот материал отцам, разрабатывающим Gigabit Ethernet карты на FPGA и пишущим видеодрайверы для Mali-400, будет, наверное, смешно — они все это и так давно знают.
Читать дальше →
Total votes 23: ↑22 and ↓1+21
Comments40

Криптовалюта Dash («Digital Cash») — децентрализованный стартап

Reading time10 min
Views14K
Я продолжаю анализ основных преимуществ проекта Dash (Текущий рейтинг по капитализации: Криптовалюта №4 и Анонимная криптовалюта №1). Ранее мной уже были рассмотрены Инвестиционные аспект и Технологический аспект (в части обеспечение анонимных платежей). Теперь я хотел бы коснуться вопроса общей стратегии и менеджмента, которые задают динамику развития и, в конечном счёте, определяют судьбу любого проекта.

РЕЦЕПТ УСПЕХА

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

image

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

Врядли возможно вывести единый для всех «рецепт успеха». Я и не собираюсь этого делать, моя цель в другом — я хочу предложить вам на примере Dash взглянуть на криптовалютный проект в терминах классического стартапа. Да, я считаю что и Dash, и Bitcoin, и остальные альткоины продолжают находиться в стадии стартапов. Функционирование в режиме стартапа — это разработка новой технологии, которая пока ещё не востребована обществом (инвесторы и энтузиасты не в счёт), но разработчики всячески стараются создать функционал, соответствующий потребностям обычных людей, создать на базе этих потребностей новый рынок и смежные сервисы, сохранить за собой значительную часть этого нового рынка и в результате добиться широкого практического применения их технологии в обозримом будущем.
Читать дальше →
Total votes 8: ↑6 and ↓2+4
Comments10

Запускаем источник пассивного дохода на Raspberry Pi: Мастернода Dash

Reading time4 min
Views61K
Чем привлекателен запуск Мастерноды Dash в качестве источника пассивного дохода для держателей криптовалюты Dash?

Во-первых, Мастерноду можно запустить даже на простейшем микрокомпьютере Raspberry Pi, очень маленьком и дешёвом (альтернативное решение — её можно запускать на выделенном сервере или VPS).
А во-вторых, владелец Мастерноды получает вознаграждение за поддержание работы сети Dash, которое на текущий момент приносит 17% годовых (в DASH).



Читать дальше →
Total votes 25: ↑17 and ↓8+9
Comments19

Оптимизация образов Docker

Reading time9 min
Views65K
Образы Docker могуть быть очень большими. Многие превышают 1 Гб в размере. Как они становятся такими? Должны ли они быть такими? Можем ли мы сделать их меньше, не жертвуя функциональностью?

В CenturyLink Lab мы много работали над сборкой различных docker-образов в последнее время. Когда мы начали экспериментировать с их созданием, мы обнаружили, что наши сборки очень быстро раздуваются в объеме (обычным делом было собрать образ, который весит 1 Гб или больше). Размер, конечно, не столь важен, если мы говорим про образы по два гига, лежащие на локальной машине. Но это становится проблемой, когда вы начинаете постоянно скачивать/отправлять эти образы через интернет.

Я решил, что стоит копнуть поглубже и разобраться с тем, как работает процесс создания docker-образов, чтобы понять, что можно сделать для уменьшения размера наших сборок.
Читать дальше →
Total votes 41: ↑41 and ↓0+41
Comments18

Docker. Best practices на примере образа Oracle xe 11g

Reading time5 min
Views37K


Docker за последнее время стал очень популярен за счет своей производительности, отказоустойчивости и, главное, простоты.

Сегодня можно найти тысячи образов в hub.docker.com. За счет своей простоты в создании образов, буквально за пол часа можно начать вносить свой вклад.

Но многие забывают о best practices, и за счет этого docker hub наполнился огромным количеством не самых лучших образов.

В этой статье я хочу описать на сколько просто и полезно создавать образы используя Best Practices на примере.
Читать дальше →
Total votes 26: ↑22 and ↓4+18
Comments37

Свой облачный хостинг за 5 минут. Часть 1: Ansible, Docker, Docker Swarm

Reading time11 min
Views137K
Cloud hosting

Привет Хабр! Последние 1.5 года я работал над своим проектом, которому был необходим надежный облачный хостинг. До этого момента я больше 10 лет занимался веб-программированием и когда я решил построить свой хостинг у меня были относительно поверхностные знания в этой области, я и сейчас не являюсь системным администратором. Все что я буду рассказывать может выполнить обычный программист в течение 5 минут, просто запустив набор сценариев для Ansible, которые я подготовил специально для вас и выложил на GitHub.
Читать дальше →
Total votes 64: ↑63 and ↓1+62
Comments42

Пусть роится Docker по всему кластеру на Raspberry Pi

Reading time5 min
Views46K


От переводчика: Ссылка на эту статью была опубликована в последней официальной рассылке Docker. Думаю, я не один интересуюсь одновременно и Raspberry Pi и Docker (Swarm), поэтому предлагаю вашему вниманию перевод,

В этом посте мы расскажем насколько легко можно установить Swarm на ваших Raspberry Pi и настроить на них Swarm кластер с помощью Docker Machine.
Читать дальше →
Total votes 19: ↑16 and ↓3+13
Comments8

Visual Studio Code – редактор кода для Linux, OS X и Windows

Reading time8 min
Views255K
За свою долгую историю существования Microsoft выпустил немало инструментов разработки. Но так уж сложилось что на слуху у всех только лишь Visual Studio – большая и мощная IDE «комбайн» предназначенная для всего и вся. Развивается этот продукт уже более двух десятков лет и вобрал в себя самые разные функции. Многим этот инструментарий нравится и иногда даже задавали вопрос – будет ли перенесен Visual Studio на другие платформы. На что чаще всего получали ответ нет. Наверное, понятно почему, в целом такое портирование будет дорогим и неоправданно сложным, уж очень много всего в этой IDE завязано на Windows.

И вот, этой весной для многих неожиданностью было то что Microsoft представил новый продукт под названием Visual Studio Code, да еще и работающий сразу на трех платформах, Linux, OS X и Windows. Не замахиваясь на все функции полноценной IDE, внутри Microsoft решили переосмыслить подход, по которому строится основной инструментарий программиста и начали с самого главного – редактора кода. Visual Studio Code это именно редактор, но при этом обладающий функциями IDE, полагающийся на расширения.



Уже сейчас вы можете использовать Visual Studio Code для создания веб-проектов ASP.NET 5 или Node.js (в чем-то даже удобнее чем в «взрослой» Visual Studio), использовать различные языки, такие как JavaScript, TypeScript, C#, работать с пакетными менеджерами npm, скаффолдингом yeoman и даже осуществлять отладку. Плюсом ко всему будет отличный «интеллисенс», поддержка сниппетов кода, рефакторинг, навигация, многооконность, поддержка git и многое другое.
Читать дальше →
Total votes 45: ↑33 and ↓12+21
Comments46

36 млн запросов в час, 10000+ постоянно работающих клиентов, на одном сервере, nginx+mysql

Reading time5 min
Views114K
Сложилась ситуация, что участвую в проекте, который работает с достаточно большой нагрузкой. Как уже написал — 36 млн запросов в час. Я много чего прочитал и перепробовал за последний месяц, настраивая сервер; хотелось бы просто сжато и компактно выдать тезисно то, что работает хорошо в такой конфигурации.

Первое, что я заметил — множество советов как все настроить под большую нагрузку. Читайте их внимательно, обычно в тексте найдете, что речь про «высокую нагрузку» в 15-20 тысяч клиентов в сутки. У нас клиентов примерно миллион, активных, ежедневных.

У нас нет денег и мы все делаем за свой счет, поэтому экономим. Итог — весь миллион клиентов обслуживается на одном сервере, вот на таком — EX-60 на hetzner.
Читать дальше →
Total votes 111: ↑96 and ↓15+81
Comments102

На Кипре с пятью симками: чей роуминг дешевле

Reading time9 min
Views33K


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

Отправляясь в отпуск на Кипр, я решил поэкспериментировать не только в задержке дыхания под водой во время фридайвинга, но и сравнить заодно SIM-карты разных операторов, положить на баланс каждого 700 рублей и совершить ряд исходящих и входящих звонков. И выяснить в итоге, с кем из операторов я «протяну» дольше. Отчет получится довольно объёмный, но того требует избранный мной подход к эксперименту.

Читать дальше →
Total votes 122: ↑117 and ↓5+112
Comments125

Как я выиграл суд с EMS Почта России

Reading time10 min
Views203K
Как я выиграл суд с EMS.
Итак, как было обещано в вопросе habrahabr.ru/qa/19545, я публикую свой опыт по подаче иска к «EMS – Почта России», который завершился положительно для меня. Впрочем, обо всем по порядку.
Big Update — сегодня, 6.03.2013 получил деньги. Кафкианский процесс завершен. Ура!
Читать дальше →
Total votes 483: ↑464 and ↓19+445
Comments260

Видеокурс Fundamentals of Magento development

Reading time2 min
Views14K
image

В феврале этого года Magento сделала свой курс «Fundamentals of Magento development» бесплатным. Он стал доступен для желающих в виде видеолекций, которые до сих пор возможно просмотреть на портале training.magento.com. Курс является достаточно обширным, он охватывает все — от объяснения подхода Magento к ООП и MVC, до построения грида в adminhtml.

Читать дальше →
Total votes 26: ↑25 and ↓1+24
Comments9

Wi-Fi: неочевидные нюансы (на примере домашней сети)

Reading time14 min
Views1.4M
Сейчас многие покупают точки доступа 802.11n, но хороших скоростей достичь удается не всем. В этом посте поговорим о не очень очевидных мелких нюансах, которые могут ощутимо улучшить (или ухудшить) работу Wi-Fi. Всё описанное ниже применимо как к домашним Wi-Fi-роутерам со стандартными и продвинутыми (DD-WRT & Co.) прошивками, так и к корпоративным железкам и сетям. Поэтому, в качестве примера возьмем «домашнюю» тему, как более родную и близкую к телу. Ибо даже самые администые из админов и инженеристые из инженеров живут в многоквартирных домах (или поселках с достаточной плотностью соседей), и всем хочется быстрого и надежного Wi-Fi.
[!!]: после замечаний касательно публикации первой части привожу текст целиком. Если вы читали первую часть — продолжайте отсюда.
Читать дальше →
Total votes 234: ↑231 and ↓3+228
Comments138

Порцию серверов пожалуйста, или как начать деплоить с Opscode Chef

Reading time5 min
Views11K
Большинство русских статей по (Opscode Chef), которые мне попадались, содержали выдержки из кукбука (cookbook) и рассказ «какая классная штука Шеф». И все. Мол, смотри как я могу! А что и как с ним делать — не понятно. На официальном сайте есть подробная вики. Но в ней, ИМХО, легко заблудиться. Простого руководства «как сделать элементарное чтобы работало» нашел только в виде видео, по мотивам которого родилась эта статья.
Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments15

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity