Как стать автором
Поиск
Написать публикацию
Обновить
0.08

Amazon Web Services *

Инфраструктура платформ облачных веб-сервисов

Сначала показывать
Порог рейтинга
Уровень сложности

Резервное копирование windows серверов в AWS

Время на прочтение4 мин
Количество просмотров2.9K
Имеем windows сервер в AWS и задача настроить резервное копирование. Можно использовать снапшоты, но тогда возникнет проблема с целостностью данных. Ещё хочется хранить недельные и месячные снапшоты, а lifecycle в снапшотах этого не предлагает. Новый сервисе AWS Backup тоже не умеет ещё делать целостные снапшоты или я не нашёл как. Ну и хочется что бы всё это работало максимально без моего участия.
Читать дальше →

Deploy Symfony + React приложения на AWS посредством CI

Время на прочтение15 мин
Количество просмотров6.1K
Добрый день, в данной статье я покажу как развернуть Symfony 4 приложение на AWS. В официальной документации есть пример подобного процесса, однако мой вариант не столь тривиален, как загрузка zip архива с приложением. На дворе 2019, в моде docker, микросервисная архитектура и CI/CD практики наконец-то начинают входит в инструментарий не только DevOps-инженеров, но и простых смертных разработчиков. Чтобы статья была более интересна, я добавил фронт на React.JS, для охвата потребностей большей массы людей, если ваше приложение не использует Encore — не беда, я укажу как изменить Docker-файл для вас, поддержка React.JS тут влияет только на него. Кому будет интересен данный туториал? В первую очередь он направлен на PHP-разработчиков, желающих изменить свою практику деплоя — отойти от привычных канонов и воспользоваться docker для паковки своего приложения и выкладки образа. Но можно пойти чуть глубже, и дальнейшее повествование будет направлено на автоматический деплой приложения из Git'а посредством CI/CD платформы (будет использован CircleCI, но если интересует конфиг Gitlab'а, пишите в комментариях, я приложу). По сути, тут абсолютно не важно React/PHP ли у вас приложение или, скажем, на .NET Core, данная часть будет интересна разработчикам для получения навыков автоматизации деплоя в целом. Исходный код доступен в github-репозитории, ссылка в конце статьи. Ну что же, поехали!
Читать дальше →

Следим за изменением файлов с помощью Alerting OpenDistro for Elasticsearch

Время на прочтение1 мин
Количество просмотров5.9K

Сегодня возникла потребность в мониторинге изменений определенных файлов на сервере, существует много разных способов например osquery от facebook, но так как недавно я начал пользоваться Open Distro for Elasticsearch решил мониторить файлы эластиком, одним из его beat'ов.

Читать дальше →

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

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


Читать дальше →

AWS_Ru meetup в Райффайзенбанке

Время на прочтение1 мин
Количество просмотров2.2K
Приглашаем на митап сообщества AWS_Ru, который пройдет на площадке Райффайзенбанка в Нагатино, 4 июля. Будем разговаривать про IoT и решения AWS, узнаем, как выжать из облака все и еще послушаем секретного спикера. Готовьте свои вопросы и приходите делиться опытом, будет интересно.


AWS Lambda — теория, знакомство

Время на прочтение6 мин
Количество просмотров55K

Краткий экскурс в AWS Lambda


Что это?


AWS Lambda: это вычислительный сервис, который позволяет запускать код практически для любого типа приложения или серверной службы — и все это без необходимости администрирования. AWS Lambda выполняет все администрирование за вас, включая обслуживание сервера и операционной системы, выделение ресурсов и автоматическое масштабирование, мониторинг кода и ведение журнала. Все, что вам нужно сделать — это предоставить свой код на одном из языков, которые поддерживает AWS Lambda.

Зачем ее использовать?


  • Деньги. Вы платите только за то время, когда сервис работает.
  • Скорость. Сама по себе лямбда поднимается и работает очень быстро.
  • Удобство. Лямбда имеет много возможностей по интеграции с сервисами AWS.
  • Производительность. Параллельно может выполняться, в зависимости от региона максимально от 1000 до 3000 экземпляров. И при желании, этот лимит можно поднять, написав в поддержку.

