Containers are an application-centric way to deliver scalable applications on infrastructure of choice. Containers package code and dependencies together, and run similarly to virtual machines but are more portable and resource-efficient. Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications across clusters of hosts. Helm helps define, install, and upgrade complex Kubernetes applications using charts that package application code, dependencies, and configuration.
Kubernetes is big. Really big. It has a steep learning curve, but it's worth it. Get to grips with the basics and understand the key components: Pods, Services and Deployments.
Алексей Петров "Dockerize Me: Distributed PHP applications with Symfony, Dock...Fwdays
В рамках доклада будут рассмотренные следующие аспекты распределённых приложений:
Сервис ориентированная архитектура, жизнь и структура распределённых приложений
Основные понятия Docker преимущества и недостатки
Service discovery и Failure detection при помощи Consul
Orchestration и provisioning Docker контейнеров с помощью Ansible
Схема доставки приложений на базе фремворка Symfony 2, организация масштабируемых решений
If you are like most CFML developers the application you work on has been around for a few years. The task of securing your legacy application code from vulnerabilities can be an overwhelming and time consuming task. Many developers don't know where to start, and never do.
This session will arm you with an approach slaying the legacy security vulnerabilities in your CFML code.
Kubernetes is big. Really big. It has a steep learning curve, but it's worth it. Get to grips with the basics and understand the key components: Pods, Services and Deployments.
Алексей Петров "Dockerize Me: Distributed PHP applications with Symfony, Dock...Fwdays
В рамках доклада будут рассмотренные следующие аспекты распределённых приложений:
Сервис ориентированная архитектура, жизнь и структура распределённых приложений
Основные понятия Docker преимущества и недостатки
Service discovery и Failure detection при помощи Consul
Orchestration и provisioning Docker контейнеров с помощью Ansible
Схема доставки приложений на базе фремворка Symfony 2, организация масштабируемых решений
If you are like most CFML developers the application you work on has been around for a few years. The task of securing your legacy application code from vulnerabilities can be an overwhelming and time consuming task. Many developers don't know where to start, and never do.
This session will arm you with an approach slaying the legacy security vulnerabilities in your CFML code.
PHP is a first class citizen on IIS. A lot has been done in order to make sure that PHP can work well and fast on Windows. We will start by installing PHP with PHP Manager and discussing all the options including what thread safe vs non thread safe and VC6 vs VC9 means. Next we'll take a look at how to optimize the FastCGI IIS extension that Microsoft and Zend developed to provide a secure and performant environment for PHP applications. The last part of this webcast will show how to build PHP with Profile Guided Optimizations (PGO), a technique that can provide a significant performance boost in a wide range of applications.
Pod Sandbox workflow creation from DockershimVictor Morales
This slides were used to explain the K8s pod sandbox creation process used by Dockershim during the Cloud-Native MX meetup. During this presentation is clarified what Dockershim deprecation means and what are the "pause" containers?
A soup to nuts presentation on using Composer and repository servers to manage and leverage shared code libraries for personal projects to the largest enterprise.
DockerCon EU 2015: The Glue is the Hard Part: Making a Production-Ready PaaSDocker, Inc.
Presented by Evan Krall, Site Reliability Engineer, Yelp
Docker is an amazing technology. In particular, its build-once-run-anywhere model unlocks the world of cluster schedulers like Mesos and Kubernetes. These solve many of the problems of running high-scale websites, but introduce new challenges that need addressing.
In this talk, Evan will describe PaaSTA, a PaaS built on top of open source tools including Docker, Mesos, Marathon, and Chronos. PaaSTA provides tooling for developers to quickly turn their microservice into a monitored, highly available application spanning multiple datacenters and cloud regions. Evan will give an overview of the open-source technologies that power PaaSTA, discuss how Yelp has glued these together to give developers control without burdening them with the complexities of the infrastructure, and show the workflow used by developers to update and maintain their services on PaaSTA.
В продолжение темы непрерывной интеграции, Макс расскажет о своем подходе организации непрерывной интеграции и деплоймента в Symfony проектах. Рассказ включает следующие темы:
- Управления зависимостями
- Процесс и инструменты для сборки
- Сервера непрерывной интеграции и в частности Jenkins, плагины к нему, jobs
- Процесс разработки в git
- Процесс выгрузки релиза
- Миграция БД
- Откат релиза
Kubernetes is a platform for running containers at scale.
It’s open-source and standardised, so you can deploy the same app on AWS, Azure, in the data centre and on your laptop. Kubernetes gives you a language to define how your containerized apps should run, and a clustered platform to run them. Kubernetes is everywhere but it’s a complex system with a steep learning curve.
Join Elton Stoneman, Docker Captain and author of Learn Kubernetes in a Month of Lunches for an introduction to the key Kubernetes concepts and tools.
By using a comprehensive feature-filled framework we can build software fast. On the other hand, by decoupling our applications we can build sofware that is independent of our framework and infrastructure choices, and therefore longer lasting.
We can't do both, is one approach always right?
In this talk we'll look at different decoupling techniques, what problems they solve, and when they make sense. We will learn some concrete techniques to discover where we should be investing in decoupling, and when we should let the framework maintainers do the work for us.
Canadian CNCF: "Emissary-ingress 101: An introduction to the CNCF incubation-...Daniel Bryant
By Daniel Bryant, Ambassador Labs We all need to be able to get user traffic into our applications, and your requirements for services running on Kubernetes are no different. "But", I hear you say, "what about the K8s Ingress spec? And how do I observe what's happening under the hood? And who should be responsible for configuring the gateway: dev or ops?" These are all good questions! Join me for a whistle-stop tour of all things emissary-ingress, where we will explore how this new edition to the family of CNCF incubation projects can make your life easier when it comes to routing, observability, and integration into the bigger (people and technology) picture.
How do we get our software out on the Internet of Things? Many assumptions in current deployment practices don't hold up. Devices can be occasionally connected, through low-bandwidth networks and are generally outside of direct control. Manually shuffling around binaries is not an option.
Apache ACE is an open-source Java provisioning tool tackling such challenges.You can manage Java apps and configs in a modular fashion. The foundations of ACE are OSGi, semantic versioning and reliable communication. Pushing out incremental updates and managing numerous devices becomes possible.
PHP is a first class citizen on IIS. A lot has been done in order to make sure that PHP can work well and fast on Windows. We will start by installing PHP with PHP Manager and discussing all the options including what thread safe vs non thread safe and VC6 vs VC9 means. Next we'll take a look at how to optimize the FastCGI IIS extension that Microsoft and Zend developed to provide a secure and performant environment for PHP applications. The last part of this webcast will show how to build PHP with Profile Guided Optimizations (PGO), a technique that can provide a significant performance boost in a wide range of applications.
Pod Sandbox workflow creation from DockershimVictor Morales
This slides were used to explain the K8s pod sandbox creation process used by Dockershim during the Cloud-Native MX meetup. During this presentation is clarified what Dockershim deprecation means and what are the "pause" containers?
A soup to nuts presentation on using Composer and repository servers to manage and leverage shared code libraries for personal projects to the largest enterprise.
DockerCon EU 2015: The Glue is the Hard Part: Making a Production-Ready PaaSDocker, Inc.
Presented by Evan Krall, Site Reliability Engineer, Yelp
Docker is an amazing technology. In particular, its build-once-run-anywhere model unlocks the world of cluster schedulers like Mesos and Kubernetes. These solve many of the problems of running high-scale websites, but introduce new challenges that need addressing.
In this talk, Evan will describe PaaSTA, a PaaS built on top of open source tools including Docker, Mesos, Marathon, and Chronos. PaaSTA provides tooling for developers to quickly turn their microservice into a monitored, highly available application spanning multiple datacenters and cloud regions. Evan will give an overview of the open-source technologies that power PaaSTA, discuss how Yelp has glued these together to give developers control without burdening them with the complexities of the infrastructure, and show the workflow used by developers to update and maintain their services on PaaSTA.
В продолжение темы непрерывной интеграции, Макс расскажет о своем подходе организации непрерывной интеграции и деплоймента в Symfony проектах. Рассказ включает следующие темы:
- Управления зависимостями
- Процесс и инструменты для сборки
- Сервера непрерывной интеграции и в частности Jenkins, плагины к нему, jobs
- Процесс разработки в git
- Процесс выгрузки релиза
- Миграция БД
- Откат релиза
Kubernetes is a platform for running containers at scale.
It’s open-source and standardised, so you can deploy the same app on AWS, Azure, in the data centre and on your laptop. Kubernetes gives you a language to define how your containerized apps should run, and a clustered platform to run them. Kubernetes is everywhere but it’s a complex system with a steep learning curve.
Join Elton Stoneman, Docker Captain and author of Learn Kubernetes in a Month of Lunches for an introduction to the key Kubernetes concepts and tools.
By using a comprehensive feature-filled framework we can build software fast. On the other hand, by decoupling our applications we can build sofware that is independent of our framework and infrastructure choices, and therefore longer lasting.
We can't do both, is one approach always right?
In this talk we'll look at different decoupling techniques, what problems they solve, and when they make sense. We will learn some concrete techniques to discover where we should be investing in decoupling, and when we should let the framework maintainers do the work for us.
Canadian CNCF: "Emissary-ingress 101: An introduction to the CNCF incubation-...Daniel Bryant
By Daniel Bryant, Ambassador Labs We all need to be able to get user traffic into our applications, and your requirements for services running on Kubernetes are no different. "But", I hear you say, "what about the K8s Ingress spec? And how do I observe what's happening under the hood? And who should be responsible for configuring the gateway: dev or ops?" These are all good questions! Join me for a whistle-stop tour of all things emissary-ingress, where we will explore how this new edition to the family of CNCF incubation projects can make your life easier when it comes to routing, observability, and integration into the bigger (people and technology) picture.
How do we get our software out on the Internet of Things? Many assumptions in current deployment practices don't hold up. Devices can be occasionally connected, through low-bandwidth networks and are generally outside of direct control. Manually shuffling around binaries is not an option.
Apache ACE is an open-source Java provisioning tool tackling such challenges.You can manage Java apps and configs in a modular fashion. The foundations of ACE are OSGi, semantic versioning and reliable communication. Pushing out incremental updates and managing numerous devices becomes possible.
DevOps and Hybrid Applications: What You Need to KnowDevOps.com
Although continuous delivery (CD) and DevOps are growing in popularity, there is not much practical information available about how to get started and build automated pipelines across containers and traditional infrastructure.
Particularly, most applications today follow the hybrid model, combining components deployed on containers with services that run on virtual machines (VMs) or public cloud services provided by Amazon Web Services, Google Cloud Platform, and Microsoft Azure.
In this presentation, we’ll provide an overview on how to automate software delivery for hybrid applications that stretch over containers, VMs, and public clouds—from source code commit to deployment in production using Jenkins, Red Hat OpenShift, and Red Hat Ansible Automation—from the ground up.
We’ll cover the basics around continuous delivery and DevOps concepts. However, no previous experience with these practices is required.
Web scale infrastructures with kubernetes and flannelpurpleocean
La capacità di rispondere in poche frazioni di secondo alle richieste degli utenti - indipendentemente dal loro numero - è un fattore determinante per il successo dei servizi sul web. Secondo Amazon, bastano 100 millisecondi di latenza nella risposta per generare una perdita economica di circa l'1% sul
fatturato [1]. In base alle statistiche di Google AdWords, inoltre, il 2015 ha sancito l’ufficiale superamento del numero di interazioni mobile rispetto a quelle desktop [2], con la conseguente riduzione della durata media delle sessioni di navigazione web.
In uno scenario di questo tipo, la razionalizzazione dell’utilizzo delle risorse hardware e la capacità di scalare rispetto al numero di utenti sono fattori determinanti per il successo del business.
In questo talk racconteremo la nostra esperienza di migrazione di soluzioni e-commerce di tipo enterprise in Magento da un’architettura basata su VM tradizionali ad una di tipo software-defined basata su Kubernetes, Flannel e Docker. Discuteremo, quindi, delle reali difficoltà da noi incontrate nel porting su container di soluzioni in produzione e daremo evidenza di come, alla fine di questo lungo viaggio, i nostri sforzi siano stati concretamente premiati dall’aumento di resilienza, affidabilità e automazione della soluzione finale.
A supporto della conversazione, mostreremo i risultati dei benchmark da noi condotti per valutare la scalabilità della nuova architettura presentando delle evidenze delle reali capacità di Kubernetes come strumento di orchestrazione di servizi erogati in Docker container.
Concluderemo l’intervento presentando il nostro progetto di distribuzione geografica dei nodi master di Kubernetes facendo uso di reti SD-WAN per garantire performance e continuità di servizio della soluzione.
In this meetup, Liran Cohen, Cloud platform & DevOps Team Leader, will talk about some of Kubernetes key concepts. We will learn about the architecture of the system; the different resources available in the system; the problems it’s trying to solve, and the model that it uses to manage containerized application deployments.
Containerizing your Security Operations CenterJimmy Mesta
AppSec USA 2016 talk on using containers and Kubernetes to manage a variety of security tools. Includes best practices for securing Kubernetes implementations.
* What are containers, Kubernetes
* How does Kubernetes help on application deployment
* Primary terminologies of Kubernetes
* How the primary Kubernetes components work on basic use-cases.
In this WebHack talk I shared my experience about microservices, Docker, Kubernetes and Kong, an API gateway by Mashape. Since they are based on a real working system, this slides is majorly for how to build the whole thing up, not about detailed internal implementation. Although I included some details and reference in order to make it more comprehensive.
AWS를 사용하는 고객사 중 고급 사용자를 대상으로 하는 ‘AWS 컨테이너 교육’ 입니다. 본 교육에서는 현재 컨테이너 오케스트레이션 툴 중에 가장 관심을 많이 받고 있는 쿠버네티스와 AWS에서 관리형 서비스로 만든 Amazon EKS에 대해 알아봅니다. 쿠버네티스 클러스터를 직접 만들어보고 여러 오픈소스를 활용하여 모니터링, 로깅 등 실제 서비스 환경에서 필요한 기능을 어떻게 구현하는지 실습합니다.
Migrate a on-prem platform to the public cloud with Java - SpringBoot and PCFRoy Braam
This describes a story about a couple of teams that started their migration to the public cloud so the platform becomes available for ~300 teams. War stories, their journey, bloopers and their choices all shared.
Running gRPC Services for Serving Legacy API on KubernetesSungwon Lee
gRPC is best suited for microservice communication. gRPC is fast, clear and powerful. It is an excellent alternative to address the verbose client problem when architecting a microservice infrastructure.
But the legacy environment is always a big hurdle for changes. You must support existing clients that only understand RESTful HTTP API. In other cases, you need to provide RESTful APIs to the outside world. This session suggests solutions to resolve these problems.
The session covers:
- Why the team chose gRPC as the inter-service communication protocol while moving from a monolith to microservices and the challenges they faced.
- How they leveraged Istio to support RESTful APIs using gRPC servers without additional development.
- How they set up CI/CD to deliver API changes (including legacy API) using Helm and Spinnaker.
- What they have learned through it and future improvements.
gRPC는 마이크로서비스 커뮤니케이션에 가장 적합합니다. gRPC는 빠르고 명확하고 강력합니다. 이는 마이크로서비스 인프라를 설계할 때 복잡한 클라이언트의 문제를 해결하는데 있어 훌륭한 대안입니다.
하지만 기존 레거시 환경은 항상 변화의 큰 장애물입니다. RESTful HTTP API만을 이해하는 기존 클라이언트를 지원해야 합니다. 다른 경우, RESTful API를 외부에 제공해야 합니다. 본 세션에서는 이러한 문제를 해결할 솔루션을 제안합니다.
이 세션에서 다루는 내용:
- 팀이 모놀리스에서 마이크로서비스로 전환하면서 서비스 간 커뮤니케이션 프로토콜로 gPRC를 선택한 이유 및 직면했던 난관들
- 추가 개발 없이 gRPC 서버를 이용해 RESTful API를 지원하기 위해 이스티오를 활용한 방법
- 헬름 및 스피네이커를 사용해 API 변경 사항 (레거시 API 포함)을 전달하기 위해 CI/CD를 설정하는 방법
- 이를 통해 배운 것과 앞으로 개선할 점
Kubernetes is a popular open source platform for container orchestration — that is, for the management of applications built out of multiple, largely self-contained containers. Here I describe how is possible integrate application into k8s infrastructure
Scaleable PHP Applications in KubernetesRobert Lemke
Kubernetes is also called the "distributed Linux of the cloud" – which implies that it provides fundamental infrastructure, which can solve a lot of challenges. Let’s see how PHP applications fit into this picture. In this presentation, we are going to explore when Kubernetes is a good fit for operating your PHP application and how it can be done in practice. We’ll look at the whole lifecycle: how to build your application, create or choose the right Docker images, deploy and scale, and how to deal with performance and monitoring. At the end you will have a good understanding about all the different stages and building blocks for running a PHP application with Kubernetes in production.
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
2. What is a Container?
Containers are an application-centric way to
deliver high-performing, scalable applications
on the infrastructure of your choice.
21. Kubernetes comes from the Greek
word κυβερνήτης:, which
means helmsman or ship pilot, ie: the
captainer of a container ship.
"Kubernetes is an open-source system for
automating deployment, scaling, and management
of containerized applications."
23. AKS reduces the complexity and
operational overhead of managing
Kubernetes by offloading much of that
responsibility to Azure.
You only pay for the agent nodes within
your clusters, not for the master nodes
25. Azure Kubernetes Service (AKS)
Get started easily
$ az aks create
$ az aks install-cli
$ az aks get-credentials
$ kubectl get nodes
Azure Kubernetes
Service (AKS)
26. Azure Kubernetes Service (AKS)
Manage an AKS cluster
$ az aks list
$ az aks upgrade
$ kubectl get nodes
$ az aks scale
Azure Kubernetes
Service (AKS)
27. • Group of 1 or more containers
• Shared Storage
• Shared Network
• Same IP-address
• Shared port-range
Pod
10.0.0.1
Storage
Pod
10.0.0.2
Storage
Port 80
Port 8080
Port 80
31. Service
Type: LoadBalancer
Selector
Label: backend
Node 1
Pod
Label: backend
10.0.0.2
Node 0
Pod
Label: backend
10.0.0.1
Node 2
Pod
Label: backend
10.0.0.4
Pod
Label: backend
10.0.0.5
Public ip address:
37.17.208.21
192.168.0.2
32. Pod
10.0.0.1
Pod
10.0.0.2
Pod
10.0.0.3
Service
Type: ClusterIP
Pod
10.0.0.4
Pod
10.0.0.5
Pod
10.0.0.6
Service
Type: ClusterIP
Pod
10.0.0.7
Pod
10.0.0.8
Pod
10.0.0.9
Service
Type: ClusterIP
Service
Type: LoadBalancer
Public ip address:
37.17.208.21
Podquay.io/kubernetes-ingress-controller/
nginx-ingress-controller:0.15.0
Selector
Label: ingresscontroller
Label: ingresscontroller
Ingress
host: gaming.voxxed.cf
serviceName: gamingwebapp
Ingress
host: erp.voxxed.cf
serviceName: erpsvc
Ingress
host: www.voxxed.cf/crm
serviceName: crmsvc
Label: erpLabel: frontend Label: crm
nginx.conf
gaming.voxxed.cf
10.0.0.1
10.0.0.2
10.0.0.3
erp.voxxed.cf
10.0.0.4
10.0.0.5
10.0.0.6
Voxxed.cf/crm
10.0.0.7
10.0.0.8
10.0.0.9
Automatically generated
33.
34. Helm
The best way to find, share, and use software
built for Kubernetes
Manage complexity
Charts can describe complex
apps; provide repeatable
app installs, and serve as a
single point of authority
Easy updates
Take the pain out
of updates with in-
place upgrades and
custom hooks
Simple sharing
Charts are easy to
version, share, and host
on public or private
servers
Rollbacks
Use helm rollout to
roll back to an older
version of a release
with ease
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
Azure Kubernetes
Service (AKS)
35. Helm
Helm Charts helps you define, install, and upgrade
even the most complex Kubernetes application
custom
services
Chart.yml
db
load balancer
ci
…
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
Azure Kubernetes
Service (AKS)
36. Helm Charts
Application definition
Consists of:
• Metadata
• Kubernetes resource definitions
• Configuration
• Documentation
Stored in chart repository
• Any HTTP server that can house YAML/tar files (Azure, GitHub pages, etc.)
• Public repo with community supported charts (eg – Jenkins, Mongo, etc.)
Helm (CLI) + Tiller (sever side)
Release: Instance of chart + values -> Kubernetes
38. Helm values.yaml
The knobs and dials:
A values.yaml file provided with the chart that contains
default values
Use -f to provide your own values overrides
Use --set to override individual values
Use Cases for Multi-Container Pods
The primary purpose of a multi-container Pod is to support co-located, co-managed helper processes for a primary application. There are some general patterns for using helper processes in Pods:
Sidecar containers “help” the main container. Some examples include log or data change watchers, monitoring adapters, and so on. A log watcher, for example, can be built once by a different team and reused across different applications. Another example of a sidecar container is a file or data loader that generates data for the main container.
Proxies, bridges, and adapters connect the main container with the external world. For example, Apache HTTP server or nginx can serve static files. It can also act as a reverse proxy to a web application in the main container to log and limit HTTP requests. Another example is a helper container that re-routes requests from the main container to the external world. This makes it possible for the main container to connect to localhost to access, for example, an external database, but without any service discovery.
While you can host a multi-tier application (such as WordPress) in a single Pod, the recommended way is to use separate Pods for each tier, for the simple reason that you can scale tiers up independently and distribute them across cluster nodes.
When you use Deployments you don’t have to worry about managing the ReplicaSets that they create. Deployments own and manage their ReplicaSets