Correlation in Latency Analysis
This article was my response to Amazon’s writing assessment when I was interviewed.https://rakyll.medium.com/correlation-in-latency-analysis-419357b93287
11 facts about real-world container use
Containers enable organizations to accelerate delivery cycles and rapidly scale their operations to meet the demands of today's fast-paced market. As more organizations migrate their workloads to containers, the container ecosystem is expanding and evolving to accommodate these increasingly dynamic environments. In this report, we examined more than 1.5 billion containers run by tens of thousands of Datadog customers to understand how image registries, service meshes, networking, and other technologies are being used in real-world container environments.https://www.datadoghq.com/container-report
PostgreSQL Benchmarks: Apple ARM M1 MacBook Pro 2020
https://info.crunchydata.com/blog/postgresql-benchmarks-apple-arm-m1-macbook-pro-2020
https://info.crunchydata.com/blog/postgresql-benchmarks-apple-arm-m1-macbook-pro-2020
Series: Deploying ASP.NET Core applications to Kubernetes
https://andrewlock.net/series/deploying-asp-net-core-applications-to-kubernetes
Part 1 - An Introduction to Kubernetes: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-1-an-introduction-to-kubernetes
Part 2 - Configuring resources with YAML manifests: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-2-configuring-resources-with-yaml-manifests
Part 3 - An introduction to deploying applications with Helm: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-3-deploying-applications-with-helm
Part 4 - Creating a Helm chart for an ASP.NET Core app: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-4-creating-a-helm-chart-for-an-aspnetcore-app
Part 5 - Setting environment variables for ASP.NET Core apps in a Helm chart: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-5-setting-environment-variables-in-a-helm-chart
Part 6 - Adding health checks with Liveness, Readiness, and Startup probes: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-6-adding-health-checks-with-liveness-readiness-and-startup-probes
Part 7 - Running database migrations when deploying to Kubernetes: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-7-running-database-migrations
Part 8 - Running database migrations using jobs and init containers: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-8-running-database-migrations-using-jobs-and-init-containers
Part 9 - Monitoring Helm releases that use jobs and init containers: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-9-monitoring-helm-releases-that-use-jobs-and-init-containers
Part 10 - Creating an 'exec-host' deployment for running one-off commands: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-10-creating-an-exec-host-deployment-for-running-one-off-commands
Part 11 - Avoiding downtime in rolling deployments by blocking SIGTERM: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-11-avoiding-downtime-in-rolling-deployments-by-blocking-sigterm
Part 12 - Tips, tricks, and edge cases: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-12-tips-tricks-and-edge-cases
https://andrewlock.net/series/deploying-asp-net-core-applications-to-kubernetes
Part 1 - An Introduction to Kubernetes: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-1-an-introduction-to-kubernetes
Part 2 - Configuring resources with YAML manifests: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-2-configuring-resources-with-yaml-manifests
Part 3 - An introduction to deploying applications with Helm: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-3-deploying-applications-with-helm
Part 4 - Creating a Helm chart for an ASP.NET Core app: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-4-creating-a-helm-chart-for-an-aspnetcore-app
Part 5 - Setting environment variables for ASP.NET Core apps in a Helm chart: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-5-setting-environment-variables-in-a-helm-chart
Part 6 - Adding health checks with Liveness, Readiness, and Startup probes: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-6-adding-health-checks-with-liveness-readiness-and-startup-probes
Part 7 - Running database migrations when deploying to Kubernetes: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-7-running-database-migrations
Part 8 - Running database migrations using jobs and init containers: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-8-running-database-migrations-using-jobs-and-init-containers
Part 9 - Monitoring Helm releases that use jobs and init containers: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-9-monitoring-helm-releases-that-use-jobs-and-init-containers
Part 10 - Creating an 'exec-host' deployment for running one-off commands: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-10-creating-an-exec-host-deployment-for-running-one-off-commands
Part 11 - Avoiding downtime in rolling deployments by blocking SIGTERM: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-11-avoiding-downtime-in-rolling-deployments-by-blocking-sigterm
Part 12 - Tips, tricks, and edge cases: https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-12-tips-tricks-and-edge-cases
kraken
Kraken is a P2P-powered Docker registry that focuses on scalability and availability. It is designed for Docker image management, replication, and distribution in a hybrid cloud environment. With pluggable backend support, Kraken can easily integrate into existing Docker registry setups as the distribution layer.https://github.com/uber/kraken
Kraken has been in production at Uber since early 2018. In our busiest cluster, Kraken distributes more than 1 million blobs per day, including 100k 1G+ blobs. At its peak production load, Kraken distributes 20K 100MB-1G blobs in under 30 sec.
Network-layer DDoS attack trends for Q3 2020
https://blog.cloudflare.com/network-layer-ddos-attack-trends-for-q3-2020
https://blog.cloudflare.com/network-layer-ddos-attack-trends-for-q3-2020
Getting to the Core: Benchmarking Cloudflare’s Latest Server Hardware
https://blog.cloudflare.com/getting-to-the-core
https://blog.cloudflare.com/getting-to-the-core
Не хотелось бы оказаться Наташей в подобной ситуации? Как многие уже знают, этой осенью «Флант» представил свой Managed Kubernetes. Теперь можно получить кластеры K8s как услугу, размещая их в любой удобной инфраструктуре: у любимых российских и зарубежных облачных провайдеров, на своем железе (on-premises) и даже комбинируя эти варианты.
Все эти кластеры настраиваются согласно лучшим практикам известных специалистов и поставляются в по-настоящему готовом виде: внутри не просто «голый» Kubernetes, а интегрированная платформа, чтобы сразу запускать приложения в production. Продуманные (преднастроенные) метрики Prometheus и графики Grafana, автомасштабирование, усовершенствованный Nginx Ingress и балансировка трафика, автовыпуск SSL-сертификатов, веб-панель Kubernetes Dashboard… и вот это всё.
Плюс, конечно, поддержка от инженеров, которые специализируются именно на этом (а не ищут новую возможность продать свои облачные ресурсы). Всё это — по очень разумной цене, доступной не только для enterprise, но и небольшим компаниям и стартапам, уже понимающим, как им поможет Kubernetes.
Подробности (основные компоненты кластеров, онлайн-калькулятор, тарифы и уровни SLA) см. на сайте компании.
Все эти кластеры настраиваются согласно лучшим практикам известных специалистов и поставляются в по-настоящему готовом виде: внутри не просто «голый» Kubernetes, а интегрированная платформа, чтобы сразу запускать приложения в production. Продуманные (преднастроенные) метрики Prometheus и графики Grafana, автомасштабирование, усовершенствованный Nginx Ingress и балансировка трафика, автовыпуск SSL-сертификатов, веб-панель Kubernetes Dashboard… и вот это всё.
Плюс, конечно, поддержка от инженеров, которые специализируются именно на этом (а не ищут новую возможность продать свои облачные ресурсы). Всё это — по очень разумной цене, доступной не только для enterprise, но и небольшим компаниям и стартапам, уже понимающим, как им поможет Kubernetes.
Подробности (основные компоненты кластеров, онлайн-калькулятор, тарифы и уровни SLA) см. на сайте компании.
flant.ru
DevOps as a Service: обслуживание под ключ / Услуги / Флант
DevOps as a Service от компании Флант. Поддерживаем инфраструктуру, создаем комфортную среду для разработки, внедряем лучшие DevOps-практики.
How To Use Traefik v2 as a Reverse Proxy for Docker Containers on Ubuntu 20.04
https://www.digitalocean.com/community/tutorials/how-to-use-traefik-v2-as-a-reverse-proxy-for-docker-containers-on-ubuntu-20-04
https://www.digitalocean.com/community/tutorials/how-to-use-traefik-v2-as-a-reverse-proxy-for-docker-containers-on-ubuntu-20-04
Ten Commandments of Egoless Programming
1. Understand and accept that you will make mistakes.https://blog.codonomics.com/2020/11/ten-commandments-of-egoless-programming.html
2. You are not your code.
3. No matter how much "karate" you know, someone else will always know more.
4. Don't rewrite code without consultation.
5. Treat people who know less than you with respect and patience.
6. The only constant in the world is change.
7. The only true authority stems from knowledge, not from position.
8. Fight for what you believe, but gracefully accept defeat.
9. Don't be "the guy in the room".
10. Critique code instead of people – be kind to the coder, not to the code.
kubectl-images
kubectl-images makes use of the kubectl command. It first calls kubectl get pods to retrieve pods details and filters out the container image information of each pod, then prints out the final result in a table view.https://github.com/chenjiandongx/kubectl-images
Self-Service Platform Development Made Easy with Pulumi
https://medium.com/@danfhern/self-service-platform-development-made-easy-with-pulumi-4e2cf150e93c
https://medium.com/@danfhern/self-service-platform-development-made-easy-with-pulumi-4e2cf150e93c
PowerfulSeal
PowerfulSeal injects failure into your Kubernetes clusters, so that you can detect problems as early as possible. It allows for writing scenarios describing complete chaos experiments.https://github.com/powerfulseal/powerfulseal
SRE Teams
Dafiti
Creditas
TOTVS
How interesting companies build Site Reliability Engineering in the real-world.Hash
Hash is a Brazilian fintech building the next-generation of payments infrastructure.https://sreteams.substack.com/p/hash
Dafiti
Dafiti Group is the starting point of fashion in Latin America.https://sreteams.substack.com/p/dafiti
Creditas
Creditas is the leading 100% digital lending and consumer solutions platform in Latin America.https://sreteams.substack.com/p/creditas
TOTVS
TOTVS is the largest technology company in Brazil.https://sreteams.substack.com/p/totvs
ctlptl
ctlptl (pronounced "cattle paddle") is a CLI for declaratively setting up local Kubernetes clusters.https://github.com/tilt-dev/ctlptl
Inspired by kubectl and ClusterAPI's clusterctl, you declare your local cluster with YAML and use ctlptl to set it up.
Concurrent and Distributed Systems
Videos: https://www.youtube.com/playlist?list=PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB
This course considers two closely related topics, Concurrent Systems and Distributed Systems, over 16 lectures. The aim of the first half of the course is to introduce concurrency control concepts and their implications for system design and implementation. The aims of the latter half of the course are to study the fundamental characteristics of distributed systems, including their models and architectures; the implications for software design; some of the techniques that have been used to build them; and the resulting details of good distributed algorithms and applications.Course page: https://www.cst.cam.ac.uk/teaching/2021/ConcDisSys
Videos: https://www.youtube.com/playlist?list=PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB
Authentication between microservices using Kubernetes identities
https://learnk8s.io/microservices-authentication-kubernetes
https://learnk8s.io/microservices-authentication-kubernetes