What every SRE should know about GNU/Linux shell related internals: file denoscriptors, pipes, terminals, user sessions, process groups and daemons
It is common nowadays how little people know about the internals of their shells, terminals, and relations between processes. All are taken primarily for granted without really thinking about such aspects.
It is common nowadays how little people know about the internals of their shells, terminals, and relations between processes. All are taken primarily for granted without really thinking about such aspects.
Для чего нужны pause контейнеры в Kubernetes?
На каждой рабочей ноде K8s-кластера всегда можно увидеть pause контейнеры. Но для чего они нужны? Ведь когда мы создаем Pod, мы не давали инструкций для создания pause контейнеров, так откуда они появляются? Если мы их не создавали, вероятно K8s кластер создает их автоматически?
Pause контейнер — это суть сетевой модели Pod. Pause контейнер работает в namespace с запущенным пользовательским контейнером в рамках одного Pod.
Перед тем, как запустить пользовательский контейнер, kubelet делает вызов
Pause контейнер — это контейнер, который существует в каждом Pod, он по сути представляет собой шаблон или родительский контейнер, из которого все новые контейнеры в модуле наследуют namespace. Контейнер паузы запускается, а затем переходит в sleep.
На каждой рабочей ноде K8s-кластера всегда можно увидеть pause контейнеры. Но для чего они нужны? Ведь когда мы создаем Pod, мы не давали инструкций для создания pause контейнеров, так откуда они появляются? Если мы их не создавали, вероятно K8s кластер создает их автоматически?
Pause контейнер — это суть сетевой модели Pod. Pause контейнер работает в namespace с запущенным пользовательским контейнером в рамках одного Pod.
Перед тем, как запустить пользовательский контейнер, kubelet делает вызов
RuntimeService.RunPodSandbox в CRI (Container Runtime Interface) для создания окружения-песочницы, где будет настроена базовая операционная среда, среди которых сеть (network). Как только среда будет установлена, kubelet запустит уже наш контейнер.Pause контейнер — это контейнер, который существует в каждом Pod, он по сути представляет собой шаблон или родительский контейнер, из которого все новые контейнеры в модуле наследуют namespace. Контейнер паузы запускается, а затем переходит в sleep.
Прекращайте оправдываться
Как-то раз, давным-давно, я проходил собеседование в Universal Music Group. Мне задали вопрос "Что вы будете делать, если ваш сервер начал безбожно тормозить". Их до глубины души поразил мой ответ. Я ответил на это вопросом "А этот сервер раньше работал?". Мне сказали "Да."
Тогда я ответил — я буду сидеть и выяснять, почему это произошло. Если сервер раньше работал, а сейчас не работает, значит что-то изменилось. Надо найти настоящую причину. Возможно, вы обнаружите, что у вас удесятерилось количество клиентов. Ну хорошо. Тогда можете поднимать дополнительный сервер, и ставить кеш. Но, если клиентов столько-же, а всё тормозит — берегитесь! Я буду сидеть и тупить в логах, пока не найду настоящую причину этой проблемы. Как я буду знать, что я нашёл настоящую причину? Всё сразу-же заработает.
Как-то раз, давным-давно, я проходил собеседование в Universal Music Group. Мне задали вопрос "Что вы будете делать, если ваш сервер начал безбожно тормозить". Их до глубины души поразил мой ответ. Я ответил на это вопросом "А этот сервер раньше работал?". Мне сказали "Да."
Тогда я ответил — я буду сидеть и выяснять, почему это произошло. Если сервер раньше работал, а сейчас не работает, значит что-то изменилось. Надо найти настоящую причину. Возможно, вы обнаружите, что у вас удесятерилось количество клиентов. Ну хорошо. Тогда можете поднимать дополнительный сервер, и ставить кеш. Но, если клиентов столько-же, а всё тормозит — берегитесь! Я буду сидеть и тупить в логах, пока не найду настоящую причину этой проблемы. Как я буду знать, что я нашёл настоящую причину? Всё сразу-же заработает.
Хабр
Прекращайте оправдываться
Привет, человек, %хабраюзер%, %юзернейм%, программист. Вот именно так я себя и чувствую. Этот пост полон ненависти. Их тут просто зашкаливает. Но да вот, наболело. Но, при всём при этом, я скажу в...
Raft distributed consensus algorithm visualization
Протокол Raft используется для достижения консенсуса в Kubernetes (etcd)
http://thesecretlivesofdata.com/raft/
Протокол Raft используется для достижения консенсуса в Kubernetes (etcd)
http://thesecretlivesofdata.com/raft/
Мониторинг в Apache NiFi
NiFi предоставляет возможность сообщать о состоянии, статистике, показателях и информации мониторинга внешним службам с помощью интерфейса задач отчетности (Reporting Task).
Apache NiFi предоставляет несколько вариантов задач отчетности для поддержки внешних систем мониторинга, таких как Ambari, Grafana, Prometheus и т. д. Разработчик может создать пользовательскую задачу отчетности или настроить встроенные задачи для отправки метрик NiFi во внешние системы мониторинга.
https://habr.com/ru/company/neoflex/blog/695926/
NiFi предоставляет возможность сообщать о состоянии, статистике, показателях и информации мониторинга внешним службам с помощью интерфейса задач отчетности (Reporting Task).
Apache NiFi предоставляет несколько вариантов задач отчетности для поддержки внешних систем мониторинга, таких как Ambari, Grafana, Prometheus и т. д. Разработчик может создать пользовательскую задачу отчетности или настроить встроенные задачи для отправки метрик NiFi во внешние системы мониторинга.
https://habr.com/ru/company/neoflex/blog/695926/
Forwarded from AWS Notes
📓 Choosing the right AWS service to deploy your website or web application in the AWS Cloud — AWS Prenoscriptive Guidance:
https://docs.aws.amazon.com/prenoscriptive-guidance/latest/website-deployment-services
▫️ Static: S3 + CloudFront
▫️ JS framework + CI/CD: Amplify
▫️ Serverless + low-cost: API Gateway + Lambda + S3
▫️ WordPress/Drupal/Joomla: LightSail
▫️ Containers: App Runner or ECS or Fargate
▫️ Kubernetes: EKS
▫️ On-premises: EKS Anywhere or ECS Anywhere
▫️ Old-style managed environment: Beanstalk
▫️ Self-managed: EC2
#design
https://docs.aws.amazon.com/prenoscriptive-guidance/latest/website-deployment-services
▫️ Static: S3 + CloudFront
▫️ JS framework + CI/CD: Amplify
▫️ Serverless + low-cost: API Gateway + Lambda + S3
▫️ WordPress/Drupal/Joomla: LightSail
▫️ Containers: App Runner or ECS or Fargate
▫️ Kubernetes: EKS
▫️ On-premises: EKS Anywhere or ECS Anywhere
▫️ Old-style managed environment: Beanstalk
▫️ Self-managed: EC2
#design
Forwarded from Технологии | Нейросети | Боты
This media is not supported in your browser
VIEW IN TELEGRAM
🔥2🍾1
Жизнь DNS-запроса в Kubernetes
В Kubernetes запросы DNS следуют по определенному пути для разрешения IP-адреса имени хоста. В этом блоге вы шаг за шагом узнаете о жизни DNS-запроса в Kubernetes.
Service discovery в Kubernetes важнейший компонент общей архитектуры, который позволяет перенаправлять входящие запросы на правильные workloads, работающие в кластере. DNS играет ключевую роль в этом процессе.
Понимание того, как работает DNS и Service discovery в Kubernetes, может помочь при отладке. Это позволяет лучше понять поток трафика в кластере и диагностировать любые проблемы, которые могут возникнуть.
В Kubernetes запросы DNS следуют по определенному пути для разрешения IP-адреса имени хоста. В этом блоге вы шаг за шагом узнаете о жизни DNS-запроса в Kubernetes.
Service discovery в Kubernetes важнейший компонент общей архитектуры, который позволяет перенаправлять входящие запросы на правильные workloads, работающие в кластере. DNS играет ключевую роль в этом процессе.
Понимание того, как работает DNS и Service discovery в Kubernetes, может помочь при отладке. Это позволяет лучше понять поток трафика в кластере и диагностировать любые проблемы, которые могут возникнуть.
This media is not supported in your browser
VIEW IN TELEGRAM
Google Bard AI
Хорошая новость для пользоваталей Google Search Engine, так как Google решили запустить Bard AI, который представляет из себя аналог ChatGPT, позволяющую вам получать ответы в режиме диалога. Дата запуска Google Bard AI ожидается в феврале 2023 года.
https://blog.google/technology/ai/bard-google-ai-search-updates/
Хорошая новость для пользоваталей Google Search Engine, так как Google решили запустить Bard AI, который представляет из себя аналог ChatGPT, позволяющую вам получать ответы в режиме диалога. Дата запуска Google Bard AI ожидается в феврале 2023 года.
https://blog.google/technology/ai/bard-google-ai-search-updates/
This media is not supported in your browser
VIEW IN TELEGRAM
Teller
Основная цель Teller — помочь разработчикам и предоставить безопасный способ использования секретов без hardcode их в исходном коде, оболочке или их неправильного размещения в неправильных файлах. С помощью файла
Teller имеет еще несколько функций, так как он может использоваться для целей DevSecOps в процессе CI для проверки секретов в исходном коде, а также используется в качестве инструмента, который позволяет не хранить секреты в файлах, логах и и т.д.
Основная цель Teller — помочь разработчикам и предоставить безопасный способ использования секретов без hardcode их в исходном коде, оболочке или их неправильного размещения в неправильных файлах. С помощью файла
teller.yaml вы можете настроить Teller для подключения к хранилищу секретов Vault, Consul, AWS Secret Manager, Google Secret Manager и многих других, чтобы безопасно извлекать из них секреты.Teller имеет еще несколько функций, так как он может использоваться для целей DevSecOps в процессе CI для проверки секретов в исходном коде, а также используется в качестве инструмента, который позволяет не хранить секреты в файлах, логах и и т.д.