Updates rtfm.co.ua 🇺🇦 – Telegram
Updates rtfm.co.ua 🇺🇦
722 subscribers
35 photos
457 links
Канал @rtfm - новые посты на https://rtfm.co.ua.
Обсуждения - группа @rtfmco https://t.me./rtfmco
Download Telegram
Kubernetes: запуск metrics-server в AWS EKS для Kubernetes Pod AutoScaler

Предполагается, что AWS EKS уже создан, и имеет рабочие ноды. Ниже – выполним настройку подключения к кластеру, создадим тестовый деплоймент с HPA – Kubernetes Horizontal Pod AutoScaler (опишу отдельным постом), и попробуем получить данные об используемых ресурсах с помощью kubectl top. Kubernetes cluster Создаём тестовый кластер: eksctl create cluster --profile arseniy --region us-east-2 --name eks-dev-1...[]  node "ip-192-168-54-141.us-east-2.compute.internal" is ready[]  node "ip-192-168-85-24.us-east-2.compute.internal" is ready[]  kubectl command should work with "/home/setevoy/.kube/config", try 'kubectl get nodes'[]  EKS cluster "eks-dev-1" in "us-east-2" region is ready Переключаемся на него. Kubernetes cluster context Настраиваем kubectl:…

https://rtfm.co.ua/kubernetes-zapusk-metrics-server-v-aws-eks-dlya-kubernetes-pod-autoscaler/
Linux: PHP-FPM, Docker, STDOUT и STDERR – нет логов приложения

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

https://rtfm.co.ua/linux-php-fpm-docker-stdout-i-stderr-net-logov-prilozheniya/
Redis: “psync scheduled to be closed ASAP for overcoming of output buffer limits” и client-output-buffer-limit

Имеется Redis-кластер с Sentinel, см. Redis: репликация, часть 2 — Master-Slave репликация, и Redis Sentinel, Redis: fork — Cannot allocate memory, Linux, виртуальная память и vm.overcommit_memory и Redis: основные параметры конфигурации и тюнинг производительности. Система работала отлично долгое время, пока мы не начали использовать кеш намного более активно. Redis info Проверить все ключи в базах можно…

https://rtfm.co.ua/redis-psync-scheduled-to-be-closed-asap-for-overcoming-of-output-buffer-limits-i-client-output-buffer-limit/
Linux: настройка gnome-keyring в роли Freedesktop SecretService

Сейчас у меня KeePass используется как менеджер паролей, хранилище RSA-ключей и в роли Freedesktop SecretService, см. пост KeePass: настройка MFA, хранение паролей браузера, паролей SSH ключей и интеграция Secret Service. Первая проблема применения KeePass в роли SecretService заключается в том, что у меня его база синхронизируется между компьютерами (просто хранится в Dropbox), и он каждый…

https://rtfm.co.ua/linux-nastrojka-gnome-keyring-v-roli-freedesktop-secretservice/
AWS: CloudFormation – вложенные стеки и Import/export параметров

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

https://rtfm.co.ua/aws-cloudformation-vlozhennye-steki-i-import-export-parametrov/
Prometehus: мониторинг AWS Billing

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

https://rtfm.co.ua/prometehus-monitoring-aws-billing/
Linux: создание coredump памяти процесса, Debian и systemd-coredump

Возникла необходимость получить дамп РНР-процесса на Debian 9. Рассмотрим механизм ядра, позволящий создать дамп, и настройку создания дампов в Linux. Ниже будем говорить о создании дампа памяти процесса в Linux, а не дампа ядра при kernel panic – там он иной, см. Kdump на Arch Wiki. Contents Linux Core DumpСигналы и создание дампаGDB – создать…

https://rtfm.co.ua/linux-sozdanie-coredump-pamyati-processa-debian-i-systemd-coredump/
WordPress: использование дочерних тем оформления блога

На RTFM с 2016 года используется тема оформления Iconic One (см. RTFM: переезд и смена оформления), но с небольшими изменениями – добавлено отображение дата публикации поста, просмотры, всякие счётчики, правки в CSS темы. Iconic One постоянно развивается и обновляется, и после каждого апдейта приходится все изменения вносить заново – у меня даже есть пост, в…

https://rtfm.co.ua/wordpress-ispolzovanie-dochernix-tem-oformleniya-bloga/
Kubernetes: знакомство, часть 5 — RBAC авторизация и примеры Role и RoleBinding

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

https://rtfm.co.ua/kubernetes-znakomstvo-chast-5-rbac-avtorizaciya-i-primery-role-i-rolebinding/
Kubernetes: запуск ALB Ingress controller для AWS Elastic Kubernetes Service

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/ Contents Ingress controller typeseksctl – create…

