Pull to refresh
-8
0.2
Send message

Автостопом по DevOps с Экспресс 42

Reading time4 min
Views4K
DevOps уже у всех на слуху, но DevOps-трансформация для многих еще похожа на путешествие в неизведанный космос. Сегодня хочу рассказать о партнерстве, которое помогает нам самим исследовать эту вселенную и прокладывать надежный путь для других.

Все началось в 2015-м году, когда мы, Экспресс 42, совместно с Онтико воссоздали конференцию RootConf. Формально направление конференции значилось как «Профессиональная конференция по эксплуатации и DevOps», но фактически на докладах в основном обсуждали задачи системного администрирования.

В 2018-м стало понятно, что в мире, где Dev и Ops живут в одном общем процессе, конференция только про системное администрирование уже неактуальна. Тогда мы начали постепенно менять формат конференции. Теперь наша конференция обо всем, что касается DevOps — от Kubernetes, до обсуждения изменения процессов и эффективного обмена знаниями.



Сейчас мы совместно с Программным комитетом взяли курс на все, что связано с превращением аналоговых бизнес-процессов в цифру. В программе DevOpsConf этого года упор на то, как все превращается в код и управляется в виде кода. Сообщество созрело и я уже предвкушаю, какая сильная получится конференция. Но сегодня речь о пройденном пути, о планах поговорим в другой раз.
Узнать, что еще значит 42, и получить видео
Total votes 23: ↑20 and ↓3+17
Comments1

Теория и практика стандартизации Docker-сервисов

Reading time17 min
Views6.7K

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



Источник изображения:


Как можно догадаться, Антиплагиат – как раз такая компания, где постепенно пришло понимание, что нам с микросервисами по пути. Но прежде чем начать есть кактус, мы решили его почистить и приготовить. А так как все единственно верные и правильные решения для каждого уникальны, то вместо универсальных DevOps-слайдов с красивыми стрелками мы решили просто поделиться собственным опытом и рассказать, как мы уже прошли немалую часть нашего особого пути к, я надеюсь, успеху.

Читать дальше →
Total votes 20: ↑19 and ↓1+18
Comments4

Полное практическое руководство по Docker: с нуля до кластера на AWS

Reading time39 min
Views1.6M



Содержание



Вопросы и ответы


Что такое Докер?


Определение Докера в Википедии звучит так:


программное обеспечение для автоматизации развёртывания и управления приложениями в среде виртуализации на уровне операционной системы; позволяет «упаковать» приложение со всем его окружением и зависимостями в контейнер, а также предоставляет среду по управлению контейнерами.



Ого! Как много информации.

Читать дальше →
Total votes 125: ↑124 and ↓1+123
Comments44

Нетворкинг в США для чайников. Личный опыт

Reading time4 min
Views6.8K
На прошлой неделе я была на воркшопе/конференции по unsupervised machine learning. Все мы сто раз слышали, что подобные мероприятия нужны для того чтобы себя показать и на других посмотреть. Построить нетворк и все такое. Хочу поделиться тем, как я выходила из зоны комфорта и общалась с людьми. Как училась искусству нетворкинга :)



Продолжение под катом.
Читать дальше →
Total votes 26: ↑18 and ↓8+10
Comments24

