Архив рубрики: Amazon web services

Amazon Web Services is a subsidiary of Amazon that provides on-demand cloud computing platforms to individuals, companies and governments, on a paid subscription basis.

AWS: CloudFormation — ‘templateBody’ failed to satisfy constraint: Member must have length less than or equal to 51200

6 сентября 2018
 

 Имеется CloudFormation стек. Сначала создавался Dev-стек, к которому понемногу добавлялись новые ресурсы, всё это тестилось, и в конце-концов заработало. После этого — пришла пора выкатывать Production-стек, и вдруг… ‘templateBody’ failed to satisfy constraint: Member must have length less than or equal to 51200. Щито? 🙁 Проверяем лимиты CloudFormation: Template body size in a request Maximum… Читать далее »

AWS: CloudFormation — создание S3 Website hosting и CloudFront distribution

5 сентября 2018
 

 Пример создания хостинга статического сайта в AWS S3 и подключении к нему AWS CloudFront CDN, к которому подключается SSL сертификат из AWS ACM. Для сайта используем домен site.azinchenko.com. Получившийся шаблон доступен в репозитории тут>>>. AWS::S3::Bucket Начнём с создания корзины, используем ресурс AWS::S3::Bucket: { «AWSTemplateFormatVersion»: «2010-09-09», «Description»: «AWS CloudFormation S3 website hosting with CloudFront CND stack»,… Читать далее »

AWS: Application Load Balancer — HTTP => HTTPS и host-header редиректы

30 августа 2018
 

 Имеется Application Load Balancer, за которым находятся три хоста: два фронтенда, и один master. Задачи следующие: добавить редиректы HTTP => HTTPS добавить редиректы доменов dev.admin.dme.example.com на master-хост, а остальных — на frontend-хосты добавить редиректы www <=> non-www Редирект HTTP на HTTPS Тут столкнулся с очередным «подарком» от AWS CloudFormation: After checking our internal information, the newly… Читать далее »

AWS: миграция RTFM 3.0 (final) — CloudFormation и Ansible роли

25 августа 2018
 

 Прошёл почти год, как я начал миграцию v2, закончил на посте Ansible: миграция RTFM 2.11 – хост Services – установка PHP, PHP-FPM. Основной её идеей на тот момент было максимально использовать возможности AWS и Ansible — чисто из интереса и для практики, т.к. на предыдущем месте работы её было совсем мало (там в основном был Azure… Читать далее »

AWS: 502 ошибка на Application Load balancer

10 августа 2018
 

 Имеется ALB, на который постоянно срабатывает Alertmanager с ошибкой 502: В CloudWatch видно, что ошибка возникает спорадически, и только один раз: При этом в логах NGINX никаких ошибок нет Первым делом — включаем логи ALB: Не то что бы они чем-то реально помогли — но по крайне мере теперь можно увидеть ошибку «вживую» : 52.***.***.142… Читать далее »

AWS: CloudFormation — создание EFS + Ansible роль

1 августа 2018
 

 Задача — добавить ресурсы AWS Elastic File System в существующий CloudFormation стек. В CloudFormation для этого имеется ресурс AWS::EFS::FileSystem, который и используем. Шаблон для CloudFormation уже создан, и в примерах ниже будут отсылки к его ресурсам. Опции EFS Перед тем, как создавать EFS — немного рассмотрим доступные опции. EFS имеет два основных доступных параметра — Performance… Читать далее »

AWS: бекап EBS по расписанию через CloudWatch rules или Data Lifecycle Manager

24 июля 2018
 

 Выполнить снапшот EBS по расписанию можно двумя способами: старый — с помощью CloudWatch rules, и новый — с помощью Data Lifecycle Manager. EBS backup with CloudWatch rules Переходим в CloudWatch > Rules, жмём Create rule: В Event source выбираем Schedule, задаём время — фиксированный период или по крону, например — в 18:10 каждый день (время тут задаётся… Читать далее »

Grafana: добавление CloudWatch data-sorce

18 июля 2018
 

 Для получения метрик из AWS CloudWatch для связки Grafana/Prometheus можно использовать два подхода: собирать метрики в Prometheus с помощью cloudwatch_exporter добавить новый data-source в Grafana, и рисовать графики используя его Ниже описывается процесс добавления data-source в Grafana и графиков AWS Load Balancer. IAM пользователь Добавляем IAM пользователя с Programmatic access: В Permissions выбираем Attach existing policies… Читать далее »

MariaDB: AWS RDS read-replica и Seconds_Behind_Master

10 июля 2018
 

 Имеется AWS RDS read-replica сервер, у котого постоянно растёт значение Seconds_Behind_Master. Ниже — попытки разобраться в причинах и исправить ситуацию. Забегая наперёд — причину нашёл, однако решения как избежать её в будущем не искал, а «пофиксилось» путём запуска нового read-replica сервера, но на будущее оставлю себе запись о том, как проверял статус и искал решение.… Читать далее »

NGINX: реальный IP в логах при работе за AWS Load Balancer

9 июля 2018
 

 Есть NGINX, который работает за AWS Application Load Balancer-ом (ALB). Проблема заключается в том, что в логах NGINX пишется IP самого ALB, а не клиента: 10.0.2.26 — — [06/Jul/2018:10:30:50 +0300] «GET /debug/ HTTP/1.1» 404 133 «-» «Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36» Что бы исправить это — добавляем… Читать далее »