https://rtfm.co.ua/kubernetes-zapusk-alb-ingress-controller-dlya-aws-elastic-kubernetes-service/
S.M.A.R.T: проверка HDD – описание атрибутов, значение атрибутов, утилиты, параметры

Решил проверить диск дома, помнил, что был пост по smartctl – но не ожидал, что он такой толковый (хотя вся информация натырена из других источников, ссылки в конце поста). Ну, или мне кажется таким. В любом случае – незапланированно решил его “перевыпустить” с небольшими обновлениями. Оригинал тут>>>, февраль 2013 года. Contents Обзорsmartctl self-testМодель дискаЗдоровье дискаИнтерпретация…

https://rtfm.co.ua/s-m-a-r-t-proverka-hdd-opisanie-atributov-znachenie-atributov-utility-parametry-2/
AWS: Elastic Kubernetes Service – автоматизация создания кластера, часть 1 – CloudFormation

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

https://rtfm.co.ua/aws-elastic-kubernetes-service-avtomatizaciya-sozdaniya-klastera-chast-1-cloudformation/
AWS: Elastic Kubernetes Service – автоматизация создания кластера, часть 2 — Ansible, eksctl

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

https://rtfm.co.ua/aws-elastic-kubernetes-service-avtomatizaciya-sozdaniya-klastera-chast-2-ansible-eksctl/
Kubernetes: мониторинг с Prometheus

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

https://rtfm.co.ua/kubernetes-monitoring-s-prometheus/
AWS: CloudFormation – использование lists в Parameters

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

https://rtfm.co.ua/aws-cloudformation-ispolzovanie-lists-v-parameters/
AWS Elastic Kubernetes Service: RBAC-авторизация через AWS IAM и RBAC группы

Имеется два новых проекта в Elastic Kubernetes Service (см. AWS: Elastic Kubernetes Service — автоматизация создания кластера, часть 1 — CloudFormation), каждый проект живёт в отдельном своём namespace. Кроме того, имеется два пользователя, разработчика, которым надо дать доступ к этим двум пространствам имён, но только на поды в них и только на определённые read-only операции.…

https://rtfm.co.ua/aws-elastic-kubernetes-service-rbac-avtorizaciya-cherez-aws-iam-i-rbac-gruppy/
Kubernetes: kubectl и kubeconfig – обзор файла, добавление кластера, пользователя и контекста

Аутентификация в Kubernetes может отличаться методами аутентификации, пользователями, правилами кластеров: сам kubectl может использовать различные способы аутентифицаии – сертификаты, логин-пароль сами пользователи могут использовать различные способы – токены, логин-пароль и т.д. и, в конце-концов, мы можем захотеть хранить в настройках доступ к различным кластерам, но иметь возможность манипулировать ими из одного места Для всего этого…

https://rtfm.co.ua/kubernetes-kubectl-i-kubeconfig-obzor-fajla-dobavlenie-klastera-polzovatelya-i-konteksta/
AWS: CloudFormation – пример использования Conditions, Fn::Equals и Fn::If

Имеется стек, в котором среди прочего создаются VPC Peerings, в данном примере – пиринг между VPC нового кластера Elastic Kubernetes Service и VPC стека с Prometheus. Создание стеков и вообще всей этой автоматизации есть в постах AWS Elastic Kubernetes Service: автоматизация создания кластера, часть 1 — CloudFormation и AWS Elastic Kubernetes Service: — автоматизация создания кластера,…

https://rtfm.co.ua/cloudformation-conditions-fn-equals-fn-if/
Google Drive: подключение на Linux Debian 9 с insync-headless

Хочется подключить Google Drive с библиотекой к серверу, что бы запустить Calibre Web, т.к. Nextcloud при больших объёмах совершенно нестабилен, а книг порядка 5 гигабайт (см. Calibre: домашняя онлайн-библиотека в браузере и Moon+ Reader). После долгого выбора клентов – остановился на Insync (15 дней триала, 30 уе стоимость лицензии на одного юзера). Новую версию можно…

https://rtfm.co.ua/google-driv-linux-insync/
Между прочим, рекомендую присоединиться к DevOps-комьюнити - UkrOps:

https://ukrops.club/

Людей много, всегда можно что-то спросить или подсмотреть полезностей.

Не реклама - сам не первый год уже там обитаю)
Всем привет. Сейчас я собираюсь разыграть билет на вебинары DevOps stage и заодно поразбираться с Pulumi
Кому интересно - присоеденяйтесь к стриму, буду рад вас видеть и поболтать 🙂
https://www.twitch.tv/darkctrlok