Оптимизация производительности .NET (C#) приложений

Reading time11 min
Views40K
image

Статей с подобным заголовком достаточно много, поэтому постараюсь избежать банальных тем. Надеюсь, что даже опытный разработчик найдёт здесь что-то полезное для себя. В данной статье будут рассмотрены только простые механизмы и подходы оптимизации, которые позволят применить их, затратив минимум усилий. И эти изменения не увеличат энтропию вашего кода. В статье не будет уделено внимания, что и когда нужно оптимизировать, эта статья скорее о подходе к написанию кода в целом.
Читать дальше →
Total votes 48: ↑44 and ↓4+40
Comments51

Улучшаем профиль в LinkedIn перед поиском работы

Reading time3 min
Views119K
На момент написания статьи, в социальной сети LinkedIn размещено порядка 30 миллионов вакансий от 20 миллионов компаний по всему миру. Не удивительно, что 90% рекрутеров используют LinkedIn как один из основных ресурсов поиска кандидатов.

Правильно оформленный LinkedIn профиль поможет привлечь внимание рекрутеров к вашей кандидатуре. Совместно с командой экспертов по поиску работы за рубежом Relocate.me, мы подготовили короткий гайд по оптимизации профиля LinkedIn перед поиском работы.


Читать дальше →
Total votes 19: ↑15 and ↓4+11
Comments31

На спор: прочитав до конца, вы поймёте, как и почему именно так работает GC

Reading time6 min
Views35K

Скажу сразу: я никогда не жду развёрнутого ответа на этот вопрос на собесах. Это глупо и в моем случае — эгоистично. Однако, на мой взгляд, помимо общего интереса к платформе, знать, как он работает очень полезно, т.к. это снимает целый ряд вопросов. Например, исключает вариант, когда разработчик считает, что Dispose вызывается автоматически и вызывать его самому не надо. Или же если разработчик более опытен, помогает ему автоматически, на уровне мышечной памяти писать код, приводящий к наименьшему количеству проблем.


Другой вопрос, что мне субъективно не очень нравится, как объясняется его работа. Потому, предлагаю альтернативный подход, описанный в моей книге, .NET Platform Architecture.


Если мы с вами будем досконально разбираться, почему были выбраны именно эти два алгоритма управления памятью: Sweep и Compact, нам для этого придётся рассматривать десятки алгоритмов управления памятью, которые существуют в мире: начиная обычными словарями, заканчивая очень сложными lock-free структурами. Вместо этого, оставив голову мыслям о полезном, мы просто обоснуем выбор и тем самым поймём, почему выбор был сделан именно таким. Мы более не смотрим в рекламный буклет ракеты-носителя: у нас на руках полный набор документации.


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


Читать дальше →
Total votes 27: ↑22 and ↓5+17
Comments77

Инструментарий для анализа и отладки .NET приложений

Reading time6 min
Views22K

Заглянуть «под капот» кода или посмотреть на внутреннее устройство CLR можно с помощью множества инструментов. Этот пост родился из твита, и я должен поблагодарить всех, кто помог составить список подходящих инструментов. Если я пропустил какие-то из них, напишите в комментариях.


Во-первых, я должен упомянуть, что хороший отладчик уже присутствует в Visual Studio и VSCode. Также существует множество хороших (коммерческих) профилировщиков .NET и инструментов мониторинга приложений, на которые стоит взглянуть. Например, недавно я попробовал поработать с Codetrack и был впечатлён его возможностями.


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


Total votes 50: ↑50 and ↓0+50
Comments9

Строим систему распознавания лиц на основе Golang и OpenCV

Reading time4 min
Views17K

OpenCV — библиотека, разработанная для проектов по компьютерному зрению. Ей уже около 20 лет. Я использовал ее еще в колледже и до сих пор применяю для своих проектов на C++ и Python, поскольку она имеет неплохую поддержку этих языков.

Но когда я начал изучать и использовать Go, мне стало интересно, можно ли применить OpenCV для работы с этим языком. В то время уже существовали примеры и туториалы по интеграции, но мне показалось, что они слишком сложные. Чуть позже мне в руки попался враппер, созданный командой The Hybrid Group. В этой статье я покажу, как начать с GoCV, разработав простую систему распознавания лиц с каскадами Хаара (Haar Cascades).
Читать дальше →
Total votes 27: ↑22 and ↓5+17
Comments4

Мониторинг и проверка состояния SSD в Linux

Reading time19 min
Views98K
И снова здравствуйте. Перевод следующей статьи подготовлен специально для студентов курса «Администратор Linux». Поехали!



Что такое S.M.A.R.T.?


S.M.A.R.T. (расшифровывается как Self-Monitoring, Analysis, and Reporting Technology) – это технология, вшитая в накопители, такие как жесткие диски или SSD. Ее основная задача – это мониторинг состояния.
Читать дальше →
Total votes 37: ↑34 and ↓3+31
Comments4

12 шагов по поиску удаленной работы

Reading time9 min
Views65K
Привет, меня зовут Игорь. Я десять лет работал в офисе, но год назад решился и перешел на удаленную работу. Для начала скажу, что теперь меня палкой не загонишь в офис! Перейти на удаленку было лучшее решение в моей жизни.
... Написание каркаса резюме... Анализ рынка... Анализ конкурентов... Написание резюме...
Total votes 48: ↑39 and ↓9+30
Comments111

Топ-65 вопросов по SQL с собеседований, к которым вы должны подготовиться в 2019 году. Часть I

Reading time9 min
Views404K


Перевод статьи подготовлен для студентов курса «MS SQL Server разработчик»




Реляционные базы данных являются одними из наиболее часто используемых баз данных по сей день, и поэтому навыки работы с SQL для большинства должностей являются обязательными. В этой статье с вопросами по SQL с собеседований я познакомлю вас с наиболее часто задаваемыми вопросами по SQL (Structured Query Language — язык структурированных запросов). Эта статья является идеальным руководством для изучения всех концепций, связанных с SQL, Oracle, MS SQL Server и базой данных MySQL.

Читать дальше →
Total votes 62: ↑33 and ↓29+4
Comments88

LLVM IR и Go

Reading time10 min
Views13K
В этой статье мы рассмотрим, как построить программу на Go, такую, как компилятор или статический анализатор, которая взаимодействует с фреймворком компиляции LLVM, используя язык ассемблера LLVM IR.

TL;DR мы написали библиотеку для взаимодействия с LLVM IR на чистом Go, см. ссылки на код и на пример проекта.
Читать дальше →
Total votes 26: ↑25 and ↓1+24
Comments0

Как мы пробивали Великий Китайский Фаервол (ч.1)

Reading time10 min
Views45K

Всем привет!


На связи Никита — системный инженер из компании SЕMrush. Сегодня я расскажу вам о том, как перед нами встала задача обеспечить стабильность работы нашего сервиса semrush.com в Китае, и с какими проблемами мы столкнулись в ходе ее выполнения (учитывая местонахождение нашего дата-центра на восточном побережье США).


Это будет большая история, разбитая на несколько статей. Расскажу, как все это было у нас: от полностью неработающего сервиса из Китая, до показателей работы сервиса на уровне его американской версии для американцев. Обещаю, будет интересно и полезно. Итак, поехали.



Проблемы китайского интернета


Даже самый далекий человек от специфики сетевого администрирования хотя бы раз, да слышал о Великом Китайском Фаерволе. Ууу, звучит круто, да? Но что это такое, как оно работает на самом деле — вопрос довольно сложный. В интернете можно найти много статей, посвященных этому, но с технической точки зрения устройство этого фаервола нигде не описано. Что, впрочем, неудивительно. Признаюсь сразу, по итогам года работы я не смогу сказать точно, как он работает, но смогу рассказать о своих замечаниях и практических выводах. И начнем мы со слухов об этом фаерволе.

Читать дальше →
Total votes 78: ↑73 and ↓5+68
Comments46

Бережная обработка ошибок в микросервисах

Reading time11 min
Views12K

В статье показано, как в Go реализовать обработку ошибок и логирование по принципу "Сделал и забыл". Способ расчитан на микросервисы на Go, работающие в Docker-контейнере и построенные с соблюдением принципов Clean Architecture.

Читать дальше →
Total votes 22: ↑22 and ↓0+22
Comments14

CI/CD с помощью AWS и Bamboo

Reading time9 min
Views7.5K
Наша команда состоит из одного разработчика и одного DevOps инженера. Я отвечаю за разворачивание приложения в кластере Amazon ECS. В качестве CI/CD сервера я использую Bamboo. В этой статье я подробно расскажу, как я осуществляю разворачивание приложения в dev-среде.


Читать дальше →
Total votes 14: ↑12 and ↓2+10
Comments6

Масштабирование приложения в Kubernetes на основе метрик из Prometheus

Reading time5 min
Views10K


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

Как обычно, ресурсов кластера на всех не хватает. Приходится что-то придумывать для оптимизации использования ресурсов, и Kubernetes отлично для этого подходит. В нём есть Horizontal Pod Autoscaler, который позволяет масштабировать приложения на основе метрик.



Метрики обычно поставляются метрик-сервером. Дальше я расскажу о замене метрик-сервера Prometheus’ом (потому что Prometheus реализует в себе данные, которые отдаются метрик-сервером и мы избавляемся от одного лишнего звена) и о том, как на основе метрик из Prometheus масштабировать свои приложения в Kubernetes.
Читать дальше →
Total votes 38: ↑35 and ↓3+32
Comments8

Читаем QR код

Reading time5 min
Views1.1M
Иногда возникают такие ситуации, когда нужно прочитать QR код, а смартфона под рукой нет. Что же делать? В голову приходит лишь попробовать прочитать вручную. Если кто-нибудь сталкивался с такими ситуациями или кому просто интересно как же читается QR код машинами, то данная статья поможет вам разобраться в этой проблеме.

В статье рассмотрены базовые особенности QR кодов и методика дешифрирования информации без использования вычислительных машин.

Иллюстраций: 14, символов: 8 510.
Читать дальше →
Total votes 623: ↑614 and ↓9+605
Comments109

Полное руководство по профессиональному поиску скрытых камер и шпионских устройств

Reading time9 min
Views104K


Вне всякого сомнения, это наиболее исчерпывающее руководство по обнаружению работающих скрытых камер и устройств слежения.

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

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

В статье мы опишем точный пошаговый процесс, который мы используем для поиска скрытых устройств слежения и камер. Начнём!
Читать дальше →
Total votes 55: ↑44 and ↓11+33
Comments53

Аутентификация в Kubernetes с помощью GitHub OAuth и Dex

Reading time6 min
Views13K
Представляю вашему вниманию туториал для генерации доступов к Kubernetes-кластеру с помощью Dex, dex-k8s-authenticator и GitHub.

image

Локальный мем из русскоязычного чата Kubernetes в Telegram
Читать дальше →
Total votes 11: ↑10 and ↓1+9
Comments11

Information

Rating
1,929-th
Registered
Activity