Архив рубрики: Virtualization

In computing, virtualization refers to the act of creating a virtual version of something, including virtual computer hardware platforms, storage devices, and computer network resources.

AWS: CloudFormation — использование lists в Parameters

9 апреля 2020
 

 В продолжение темы AWS: Elastic Kubernetes Service — автоматизация создания кластера, часть 1 — CloudFormation — теперь надо добавить передачу в стек параметра в виде списка. Идея в том, что бы в Ansible получать все AvailabilityZones, а потом этот список использовать для eksctl, который будет создавать WorkerNodes в разных AvailabilityZones, и для CloudFormation — что бы… Читать далее »

Kubernetes: мониторинг с Prometheus

8 апреля 2020
 

 Следующая задача — настроить мониторинг Kubernetes. Задача осложняется тем, что у нас есть целый набор ресурсов, которые требуется мониторить: инфраструктура — ЕС2 инстасы WokerNodes, их ЦПУ, память, сеть ключевые сервисы самого Kubernetes — состояние API сервера, etcd, scheduler состояние подов и контейнеров состояние деплойментов сбор метрик непосредственно с приложений Для мониторинга всего этого доступны следующие… Читать далее »

AWS: Elastic Kubernetes Service — автоматизация создания кластера, часть 2 — Ansible, eksctl

31 марта 2020
 

 Первая часть — AWS: Elastic Kubernetes Service — автоматизация создания кластера, часть 1 — CloudFormation. Напомню, что общая идея заключается в следующем: Ansible использует модуль cloudformation , создаёт инфрастуктуру используя Outputs созданного стека CloudFormation — Ansible из шаблона генерирует файл настроек для eksctl Ansible вызывает eksctl, передавая ему конфиг кластера, и создаёт или обновляет кластер Запускаться… Читать далее »

AWS: Elastic Kubernetes Service — автоматизация создания кластера, часть 1 — CloudFormation

31 марта 2020
 

 Задача: продумать автоматизацию развёртывания AWS Elastic Kubernetes Service кластера. Используем: Ansible: для автоматизации создания CloudFormation стеков и запуска eksctl с нужными параметрами CloudFormation с NestedStacks: для создания инфрастуктуры — VPC, подсетей, SecurityGroups, IAM-роли, etc eksctl: для создания самого кластера, используя ресурсы, созданные CloudFormation Идея заключается в следующем: Ansible использует модуль cloudformation , создаёт инфрастуктуру используя Outputs… Читать далее »

Kubernetes: запуск ALB Ingress controller для AWS Elastic Kubernetes Service

26 марта 2020
 

 AWS ALB Ingress Controller for Kubernetes — контроллер Kubernetes, который управляет соданием Application Load Balancer (ALB) при создании в кластере ресурса типа Ingress с аннотацией вида kubernetes.io/ingress.class: alb. Ingress-ресурс в свою очередь определяет настройки ALB для роутинга HTTP или HTTPS трафика к различным подам кластера. Документация: https://kubernetes.io/docs/concepts/services-networking/ingress/ https://github.com/kubernetes-sigs/aws-alb-ingress-controller https://aws.amazon.com/ru/blogs/opensource/kubernetes-ingress-aws-alb-ingress-controller/ Ingress controller types AWS ALB Ingress… Читать далее »

Kubernetes: знакомство, часть 5 — RBAC авторизация и примеры Role и RoleBinding

25 марта 2020
 

 Задача — создать пользователя, у которого будет возможность проверять состояние подов и читать их логи — ко всем другим операциям доступа быть не должно. AWS EKS использует AWS IAM для аутентификации в в Kubernetes-кластере (см. пост Kubernetes: знакомство, часть 4 — аутентификация в AWS EKS, aws-iam-authenticator и AWS IAM), но для авторизации, т.е. определения конкретных… Читать далее »

Prometehus: мониторинг AWS Billing

5 марта 2020
 

 Задача — иметь перед глазами график в Grafana, который будет отображать расходы на AWS. Есть два варианта — использовать експортер от Prometheus — prom/cloudwatch-exporter, или самописный от nachomillangarcia — prometheus_aws_cost_exporter. Первый собирает метрики от AWS CloudWatch, в которые данные по биллингу поступают только на следующий день. Второй написан на Python, ходит к AWS API, получает… Читать далее »

AWS: CloudFormation — вложенные стеки и Import/Export параметров

28 февраля 2020
 

 Вложенные стеки (Nested Stacks) в CloudFormation — это стеки, которые создаются из другого, «родительского», стека используя AWS::CloudFormation::Stack. Основная идея использования вложенных стеков — избежать необходимости писать новый шаблон для ресурса, который используется в нескольких стеках. Вместо этого — шаблон создаётся один раз, хранится в AWS S3 корзине, и при создании стеков — вы просто ссылаетесь… Читать далее »

Linux: PHP-FPM, Docker, STDOUT и STDERR — нет логов приложения

17 февраля 2020
 

 Имеется Docker-образ, в который включены NGINX и PHP-FPM, плюс Supervisor для их запуска. В этот же образ включён код PHP-приложения, которое пишет ошибки PHP в /dev/stderr, как задано в php.ini: … [global] error_log=/dev/stderr … Проблема заключается в том, что при выполнении kubectl logs — в выводе этих данных нет. Где проблема? В Docker? Kubernetes? Linux… Читать далее »

Kubernetes: запуск metrics-server в AWS EKS для Kubernetes Pod AutoScaler

15 февраля 2020
 

 Предполагается, что AWS EKS уже создан, и имеет рабочие ноды. Ниже — выполним настройку подключения к кластеру, создадим тестовый деплоймент с HPA — Kubernetes Horizontal Pod AutoScaler, и попробуем получить данные об используемых ресурсах с помощью kubectl top. Kubernetes cluster Создаём тестовый кластер: Переключаемся на него. Kubernetes cluster context Настраиваем kubectl: Проверяем доступные в аккаунте… Читать далее »