У этого подхода есть и свои минусы, вы не можете управлять операционной системой на который выполняется код, не можете контролировать ЦП, память и ресурсы. Всем этим занимается AWS.

Все что вы можете, это выбрать язык, из поддерживаемых AWS Lambda.

Что могёт?


Ниже представлен краткий перечень основных функций AWS Lambda. Далее все рассмотрим по порядку.


Читать дальше →

Очереди — что это, зачем и как использовать? Посмотрим на возможности AWS SQS

Время на прочтение5 мин
Количество просмотров30K

Сначала давайте дадим определение понятию «очередь — queue».


Возьмем для рассмотрения тип очереди «FIFO»(first in, first out). Если взять значение из википедии — «это абстрактный тип данных с дисциплиной доступа к элементам». Если вкратце, это означает что мы не можем из нее доставать данные в случайном порядке, а только забирать то — что пришло первым.

Далее, нужно определиться зачем вообще они нужны?


1. Для отложенных операций. Классическим примером является обработка картинок. К примеру пользователь загрузил на сайт картинку, которую нам нужно обработать, эта операция занимает много времени, пользователь столько ждать не хочет. Поэтому мы грузим картинку, далее передаем ее в очередь. И она будет обработана, когда какой либо «worker» ее достанет.

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

3. Масштабируемость. И наверное самая важная причина, очередь дает возможность
масштабироваться. Это означает, что вы можете поднять несколько сервисов для обработки параллельно, что сильно повысит производительность.
Читать дальше →

Что нового у AWS: DATA API, Kinesis Data Analytics, S3 Path

Время на прочтение4 мин
Количество просмотров2.4K

DATA API для Amazon Aurora Serverless


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

«Битрикс24»: «Быстро поднятое не считается упавшим»

Время на прочтение13 мин
Количество просмотров9K
На сегодняшний день у сервиса «Битрикс24» нет сотен гигабит трафика, нет огромного парка серверов (хотя и существующих, конечно, немало). Но для многих клиентов он является основным инструментом работы в компании, это настоящее business-critical приложение. Поэтому падать — ну, никак нельзя. А что если падение все-таки случилось, но «восстал» сервис так быстро, что никто ничего и не заметил? И как удаётся реализовать при этом failover без потери качества работы и количества клиентов? Александр Демидов, директор направления облачных сервисов «Битрикс24», рассказал для нашего блога о том, как за 7 лет существования продукта эволюционировала система резервирования.


Читать дальше →

Moto. Мокаем AWS

Время на прочтение3 мин
Количество просмотров3.1K
Тестирование — это неотъемлемая часть процесса разработки. И иногда разработчикам требуется запустить тесты локально, до того момента коммита изменений.
Если приложение использует Amazon Web Services, python библиотека moto идеально для этого подходит.

Читать дальше →

О топорах и капусте

Время на прочтение6 мин
Количество просмотров5K

Размышления о том, откуда берется желание сдать сертификацию AWS Solutions Architect Associate.


Мотив первый: «Топоры»

Один из самых полезных для любого профессионала принципов «Знай свои инструменты» (или в одной из вариаций «точи пилу»).

Мы в облаках уже давно, но до поры до времени это были просто монолитные приложения с базами, развернутые на инстансах EC2 — дёшево и сердито.

Но постепенно нам стало тесно в рамках монолита. Взяли курс на распил в хорошем смысле – на модуляризацию, а затем и модные нынче микросервисы. И очень быстро на этой почве «расцветают сто цветов».

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

  • Клиентов в виде разнообразных приложений нашего продукта – от глухих уголков дремучего легаси до ультрамодных микросервисов на .Net Core.
  • Очереди Amazon SQS, в которые складываются логи о том, что происходит с клиентами.
  • Микросервис на .Net Core, который достает сообщения из очереди и отправляет их в Amazon Kinesis Data Streams (KDS). Имеет также Web API интерфейс и swagger UI как дублирующий канал и для ручного тестирования. Оборачивается в докеровский linux-контейнер и хостится под управлением Amazon ECS. Предусмотрен autoscaling на случай большого потока логов.
  • Из KDS данные пожарными шлангами направляются в Amazon Redshift с промежуточными складами в Amazon S3.
  • Операционные логи для девелоперов (дебаг-информация, сообщения об ошибках и т.п.) форматируются в приятный глазу JSON и отправляются в Amazon CloudWatch Logs



