• 10 причин [не] использовать k8s

      Сегодня мы поговорим про Kubernetes, про грабли, которые можно собрать при его практическом использовании, и про наработки, которые помогли автору и которые должны помочь и вам. Постараемся доказать, что без k8s в современном мире никуда. Противникам k8s также предоставим отличные причины, почему не стоит на него переходить. То есть в рассказе мы будем не только защищать Kubernetes, но и ругать его. Отсюда в названии появилось это [не].

      Эта статья основана на докладе Ивана Глушкова (gli) на конференции DevOops 2017. Последние два места работы Ивана так или иначе были связаны с Kubernetes: и в Postmates, и в Machine Zone он работал в инфракомандах, и Kubernetes они затрагивают очень плотно. Плюс, Иван ведет подкаст DevZen. Дальнейшее изложение будет вестись от лица Ивана.


      Читать дальше →
    • Кластер kubernetes HA с containerd. Или есть ли жизнь без docker?

      • Tutorial

      Развертываение kubernetes HA с containerd



      Добрый день уважаемые читатели Хабра! 24.05.2018 г. в официальном блоге Kubernetes была опубликована статья под названием Kubernetes Containerd Integration Goes GA, в которой говорится, что интеграция containerd с Kubernetes готова к production. Также ребята из компании Флант в своем блоге разместили перевод статьи на русский язык, добавив немного уточнений от себя. Почитав документацию проекта на github, я решил попробовать containerd на "собственной шкуре".


      У нас в компании есть несколько проектов в стадии "до продакшена еще очень далеко". Вот они и станут нашими подопытными; для них мы решили попробовать развернуть отказоустойчивый кластер Kubernetes с использованием containerd и посмотреть, есть ли жизнь без docker.


      Если Вам интересно посмотреть, как мы это делали и что из этого получилось, — добро пожаловать под кат.

      Читать дальше →
    • Биткоин — это культ

      • Translation
      Автор: Адам Кодилл, специалист по безопасности, исследователь и разработчик с 15-летним опытом, который специализируется на проблемах безопасности приложений, защите коммуникаций и криптографии. Статья опубликована в личном блоге автора 21 июня 2018 года.

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

      С каждым годом их ряды растут, а восприятие криптовалют становится всё более грандиозным, даже когда обычные криптокотики ставят технологию на колени. Я твёрдо верю, что хорошо разработанная криптовалюта может облегчить международные переводы и обеспечить стабильность во время сильной инфляции, но до этого ещё далеко. В реальности мы имеем серьёзную волатильность, на которой наживаются спекулянты. Тот кто говорит, что эпоха доллара и евро уходит, совершенно отказался от объективного взгляда на реальность.
      Читать дальше →
    • DevTube — новый open source-агрегатор видеоматериалов для разработчиков

        Сегодня ночью два разработчика из Риги, Андрей Адамович и Эдуард Сизов опубликовали на GitHub свой open source-проект агрегатора с видеоматериалами для разработчиков DevTube. На сайте уже реализована система фильтров по тегам, таким как Mobile, JavaScript, Testing и другим, а также по спикерам и языкам видео. Проект заявлен как некоммерческий: на сайте нет ничего лишнего, только навигация, превью к видео и такая ключевая информация как теги, продолжительность, дата загрузки, количество просмотров и лайков. Очевидно, ресурс будет полезен тем, кому нужны выступления и видеоматериалы по конкретным языкам или направлениям разработки.



        Сейчас на ресурсе преобладает англоязычный контент, что неудивительно. Также разработчики заявили о старте коллективной работы по наполнению этого некоммерческого ресурса: подать заявку на добавление или удаление видео с DevTube можно через пулл-реквест на GitHub, о чем сообщается в README.md. Вот как идею создания такого ресурса прокомментировал один из разработчиков, Андрей codingandrey Адамович:
        Читать дальше →
      • Как освоить иностранный язык без преподавателя. Часть 1. «Мой опыт»

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


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


          таблица-вертушка неправильных глаголов


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

          Читать дальше →
        • Интеграция containerd с Kubernetes, заменяющая Docker, готова к production

          • Translation


          Прим. перев.: Мы уже не раз писали о containerd и других исполняемых средах для Kubernetes. Новая публикация — перевод недавнего анонса важной вехи в развитии containerd, опубликованного в официальном блоге проекта Kubernetes. Текст написан сотрудниками компаний Google и IBM, которые (конечно, вместе с Docker Inc) вносят значительный вклад в совершенствование containerd.

          Ранее в блоге — в заметке Containerd Brings More Container Runtime Options for Kubernetes — мы представляли альфа-версию интеграции containerd с Kubernetes. Очередные 6 месяцев разработки привели к тому, что интеграция стала общедоступной! Это означает, что теперь вы можете использовать containerd 1.1 в качестве исполняемой среды для контейнеров в Kubernetes-кластерах в production.

          Containerd 1.1 работает с Kubernetes версии 1.10 и выше, поддерживает все возможности Kubernetes. В инфраструктуре тестов Kubernetes покрытие тестами интеграции с containerd на Google Cloud Platform стало таким же, что и у интеграции с Docker (см. test dashboard).
          Читать дальше →
          • +28
          • 12.8k
          • 2
        • 7 бесплатных курсов по Data Science для начинающих

            Большие данные перестали быть просто модным словом и теперь применяются в сферах от IT до ритейла. Самое время начать разбираться в моделях анализа данных, погрузиться в массивы информации и получить опыт в интересном направлении — Data Scientist. Держите курсы, в которых изучите теорию и наберетесь практики. Профи не станете, но первый шаг сделаете.


            Читать дальше →
            • +17
            • 51.6k
            • 1
          • Погружение в разработку на Ethereum. Часть 4: деплой и дебаг в truffle, ganache, infura

            • Tutorial
            В прошлой статье мы рассмотрели разработанное приложение на Ethereum. Но обошли стороной вопрос как происходит процесс разработки. Ясно, что это не просто написание кода, который сразу работает. Большую часть времени придется потратить на то, чтобы доводить код, который “почти готов”, до рабочего состояния. Деплой, тестирование, отладка — все это в той или иной мере уже затрагивалось здесь например в этих неплохих статьях: раз, два, три (список не полный). В этой статье мы дадим небольшой обзор и возможно в чем-то повторимся, но постараемся сфокусироваться на тех моментах, которые нам показались важными или недосказанными. Плюс за последнее время некоторые штуки изменились, и огромное количество инструкций оказалось устаревшим. Постараемся немного подправить ситуацию.


            Читать дальше →
            • +14
            • 10.3k
            • 2
          • Шаг к квантовому превосходству: 49-кубитный квантовый компьютер от Intel

              В октябре прошлого года Intel объявили о релизе 17-кубитного чипа. Но уже спустя три месяца на CES 2018 компания продемонстрировала 49-кубитный квантовый чип Tangle Lake, который, как надеются ученые, станет важным компонентом в достижении квантового превосходства, так как теоретически 49-кубитный квантовый компьютер может превзойти по вычислительной мощности все суперкомпьютеры в мире (на некоторых задачах).

              Об особенностях Tangle Lake и ситуации на рынке квантовых машин расскажем далее.

              Читать дальше →
            • Attention! S in Ethereum stands for Security. Part 1. Blockchain things


                С этой статьи мы начинаем цикл, посвященный типичным уязвимостям, атакам и проблемным местам, присущим смарт-контрактам на языке Solidity, и платформе Ethereum в целом. В первой части мы поговорим вот о чем:


                • почему сложно реализовать децентрализованную биржу на смарт-контрактах
                • как сгенерировать случайное число
                • как вывести из строя всю Proof-of-Authority сеть
                Читать дальше →
              • Самоорганизующаяся сервисная инфраструктура на базе Docker

                  Меня зовут Данила Штань, я технический менеджер, архитектор и CTO в «Точке». Ниже я расскажу вам, как в одной конкретной компании, а потом — еще в нескольких, решали одну довольно простую задачу – построения инфраструктуры для продакшн, причем таким образом, чтобы разработчиков не напрягать, и всем было удобно.


                  Материал подготовлен специально для блога @Конференции Олега Бунина (Онтико) на основе моего доклада на RootConf 2017.
                  Читать дальше →
                • Включаем поддержку TLS v1.3 в Nginx на примере Debian 9

                  • Tutorial
                  Всем доброго времени суток!

                  Данный пост написан вследствие победы желания докопаться до сути над усталостью, сонливостью, соблазном опрокинуть очередную бутылочку пива пятничным вечером. Сразу скажу, что ничего супер сложного не раскрываю, всего лишь включение TLS v1.3 в Nginx.

                  image

                  Наверняка на Хабре найдутся те, кто уже 100 раз это делал, поэтому данная статья — больше для новичков или для тех, кто хочет найти готовое решение в виде мануала, не тратя много времени на поиски, как я, например. Вспомнив, что давно не писал на Хабре и поставив статье метку «tutorial», принялся за дело.
                  Читать далее
                • Пошаговое руководство по написанию сервиса для Kubernetes

                  • Translation
                  • Tutorial

                  От автора. Уже пятый декабрь подряд в блоге GopherAcademy самые разные представители Go-сообщества делятся своим опытом в рамках специальной предрождественской серии постов. В этом году я тоже решила предложить свою статью, написанную по мотивам первой части нашего с Игорем Должиковым мастер-класса по микросервисам. На Хабре небольшую часть этого руководства мы уже рассматривали ранее.


                  Если вы когда-либо пробовали Go, вы знаете, что писать сервисы на Go очень просто. Нам нужно буквально несколько строк кода для того, чтобы можно было запустить http-сервис. Но что нужно добавить, если мы хотим приготовить такое приложение в продакшн? Давайте рассмотрим это на примере сервиса, который готов к запуску в Kubernetes.


                  Все шаги из этой статьи можно найти в одном теге, или вы можете следить за примерами статьи коммит за коммитом.

                  Читать дальше →
                  • +18
                  • 12.9k
                  • 6
                • Лучшие практики CI/CD с Kubernetes и GitLab (обзор и видео доклада)



                    7 ноября на конференции HighLoad++ 2017, в секции «DevOps и эксплуатация» прозвучал доклад «Лучшие практики CI/CD с Kubernetes и GitLab». В нём мы делимся практическим опытом решения проблем, возникающих при построении эффективного процесса CI/CD на базе указанных Open Source-решений.

                    По традиции рады представить видео с докладом (около часа, гораздо информативнее статьи) и основную выжимку в текстовом виде.
                    Читать дальше →
                    • +21
                    • 25.6k
                    • 7
                  • От 15 и больше: как обеспечить масштабируемость CI



                      Сейчас публикуется много статей и докладов про конкретные технологии в DevOps: Docker, Kubernetes, Ansible… Я же хочу поговорить про построение процессов и про то, как мы в Wrike за два с половиной года эволюционировали от релизной системы для 15 фронтенд-разработчиков до почти 60-ти, и 2-3 деплоев в день.

                      Эта статья — про те уроки, которые мы на этом пути решили. Статья основана на моем докладе для DevOps митапа в Wrike Tech Club. Если некогда читать, есть видеозапись презентации. Читатели, добро пожаловать под кат.
                      Как это было...
                    • Назови мне свою зарплату, и я скажу кто ты

                      Эта статья родилась в качестве ответа на вот эту вот статью. А именно на вот этот пункт:
                      «Правило Лебедева» — никто внутри компании не должен знать, сколько получает другой. Не соблюдает ваш зам — увольняйте; не соблюдает профессионал — увольняйте; вы сами обмолвились — с этого момента работать у вас никто не будет, получать зарплату будут, а работать — нет. Будут выполнять письменно сказанное, но буквально понятое. Если профессионал получает много — это хорошо. Если об этом знают другие, они исследуют, а не говно ли он как человек.
                      Читать дальше →
                    • Делаем адаптивный HTML, добавляя одну строку в CSS

                      • Translation
                      image

                      В этой статье я расскажу вам, как использовать CSS Grid для создания супер классной сетки изображений, которая варьирует количество столбцов в зависимости от ширины экрана.

                      И самое классное: адаптивность будет добавлена с помощью одной строки CSS.
                      Это означает, что нам не нужно загромождать HTML лишними классами (Col-sm-4, col-md-8) или создавать медиа-запросы для каждого размера экрана.

                      Рассмотрим все подробнее.
                      Читать дальше →
                    • Python Meetup 14.11.2017: Python в Порту, Aiohttp и снова тесты

                        Всем привет! После долгого перерыва, блудная питоновка снова в деле! 14 ноября состаялась очередная встреча минского сообщества Python-разработичков Python Meetup. В этот раз доклады представили:

                        — Как я нечаянно стал главным по питону в Порту / Роман Иманкулов, Doist
                        — The test which will save your day / Иван Стяжкин, DataRobot
                        — Django и Aiohttp / Юлия Темушева, Wargaming
                        — Блицдоклад: распространенные ошибки программирования на Python / Юрий Красовский

                        Записи выступлений вы найдете под катом.


                        Читать дальше →
                      • Блокчейн 101: книги, исследования и статьи по теме

                          Мы подготовили дайджест из 30 полезных материалов о блокчейне: это книги, статьи, видео для тех, кто «что-то слышал, но хочет лучше разобраться в теме». Этот список мы формировали на основе собственных материалов и исследований, а также рекомендаций резидентов платформ Hacker News, Quora, Reddit.

                          Как устроены смарт-контракты, как объяснить концепцию биткойна ребенку и (самое интересное) как сделать свой собственный блокчейн — обо всем под катом.

                          Читать дальше →
                          • +16
                          • 32.3k
                          • 4
                        • Интеллектуальные чат-боты на ChatScript: основы

                          • Translation
                          Чат-боты, поддерживающие общение с человеком на естественном языке, весьма популярны и востребованы. Сегодня мы хотим поделиться с вами первой частью перевода материала о разработке чат-ботов с помощью ChatScript (CS), написанного сотрудником WebbyLab на основе опыта, приобретённого им в ходе работы над одним из недавних проектов компании. Здесь, в частности, речь пойдёт об основах работы с CS, рассмотренных с точки зрения программиста-практика. ChatScript хорош тем, что на нём можно сравнительно просто разрабатывать масштабные системы с возможностями искусственного интеллекта, и тем, что его несложно интегрировать в проекты, написанные на JavaScript.

                          Читать дальше →
                          • +20
                          • 7.9k
                          • 3