Работая с таким зоопарком сервисов AWS, хочется знать, что есть в арсенале и как это что-то лучше использовать.
Читать дальше →

Автоматизация управления Let's Encrypt SSL сертификатами используя DNS-01 challenge и AWS

Время на прочтение5 мин
Количество просмотров4.9K

Пост описывает шаги для автоматизации управления SSL сертификатами от Let's Encrypt CA используя DNS-01 challenge и AWS.


acme-dns-route53 — это инструмент, который позволит нам реализовать данную фичу. Он умеет работать с SSL сертификатами от Let's Encrypt, сохранять их в Amazon Certificate Manager, использовать Route53 API для реализации DNS-01 challenge, и, в конце, пушить уведомления в SNS. В acme-dns-route53 так же присутствует built-in функционал для использования внутри AWS Lambda, и это то, что нам нужно.

Читать дальше →

Гид по параллельному масштабированию Amazon Redshift и результаты тестирования

Время на прочтение6 мин
Количество просмотров2.3K
image

Мы в Skyeng пользуемся Amazon Redshift, в том числе параллельным масштабированием, поэтому статья Стефана Громолла, основателя dotgo.com, для intermix.io, показалась нам интересной. После перевода — немного нашего опыта от инженера по данным Данияра Белходжаева.

Архитектура Amazon Redshift позволяет масштабирование путем добавления новых узлов в кластер. Необходимость справляться с пиковым количеством запросов может привести к избыточному резервированию узлов (over-provisioning). Параллельное масштабирование (Concurrency Scaling), в отличие от добавления новых узлов, наращивает вычислительную мощность по мере необходимости.

Параллельное масштабирование Amazon Redshift дает кластерам Redshift дополнительные мощности для обработки пикового количества запросов. Оно работает путем перенесения запросов на новые «параллельные» кластеры в фоновом режиме. Запросы маршрутизируются на основе конфигурации и правил WLM.
Читать дальше →

Ближайшие события

Строим сетевые каналы продаж гаджета ДО-РА

Время на прочтение7 мин
Количество просмотров2.3K
image

В начале марта 2019 года команда «Интерсофт Евразия» завершила работу над тестовой партией гаджетов ДО-РА – персональных, кроссплатформенных ДОзиметров-РАдиометров для контроля радиационной обстановки в месте измерения, совместимых со смартфонами и планшетами под iOS и Android.

Что же получает пользователь, приобретая такое устройство: проверенную под радиационной нагрузкой в лаборатории завода надёжную электронику, стильный цветной корпус в духе Малевича;) на любой вкус, подарочную упаковку, цветную вкладыш-инструкцию на русском и английском языках, специальный кабель для подзарядки гаджета через USB разъём, бесплатное обновляемое приложение DO-RA.Pro из App Store и Google Play.

Следующий шаг на пути реализации нашего проекта – найти оптимальные каналы продаж изделий Made in Russia в сложной обстановке стагнирующей покупательской способности.
Читать дальше →

Apache Kafka и потоковая обработка данных с помощью Spark Streaming

Время на прочтение9 мин
Количество просмотров35K
Привет, Хабр! Сегодня мы построим систему, которая будет при помощи Spark Streaming обрабатывать потоки сообщений Apache Kafka и записывать результат обработки в облачную базу данных AWS RDS.

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

Как реализовать этот кейс без применения магии и волшебных заклинаний — читаем под катом! Поехали!


(Источник картинки)
Читать дальше →

Расширение для браузера Intelligent Speaker, которое читает статьи: добавили голоса из Microsoft Azure

Время на прочтение1 мин
Количество просмотров1.6K
image

Теперь стало больше голосов и языков. Раньше был голос только через AWS Polly.

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

Terraformer — Infrastructure To Code

Время на прочтение5 мин
Количество просмотров15K
image
Хотел бы рассказать про новый CLI tool который я написал для решения одной старой проблемы.

Проблема


Terraform уже давно стал стандартом в Devops/Cloud/IT сообществе. Вещь очень удобная и полезная чтоб заниматся infrastructure as code. Есть много прелестей в Terraform а так же много вилок, острых ножей и граблей.
С Terraform очень удобно делать новые вещи и потом ими управлять, менять или удалять. А что делать тем у кого есть огромная инфраструктура в облаке и не создано через Terraform? Переписывать и пересоздавать все облако как то дорого и небезопасно.
Я сталкивался с такой проблемой на 2 работах, самый простой пример когда хочешь что все было в гите виде терраформ файлов, а у тебя 250+ бакетов и писать их для терраформа руками как то много.
Есть issue еще с 2014 года в terrafom которую закрыли в 2016 с надеждой что будет import.

Вообщем все как на картинке только справа налево
Читать дальше →

Serverless-подход для быстрой разработки рабочего видео-сервиса

Время на прочтение4 мин
Количество просмотров4.8K
AWS Elemental

Я работаю в аутсорсе, где главный принцип можно описать фразой «продавай много, делай быстро». Чем быстрее сделаем, тем больше заработаем. И, желательно, чтобы всё работало не на костылях и соплях, а с приемлемым уровнем качества. Я расскажу о своём опыте, когда за короткий срок нужно было разработать промо-сервис.

Дано: root-аккаунт на AWS, отсутствие ограничений по выбору стека технологий, один бэкендер, и один месяц на разработку.

Задача: реализовать промо-сервис, где пользователи загружают от одного до четырёх видео длительностью от одной до четырёх секунд, которые потом встраиваются в оригинальный видеоряд. То есть, подменяем фрагменты оригинального видео (заставка сериала) на пользовательские. Киллер-фича — возможность отправить своё имя, которое в виде красивого текста наложится на соответствующий фрагмент видео. Кроме того, пользователь может загружать видео длиной от 4 до 30 секунд, и на стороне сервиса оно обрежется до 4 секунд.
Читать дальше →

Аналитика логов Nginx с помощью Amazon Athena и Cube.js

Время на прочтение9 мин
Количество просмотров8K

Обычно для мониторинга и анализа работы Nginx используют коммерческие продукты или готовые open-source альтернативы, такие как Prometheus + Grafana. Это хороший вариант для мониторинга или real-time аналитики, но не слишком удобный для исторического анализа. На любом популярном ресурсе объем данных из логов nginx быстро растет, и для анализа большого объема данных логично использовать что-то более специализированное.


В этой статье я расскажу, как можно использовать Athena для анализа логов, взяв для примера Nginx, и покажу, как из этих данных собрать аналитический дэшборд, используя open-source фреймворк cube.js. Вот полная архитектура решения:


Архитектура


TL:DR;
Ссылка на готовый дэшборд.

Читать дальше →

Эмуляция Amazon web services в JVM процессе. Уклоняемся от Роскомнадзора и ускоряем разработку и тестирование

Время на прочтение8 мин
Количество просмотров6.9K
Зачем же может потребоваться эмулировать инфраструктуру Amazon web services?

Прежде всего это экономия — экономия времени на разработку и отладку, и что не менее важно — экономия денег из бюджета проекта. Понятно что эмулятор не будет на 100% идентичен исходной среде которую пытаемся эмулировать. Но для целей ускорения разработки и автоматизации процесса существующего сходства должно хватать. Наиболее злободневное что случилось в 2018 году с AWS — это блокировки провайдерами IP адресов подсетей AWS в РФ. И эти блокировки затронули нашу инфраструктуру, размещенную в облаке Amazon. Если планируете использовать технологии AWS и размещать проект в этом облаке, то для разработки и тестирования эмуляция с лихвой окупается.



В публикации расскажу, как нам удалось выполнить такой трюк с сервисами S3, SQS, RDS PostgreSQL и Redshift при миграции существующего много лет хранилища данных на AWS.
Читать дальше →

Вклад авторов