This is the second part of a mini-series where we discuss how to build distributed stateful real-time applications using actor model and clustering.
The first part: https://www.slideshare.net/PeterCsala/akkademy-iii
Saltconf 2016: Salt stack transport and concurrencyThomas Jackson
Transport modularity within Salt now allows the use of various networks and transports instead of being tied to a single messaging library. Learn about the evolution of transport modularity in SaltStack and what this means for the future of orchestration and management at any scale. Review the scale and performance benefit of concurrency in SaltStack. And discuss some examples of concurrent processing in the Salt Master.
Openstack components as containerized microservicesMiguel Zuniga
The document discusses using OpenStack components as containerized microservices. It describes microservices architecture and why OpenStack is well suited for this approach. Each OpenStack component would be packaged as an independent microservice container using Docker. This allows each component to be deployed and managed separately using container orchestration systems like OpenShift and Kubernetes, improving scalability, debugging, and deployment automation. The presentation provides examples of building Dockerfiles for individual OpenStack services like Keystone and deploying them as microservices on OpenShift.
This document introduces Rancher 2.x, a complete container management platform that provides unified operations across multiple Kubernetes clusters deployed on-premises or in the cloud. It manages Kubernetes deployments on any infrastructure, enables centralized authentication and security policies, and provides monitoring, alerting, logging and self-service environments for developers. Rancher 2 simplifies container administration through its user interface, CLI/API, centralized Helm catalogs, integrated monitoring and alerting, and automated logging.
Containers and OpenStack: Marc Van Hoof, Kumulus: Containers and OpenStackOpenStack
Containers and OpenStack
Audience: Intermediate
Topic: Infrastructure
Abstract: Containers are the new darling of the development world, and many are calling for an end of the IaaS world. But there are still key reasons that IaaS is important even as Container based development becomes the desired path for the development community. We will review containers in the context of their growth in popularity, and look at how OpenStack both continues to support and enable Container solutions, and the latest developments in OpenStack as a containerized solution directly.
Speaker Bio: Marc Van Hoof, Kumulus
Marc van Hoof has been in the technology industry for over 20 years, focused on developing, deploying, and scaling internet applications. He was part of a team that built the first internet data centre in Australia, has worked on some of the largest online real-time events, and advises companies on how to take advantage of the true benefits of migrating to the cloud.
OpenStack Australia Day Government - Canberra 2016
https://events.aptira.com/openstack-australia-day-canberra-2016/
Using galera replication to create geo distributed clusters on the wanSakari Keskitalo
We will show the advantages of having a geo-distributed database cluster and how to create one using Galera Cluster for MySQL. We will also discuss the configuration and status variables that are involved and how to deal with typical situations on the WAN such as slow, untrusted or unreliable links, latency and packet loss. We will demonstrate a multi-region cluster on Amazon EC2 and perform some throughput and latency measurements in real-time.
Topics covered in this presentation, which was used for user group meetings, conferences & webinars:
1. Galera Cluster for MySQL - overview
2. Release 3 New Features:
* WAN Replication
* 5.6 Global Transaction ID (GTID) Support
* MySQL Replication Support
* and more features
3. The Galera Cluster Project
In the first part of Galera Cluster best practices series, we will discuss the following topics:
* ongoing monitoring of the cluster and detection of bottlenecks;
* fine-tuning the configuration based on the actual database workload;
* selecting the optimal State Snapshot Transfer (SST) method;
* backup strategies
(video:http://galeracluster.com/videos/2159/)
Saltconf 2016: Salt stack transport and concurrencyThomas Jackson
Transport modularity within Salt now allows the use of various networks and transports instead of being tied to a single messaging library. Learn about the evolution of transport modularity in SaltStack and what this means for the future of orchestration and management at any scale. Review the scale and performance benefit of concurrency in SaltStack. And discuss some examples of concurrent processing in the Salt Master.
Openstack components as containerized microservicesMiguel Zuniga
The document discusses using OpenStack components as containerized microservices. It describes microservices architecture and why OpenStack is well suited for this approach. Each OpenStack component would be packaged as an independent microservice container using Docker. This allows each component to be deployed and managed separately using container orchestration systems like OpenShift and Kubernetes, improving scalability, debugging, and deployment automation. The presentation provides examples of building Dockerfiles for individual OpenStack services like Keystone and deploying them as microservices on OpenShift.
This document introduces Rancher 2.x, a complete container management platform that provides unified operations across multiple Kubernetes clusters deployed on-premises or in the cloud. It manages Kubernetes deployments on any infrastructure, enables centralized authentication and security policies, and provides monitoring, alerting, logging and self-service environments for developers. Rancher 2 simplifies container administration through its user interface, CLI/API, centralized Helm catalogs, integrated monitoring and alerting, and automated logging.
Containers and OpenStack: Marc Van Hoof, Kumulus: Containers and OpenStackOpenStack
Containers and OpenStack
Audience: Intermediate
Topic: Infrastructure
Abstract: Containers are the new darling of the development world, and many are calling for an end of the IaaS world. But there are still key reasons that IaaS is important even as Container based development becomes the desired path for the development community. We will review containers in the context of their growth in popularity, and look at how OpenStack both continues to support and enable Container solutions, and the latest developments in OpenStack as a containerized solution directly.
Speaker Bio: Marc Van Hoof, Kumulus
Marc van Hoof has been in the technology industry for over 20 years, focused on developing, deploying, and scaling internet applications. He was part of a team that built the first internet data centre in Australia, has worked on some of the largest online real-time events, and advises companies on how to take advantage of the true benefits of migrating to the cloud.
OpenStack Australia Day Government - Canberra 2016
https://events.aptira.com/openstack-australia-day-canberra-2016/
Using galera replication to create geo distributed clusters on the wanSakari Keskitalo
We will show the advantages of having a geo-distributed database cluster and how to create one using Galera Cluster for MySQL. We will also discuss the configuration and status variables that are involved and how to deal with typical situations on the WAN such as slow, untrusted or unreliable links, latency and packet loss. We will demonstrate a multi-region cluster on Amazon EC2 and perform some throughput and latency measurements in real-time.
Topics covered in this presentation, which was used for user group meetings, conferences & webinars:
1. Galera Cluster for MySQL - overview
2. Release 3 New Features:
* WAN Replication
* 5.6 Global Transaction ID (GTID) Support
* MySQL Replication Support
* and more features
3. The Galera Cluster Project
In the first part of Galera Cluster best practices series, we will discuss the following topics:
* ongoing monitoring of the cluster and detection of bottlenecks;
* fine-tuning the configuration based on the actual database workload;
* selecting the optimal State Snapshot Transfer (SST) method;
* backup strategies
(video:http://galeracluster.com/videos/2159/)
SUSE CaaS Platform (SUSE CaaSP) is a container infrastructure platform that automates management tasks to allow customers to focus on development and application deployment. It provides container runtime, orchestration with Kubernetes, persistent storage, networking, security, and logging. At its core is MicroOS, a minimal container-focused operating system designed for large cloud deployments with transactional updates using BTRFS snapshots to easily roll back changes. The beta program for SUSE CaaSP is starting at the end of March 2017.
Rancher provides a complete container management platform that simplifies deploying and managing containers in production. It offers robust container orchestration with Kubernetes, allowing deployment of container workloads within five minutes. Rancher provides a centralized interface for managing the entire container stack, including orchestration, security, networking, storage and monitoring tools. It has gained popularity with over 30 million downloads and support for over 100 enterprise customers.
Devstack is an opinionated installer for Openstack. Gigaspaces Cloudify uses the Ravello cloud to run multiple instances of Devstack, with nested virutalization, each with a different openstack version and configuration
RancherOS is a lightweight Linux distribution built from containers. It is designed to be simple, easy to use, and customizable. It uses cloud-config files and Docker compose files for primary configuration and management of system services and custom applications. The ros CLI provides commands for managing services, the console, Docker engine, OS upgrades, and configuration.
Part 2: What you should know about Elasticity, Scalability and Location Transparency in Reactive systems
In the second of three webinars with live Q/A, we look into how organizations with Reactive systems are able to adaptively scale in an elastic, infrastructure-efficient way, and the role that location transparency plays in distributed Reactive systems. Reactive Streams contributor and deputy CTO at Typesafe, Inc., Viktor Klang reviews what you should know about:
How Reactive systems enable near-linear scalability in order to increase performance proportionally to the allocation of resources, avoiding the constraints of bottlenecks or synchronization points within the system
How elasticity builds upon scalability in Reactive systems to automatically adjust the throughput of varying demand when resources are added or removed proportionally and dynamically at runtime.
The role of location transparency in distributed computing (in systems running on a single node or on a cluster) and how of decoupling runtime instances from their references can embrace network constraints like partial failure, network splits, dropped messages and more.
In the third and final webinar in the series with Jonas Bonér, we go over resiliency, failures vs errors, isolation (and containment), delegation and replication in Reactive systems.
Keystone at Openstack discussed multi-site deployment models for Openstack and the problems with using a shared Keystone database across sites. It introduced Keystone to Keystone (K2K) as a solution that allows federated authentication between Keystone instances. K2K enables each Keystone to act independently while still providing cross-cloud authentication. The presentation covered K2K's authentication flow, configuration, and benefits like independent upgrades and high availability of local users even if the Identity Provider is unavailable. Future work may include high availability and disaster recovery support for the Keystone Identity Provider site.
Open Source Private Cloud Management with OpenStack and Security Evaluation w...XHANI TRUNGU
Nowadays, we hear about terms like, cloud computing, cloud architectures, virtualization technologies, cloud management systems, clustering and cloud security systems. By a first glance these terms are a bit vague, and questions arise about what is a cloud, what is virtualization and finally what is clustering.
Topics covered in this presentation:
1. The difference between traditional (e.g. MySQL) replication and Galera Cluster
2. General Galera Cluster principles
I would like to present our CI Provisioning with Openstack solution and how it improved our development. The CI provisioning is meant to replace your static CI env servers to a auto provisioned during your build stage for every commit.
Abstract:
1. CI Flow Quick view
2. Openstack CI integration maven plugin
3. Orchestration using facters
4. Openstack instance queue for faster provisioning
A presentation on Software Defined Networking, its concepts and application in cloud computing. I gave this presentation at OSCON 2013 in Portland: http://www.oscon.com/oscon2013/public/schedule/detail/31391. It starts with an introduction about SDN and some key concepts from the whitepaper at the Open Networking Foundation (ONF), I explain how OpenFlow and SDN differ, openflow being a standard protocol to control network devices. I then go on to review the many controllers out there and introduce a few key ones like floodlight, opendaylight, nicira. I give an overview of SDN integration in cloudplatform; opennebula, openstack and cloudstack and then gave a quick demo of the OpenDayLight controller.
Introducing Kubernetes Clusters in Rancher - February 2016 Online MeetupShannon Williams
A hands-on guide to deploying applications in Rancher's new Kubernetes environments
Over the last few months our team at Rancher Labs has been adding support for Kubernetes natively within Rancher. Our implementation of Kubernetes takes advantage of Rancher’s platform orchestration, simple UI, access control, networking and storage capabilities to deliver simple to deploy Kubernetes clusters for managing applications. In our February meetup we introduced this new support, and discussed how these Kubernetes environments compare with our native Docker environments and help you understand when and how each can be used to power your containers.
Our new support for Kubernetes will be available in Rancher in our next major release in March.
In this recording we demonstrated:
- Deploying a Kubernetes Cluster within Rancher
- Launching Kubernetes Pods and Replication Controllers
- Leveraging Rancher services within Kubernetes
- Understanding the differences between Kubernetes and native Docker environments
- Service discovery, scheduling and high availability within Kubernetes
This document discusses the role of SDN controllers in OpenStack. It provides background on SDN controllers and OpenStack. SDN controllers can be integrated with OpenStack via the Neutron module to manage network flows and enable programmability. Several SDN controllers that integrate with Neutron are discussed, including OpenDaylight, OpenContrail, and ONOS. The document outlines how these controllers plug into Neutron and their current status in OpenStack. It provides guidance on how new SDN controllers can join OpenStack.
Introducing Project Longhorn - April 2016 Rancher Online MeetupShannon Williams
In April, Rancher Labs introduced Project Longhorn, a new way to deliver persistent storage for cloud- and container-based deployments. In this online meetup, Rancher labs founders Sheng Liang, Darren Shepherd, and Shannon Williams to introduce and discuss Project Longhorn, a microservices-based solution for distributed, resilient block storage for containers.
To try out Longhorn visit http://github.com/rancher/longhorn
Kubernetes capacity management involves using autoscaling tools like the Horizontal Pod Autoscaler (HPA), Vertical Pod Autoscaler (VPA), and Cluster Autoscaler (CA) to dynamically adjust resource allocation based on metrics and demand. It is important to ask the right questions about key performance indicators and resource needs when setting up autoscaling. While autoscalers can scale resources in minutes, various factors like metric collection intervals and provisioning times mean it may take significantly longer, from 4 to over 12 minutes, to fully scale resources in response to load changes.
Compute node HA - current upstream developmentAdam Spiers
Short presentation made for OpenStack London "Tokyo Aftermath" meetup, on current upstream activity in the OpenStack HA developers community around high availability for compute nodes.
Workshop: Deploying and Scaling Node.js with KubernetesRoss Kukulinski
From Ross Kukulinski's workshop at Node Interactive US 2016.
As companies look to build out their next-generation architectures, Node.js and containerization are emerging as two major components for powering rapid technical innovation. In this technical workshop, we will show you how to get started with Node.js, Docker and Kubernetes and cover the pitfalls that often occur when starting and how to avoid them. Most of this workshop will be a live demonstration as we dockerize a Node.js application, deploy to Kubernetes, and scale to handle a large amount of traffic.
In this webinar slideshow, Typesafe Deputy CTO Viktor Klang looks into the world of microservices to see how these architectures emerge from the constraints of reality. We'll review the problems imposed by reality, and show how they can not only be solved, but how the constraints free us from misconceptions that are otherwise very easy to acquire.
We will also explore how distributed systems are at the heart of microservices-based architectures and how communication shapes the structure, behavior and development of the software.
From the Philly Kubernetes December 2016 Meetup.
https://www.meetup.com/Kubernetes-Philly/events/234829676/
Kubernetes accelerates technical and business innovation through rapid development and deployment of applications. Learn how to deploy, scale, and manage your applications in a containerized environments using Kubernetes.
In this 60-minute workshop, Ross Kukulinski will review fundamental Kubernetes concepts and architecture and then will show how to containerize and deploy a multi-tier web application to Kubernetes.
Topics that will be covered include:
• Working with the Kubernetes CLI (kubectl)
• Pods, Deployments, & Services
• Manual & Automated Application Scaling
• Troubleshooting and debugging
• Persistent storage
Reactive microservices with play and akkascalaconfjp
This document discusses making microservices reactive using Play and Akka in Scala. It describes how to make a customer microservice resilient to data store failures and elastic to varying workloads. The solution involves clustering the data store using Postgres BDR, deploying the microservices to multiple nodes using ConductR for elastic scaling, and replicating cache updates across nodes using Akka data replication.
This document discusses chaos engineering and failure injection testing. It defines chaos engineering as experimenting on distributed systems to build confidence in their ability to withstand turbulent conditions. It then lists various types of failures that can be injected, such as killing daemons, simulating network failures, and stressing applications. The document advocates monitoring systems during these tests, analyzing the results, and repeating the process. It also references Netflix's chaos monkey tool and discusses reproducing past failures versus introducing random failures.
SUSE CaaS Platform (SUSE CaaSP) is a container infrastructure platform that automates management tasks to allow customers to focus on development and application deployment. It provides container runtime, orchestration with Kubernetes, persistent storage, networking, security, and logging. At its core is MicroOS, a minimal container-focused operating system designed for large cloud deployments with transactional updates using BTRFS snapshots to easily roll back changes. The beta program for SUSE CaaSP is starting at the end of March 2017.
Rancher provides a complete container management platform that simplifies deploying and managing containers in production. It offers robust container orchestration with Kubernetes, allowing deployment of container workloads within five minutes. Rancher provides a centralized interface for managing the entire container stack, including orchestration, security, networking, storage and monitoring tools. It has gained popularity with over 30 million downloads and support for over 100 enterprise customers.
Devstack is an opinionated installer for Openstack. Gigaspaces Cloudify uses the Ravello cloud to run multiple instances of Devstack, with nested virutalization, each with a different openstack version and configuration
RancherOS is a lightweight Linux distribution built from containers. It is designed to be simple, easy to use, and customizable. It uses cloud-config files and Docker compose files for primary configuration and management of system services and custom applications. The ros CLI provides commands for managing services, the console, Docker engine, OS upgrades, and configuration.
Part 2: What you should know about Elasticity, Scalability and Location Transparency in Reactive systems
In the second of three webinars with live Q/A, we look into how organizations with Reactive systems are able to adaptively scale in an elastic, infrastructure-efficient way, and the role that location transparency plays in distributed Reactive systems. Reactive Streams contributor and deputy CTO at Typesafe, Inc., Viktor Klang reviews what you should know about:
How Reactive systems enable near-linear scalability in order to increase performance proportionally to the allocation of resources, avoiding the constraints of bottlenecks or synchronization points within the system
How elasticity builds upon scalability in Reactive systems to automatically adjust the throughput of varying demand when resources are added or removed proportionally and dynamically at runtime.
The role of location transparency in distributed computing (in systems running on a single node or on a cluster) and how of decoupling runtime instances from their references can embrace network constraints like partial failure, network splits, dropped messages and more.
In the third and final webinar in the series with Jonas Bonér, we go over resiliency, failures vs errors, isolation (and containment), delegation and replication in Reactive systems.
Keystone at Openstack discussed multi-site deployment models for Openstack and the problems with using a shared Keystone database across sites. It introduced Keystone to Keystone (K2K) as a solution that allows federated authentication between Keystone instances. K2K enables each Keystone to act independently while still providing cross-cloud authentication. The presentation covered K2K's authentication flow, configuration, and benefits like independent upgrades and high availability of local users even if the Identity Provider is unavailable. Future work may include high availability and disaster recovery support for the Keystone Identity Provider site.
Open Source Private Cloud Management with OpenStack and Security Evaluation w...XHANI TRUNGU
Nowadays, we hear about terms like, cloud computing, cloud architectures, virtualization technologies, cloud management systems, clustering and cloud security systems. By a first glance these terms are a bit vague, and questions arise about what is a cloud, what is virtualization and finally what is clustering.
Topics covered in this presentation:
1. The difference between traditional (e.g. MySQL) replication and Galera Cluster
2. General Galera Cluster principles
I would like to present our CI Provisioning with Openstack solution and how it improved our development. The CI provisioning is meant to replace your static CI env servers to a auto provisioned during your build stage for every commit.
Abstract:
1. CI Flow Quick view
2. Openstack CI integration maven plugin
3. Orchestration using facters
4. Openstack instance queue for faster provisioning
A presentation on Software Defined Networking, its concepts and application in cloud computing. I gave this presentation at OSCON 2013 in Portland: http://www.oscon.com/oscon2013/public/schedule/detail/31391. It starts with an introduction about SDN and some key concepts from the whitepaper at the Open Networking Foundation (ONF), I explain how OpenFlow and SDN differ, openflow being a standard protocol to control network devices. I then go on to review the many controllers out there and introduce a few key ones like floodlight, opendaylight, nicira. I give an overview of SDN integration in cloudplatform; opennebula, openstack and cloudstack and then gave a quick demo of the OpenDayLight controller.
Introducing Kubernetes Clusters in Rancher - February 2016 Online MeetupShannon Williams
A hands-on guide to deploying applications in Rancher's new Kubernetes environments
Over the last few months our team at Rancher Labs has been adding support for Kubernetes natively within Rancher. Our implementation of Kubernetes takes advantage of Rancher’s platform orchestration, simple UI, access control, networking and storage capabilities to deliver simple to deploy Kubernetes clusters for managing applications. In our February meetup we introduced this new support, and discussed how these Kubernetes environments compare with our native Docker environments and help you understand when and how each can be used to power your containers.
Our new support for Kubernetes will be available in Rancher in our next major release in March.
In this recording we demonstrated:
- Deploying a Kubernetes Cluster within Rancher
- Launching Kubernetes Pods and Replication Controllers
- Leveraging Rancher services within Kubernetes
- Understanding the differences between Kubernetes and native Docker environments
- Service discovery, scheduling and high availability within Kubernetes
This document discusses the role of SDN controllers in OpenStack. It provides background on SDN controllers and OpenStack. SDN controllers can be integrated with OpenStack via the Neutron module to manage network flows and enable programmability. Several SDN controllers that integrate with Neutron are discussed, including OpenDaylight, OpenContrail, and ONOS. The document outlines how these controllers plug into Neutron and their current status in OpenStack. It provides guidance on how new SDN controllers can join OpenStack.
Introducing Project Longhorn - April 2016 Rancher Online MeetupShannon Williams
In April, Rancher Labs introduced Project Longhorn, a new way to deliver persistent storage for cloud- and container-based deployments. In this online meetup, Rancher labs founders Sheng Liang, Darren Shepherd, and Shannon Williams to introduce and discuss Project Longhorn, a microservices-based solution for distributed, resilient block storage for containers.
To try out Longhorn visit http://github.com/rancher/longhorn
Kubernetes capacity management involves using autoscaling tools like the Horizontal Pod Autoscaler (HPA), Vertical Pod Autoscaler (VPA), and Cluster Autoscaler (CA) to dynamically adjust resource allocation based on metrics and demand. It is important to ask the right questions about key performance indicators and resource needs when setting up autoscaling. While autoscalers can scale resources in minutes, various factors like metric collection intervals and provisioning times mean it may take significantly longer, from 4 to over 12 minutes, to fully scale resources in response to load changes.
Compute node HA - current upstream developmentAdam Spiers
Short presentation made for OpenStack London "Tokyo Aftermath" meetup, on current upstream activity in the OpenStack HA developers community around high availability for compute nodes.
Workshop: Deploying and Scaling Node.js with KubernetesRoss Kukulinski
From Ross Kukulinski's workshop at Node Interactive US 2016.
As companies look to build out their next-generation architectures, Node.js and containerization are emerging as two major components for powering rapid technical innovation. In this technical workshop, we will show you how to get started with Node.js, Docker and Kubernetes and cover the pitfalls that often occur when starting and how to avoid them. Most of this workshop will be a live demonstration as we dockerize a Node.js application, deploy to Kubernetes, and scale to handle a large amount of traffic.
In this webinar slideshow, Typesafe Deputy CTO Viktor Klang looks into the world of microservices to see how these architectures emerge from the constraints of reality. We'll review the problems imposed by reality, and show how they can not only be solved, but how the constraints free us from misconceptions that are otherwise very easy to acquire.
We will also explore how distributed systems are at the heart of microservices-based architectures and how communication shapes the structure, behavior and development of the software.
From the Philly Kubernetes December 2016 Meetup.
https://www.meetup.com/Kubernetes-Philly/events/234829676/
Kubernetes accelerates technical and business innovation through rapid development and deployment of applications. Learn how to deploy, scale, and manage your applications in a containerized environments using Kubernetes.
In this 60-minute workshop, Ross Kukulinski will review fundamental Kubernetes concepts and architecture and then will show how to containerize and deploy a multi-tier web application to Kubernetes.
Topics that will be covered include:
• Working with the Kubernetes CLI (kubectl)
• Pods, Deployments, & Services
• Manual & Automated Application Scaling
• Troubleshooting and debugging
• Persistent storage
Reactive microservices with play and akkascalaconfjp
This document discusses making microservices reactive using Play and Akka in Scala. It describes how to make a customer microservice resilient to data store failures and elastic to varying workloads. The solution involves clustering the data store using Postgres BDR, deploying the microservices to multiple nodes using ConductR for elastic scaling, and replicating cache updates across nodes using Akka data replication.
This document discusses chaos engineering and failure injection testing. It defines chaos engineering as experimenting on distributed systems to build confidence in their ability to withstand turbulent conditions. It then lists various types of failures that can be injected, such as killing daemons, simulating network failures, and stressing applications. The document advocates monitoring systems during these tests, analyzing the results, and repeating the process. It also references Netflix's chaos monkey tool and discusses reproducing past failures versus introducing random failures.
Presentation was delivered in a fault tolerance class which talk about the achieving fault tolerance in databases by making use of the replication.Different commercial databases were studied and looked into the approaches they took for replication.Then based on the study an architecture was suggested for military database design using an asynchronous approach and making use of the cluster patterns.
Series of Unfortunate Netflix Container Events - QConNYC17aspyker
Project Titus is Netflix's container runtime on top of Amazon EC2. Titus powers algorithm research through massively parallel model training, media encoding, data research notebooks, ad hoc reporting, NodeJS UI services, stream processing and general micro-services. As an update from last year's talk, we will focus on the lessons learned operating one of the largest container runtimes on a public cloud. We'll cover the migration we've seen of applications and frameworks from VM's to containers. We will cover the operational issues with containers that only showed after we reached the large scale (1000's of container hosts, 100's of thousands of containers launched weekly) we are currently supporting. We'll touch base on the unique features we have added to help both batch and microservices run across a variety of runtimes (Java, R, NodeJS, Python, etc) and how higher level frameworks have taken advantage of Titus's scheduling capabilities.
This document discusses high availability and disaster recovery strategies for IBM MQ. It introduces concepts like multi-instance queue managers, HA clusters, and MQ appliance HA groups that provide redundancy and failover capabilities. Automatic client reconnection is also covered, which allows MQ clients to seamlessly reconnect after a queue manager failure.
Database as a Service (DBaaS) on KubernetesObjectRocket
Learn about ObjectRocket's adventures in Kubernetes. We'll cover why we chose Kubernetes for our DBaaS platform, the challenges we faced, and how we overcame them. A presentation for DevWeek Austin 2018.
Microservices, Kubernetes, and Application Modernization Done RightLightbend
In this talk by David Ogren, Enterprise Architect at Lightbend, we draw from experiences helping our clients successfully create, migrate to, and manage cloud-native system architectures. We look at some of the common pitfalls and anti-patterns of modernization efforts, and some of the best practices for taking an incremental approach to transforming legacy systems.
See the full post with video on the Lightbend blog: https://www.lightbend.com/blog/microservices-kubernetes-application-modernization
Best Practice for Achieving High Availability in MariaDBMariaDB plc
This document discusses high availability and MariaDB replication. It defines high availability and outlines key components like data redundancy, failover solutions, and monitoring. It then describes MariaDB replication in detail, covering asynchronous and semi-synchronous replication as well as Galera cluster synchronous replication. MaxScale is introduced as a tool for load balancing, monitoring, and facilitating failovers in MariaDB replication topologies.
Digital Transformation with Kubernetes, Containers, and MicroservicesLightbend
See the full presentation here: https://www.lightbend.com/blog/digital-transformation-kubernetes-containers-microservices
In this talk by David Ogren, Principal Enterprise Architect at Lightbend, we draw from experiences helping our clients successfully create, migrate to, and manage cloud-native system architectures.
The talk belonging to this slide deck is basically a "sequel" of the "Patterns of resilience" talk. It briefly repeats a few core statements of the previous talk and then starts to complete the picture.
First, it creates a more complete pattern taxonomy and locates the taxonomy of the previous talk in it. Then, it repeats a few of the patterns of the first talk concerning core architectural patterns and error detection patterns, enriching them with some additional information.
After that the core part of this talk starts: The error recovery and error mitigation patterns. The talk presents several well known and not so well known patterns from those two domains, partially augmented with code examples. Then after, briefly touching fault treatment patterns, some more patterns of the error prevention domain are presented.
The talk concludes with a small guideline, how to identify the appropriate pattern set for a concrete situation.
As always, the voice track and therefore a lot of information is missing in this slide deck. Yet, I hope that it provides a few helpful pointers.
Maria DB Galera Cluster for High AvailabilityOSSCube
Want to understand how to set high availability solutions for MySQL using MariaDB Galera Cluster? Join this webinar, and learn from experts. During this webinar, you will also get guidance on how to implement MariaDB Galera Cluster.
This document discusses configuring and implementing a MariaDB Galera cluster for high availability on 3 Ubuntu servers. It provides steps to install MariaDB with Galera patches, configure the basic Galera settings, and start the cluster across the nodes. Key aspects covered include state transfers methods, Galera architecture, and important status variables for monitoring the cluster.
Learn strategies to maintain your database's high availability even during peak use periods. MariaDB's Field CTO Max Mether offers best practices for high availability, disaster recovery and more.
This document summarizes principles of deadlock and concurrency mechanisms in operating systems. It discusses deadlock prevention, avoidance, detection and integrated strategies. The dining philosophers problem is presented as an example. Concurrency mechanisms in UNIX, Linux, Solaris and Windows are also summarized, including pipes, messages, shared memory, semaphores, signals, atomic operations, spinlocks, mutex locks, condition variables, and wait functions.
Slides from my talk at QCon New York on how Netflix increases resiliency through failure, covering the Chaos Monkey, Chaos Gorilla, Latency Monkey, and others from the Simian Army.
Mtc learnings from isv & enterprise interactionGovind Kanshi
This is one of the dated presentation for which I keep getting requests for, please do reach out to me for status on various things as Azure keeps fixing/innovating whole of things every day.
There are bunch of other things I can help you on to ensure you can take advantage of Azure platform for oss, .net frameworks and databases.
Mtc learnings from isv & enterprise (dated - Dec -2014)Govind Kanshi
This is little dated deck for our learnings - I keep getting multiple requests for it. I have removed one slide for access permissions (RBAC -which are now available).
Disenchantment: Netflix Titus, Its Feisty Team, and DaemonsC4Media
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2Gmuwlg.
Andrew Spyker talks about Netflix's feisty team’s work across container runtimes, scheduling & control plane, and cloud infrastructure integration. He also talks about the demons they’ve found on this journey covering operability, security, reliability and performance. Filmed at qconsf.com.
Andrew Spyker worked to mature the technology base of Netflix Container Cloud (Project Titus) within the development team. Recently, he moved into a product management role collaborating with supporting Netflix infrastructure dependencies as well as supporting new container cloud usage scenarios including user on-boarding, feature prioritization/delivery and relationship management.
Resilience Planning & How the Empire Strikes BackC4Media
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/1pGpnbd.
Bhakti Mehta approaches best practices for building resilient, stable and predictable services: preventing cascading failures, timeouts pattern, retry pattern, circuit breakers and other techniques which have been pervasively used at Blue Jeans Network. Filmed at qconsf.com.
Bhakti Mehta is the author of "RESTful Java Patterns and Best practices” and "Developing RESTful Services with JAX-RS 2.0, WebSockets, and JSON”. Bhakti is a Senior Software Engineer at Blue Jeans Network. As part of her current role, she works on developing RESTful services that can be consumed by ISV partners and the developer community.
Similar to Akka-demy (a.k.a. How to build stateful distributed systems) II/II (20)
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsPeter Muessig
The UI5 tooling is the development and build tooling of UI5. It is built in a modular and extensible way so that it can be easily extended by your needs. This session will showcase various tooling extensions which can boost your development experience by far so that you can really work offline, transpile your code in your project to use even newer versions of EcmaScript (than 2022 which is supported right now by the UI5 tooling), consume any npm package of your choice in your project, using different kind of proxies, and even stitching UI5 projects during development together to mimic your target environment.
Artificia Intellicence and XPath Extension FunctionsOctavian Nadolu
The purpose of this presentation is to provide an overview of how you can use AI from XSLT, XQuery, Schematron, or XML Refactoring operations, the potential benefits of using AI, and some of the challenges we face.
Unveiling the Advantages of Agile Software Development.pdfbrainerhub1
Learn about Agile Software Development's advantages. Simplify your workflow to spur quicker innovation. Jump right in! We have also discussed the advantages.
Flutter is a popular open source, cross-platform framework developed by Google. In this webinar we'll explore Flutter and its architecture, delve into the Flutter Embedder and Flutter’s Dart language, discover how to leverage Flutter for embedded device development, learn about Automotive Grade Linux (AGL) and its consortium and understand the rationale behind AGL's choice of Flutter for next-gen IVI systems. Don’t miss this opportunity to discover whether Flutter is right for your project.
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...XfilesPro
Wondering how X-Sign gained popularity in a quick time span? This eSign functionality of XfilesPro DocuPrime has many advancements to offer for Salesforce users. Explore them now!
Project Management: The Role of Project Dashboards.pdfKarya Keeper
Project management is a crucial aspect of any organization, ensuring that projects are completed efficiently and effectively. One of the key tools used in project management is the project dashboard, which provides a comprehensive view of project progress and performance. In this article, we will explore the role of project dashboards in project management, highlighting their key features and benefits.
Liberarsi dai framework con i Web Component.pptxMassimo Artizzu
In Italian
Presentazione sulle feature e l'utilizzo dei Web Component nell sviluppo di pagine e applicazioni web. Racconto delle ragioni storiche dell'avvento dei Web Component. Evidenziazione dei vantaggi e delle sfide poste, indicazione delle best practices, con particolare accento sulla possibilità di usare web component per facilitare la migrazione delle proprie applicazioni verso nuovi stack tecnologici.
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesQuickdice ERP
Explore the seamless transition to e-invoicing with this comprehensive guide tailored for Saudi Arabian businesses. Navigate the process effortlessly with step-by-step instructions designed to streamline implementation and enhance efficiency.
How Can Hiring A Mobile App Development Company Help Your Business Grow?ToXSL Technologies
ToXSL Technologies is an award-winning Mobile App Development Company in Dubai that helps businesses reshape their digital possibilities with custom app services. As a top app development company in Dubai, we offer highly engaging iOS & Android app solutions. https://rb.gy/necdnt
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfVALiNTRY360
Salesforce Healthcare CRM, implemented by VALiNTRY360, revolutionizes patient management by enhancing patient engagement, streamlining administrative processes, and improving care coordination. Its advanced analytics, robust security, and seamless integration with telehealth services ensure that healthcare providers can deliver personalized, efficient, and secure patient care. By automating routine tasks and providing actionable insights, Salesforce Healthcare CRM enables healthcare providers to focus on delivering high-quality care, leading to better patient outcomes and higher satisfaction. VALiNTRY360's expertise ensures a tailored solution that meets the unique needs of any healthcare practice, from small clinics to large hospital systems.
For more info visit us https://valintry360.com/solutions/health-life-sciences
Microservice Teams - How the cloud changes the way we workSven Peters
A lot of technical challenges and complexity come with building a cloud-native and distributed architecture. The way we develop backend software has fundamentally changed in the last ten years. Managing a microservices architecture demands a lot of us to ensure observability and operational resiliency. But did you also change the way you run your development teams?
Sven will talk about Atlassian’s journey from a monolith to a multi-tenanted architecture and how it affected the way the engineering teams work. You will learn how we shifted to service ownership, moved to more autonomous teams (and its challenges), and established platform and enablement teams.
8 Best Automated Android App Testing Tool and Framework in 2024.pdfkalichargn70th171
Regarding mobile operating systems, two major players dominate our thoughts: Android and iPhone. With Android leading the market, software development companies are focused on delivering apps compatible with this OS. Ensuring an app's functionality across various Android devices, OS versions, and hardware specifications is critical, making Android app testing essential.
3. 3
Previously on Lost…
Akka helps you to build
High performing
Low LatencyDecentralized
Elastic
Resilient
Extensible
Highly Concurrent
Distributed Systems
5. 5
8 Fallacies of Distributed Computing
• The network is reliable
• Latency is zero
• Bandwidth is infinite
• The network is secure
• Topology doesn't change
• There is one administrator
• Transport cost is zero
• The network is homogeneous
13. 13
Low Latency – Routers
• Router & Rootees
• Dynamic or Static (Hocon)
• Group vs Pool
• Dynamic resizability
• Strategies
• RoundRobin, Broadcast
• ConsistentHashing
• SmallestMailbox
14. 14
Low Latency – Remoting
• Built on top of Akka.IO
• Peer 2 Peer communication
• akka.tcp://ActSys@node-51:8000/user/mysample
• IActorRef vs IActorSelection
• Identify, await ResolveOne
• Remote deploy capability
15. 15
Decentralized – Node Ring
• Seed node
• No leader election
• Nor leader selection
• Peer-To-Peer
• No SPOF
• At least once delivery
• Gossip Protocol
16. 16
Resilience – Cluster Membership
• Built on top of Remoting
• Failure detection
• Phi value
• Graceful shutdown
• Cluster aware routers
• Deploy rootees dynamically
– Elasticity
• Fine-grained control
17. 17
Resilience – Supervision
• Arrange actors into hierarchies
• Guardian actor can
– Resume, Restart, Stop, Escalate
• Strategies
– One-for-one, All-for-one, (Stopping)
• Let it crash philosophy
• Resurrection
– Props with Reflection
• PoisonPill
• Monitoring
– Lifecycle hooks
– DeathWatch
– Reaper pattern
19. 19
Resilience – Persistence
• Supports EventSourcing + CQRS
• Journals
• Snapshots
• Receive a Command
• Can be rejected
• Persist an Event
• Mash them into a snapshot
• Async callback
• Internally uses stashing
• AggregateRoot
– Parent can persist children events
• Recover events
• Replaying all events
• OnReplaySuccess
– When all events are processed
• Delete API???
• Lot’s different Plugin
23. 23
Consistency – At least Once
• Acknowledgement protocol
• Caller side
• It is a persistent actor
• Delivery
– Wrapping msg + deliveryId
• Resend ability
• ConfirmDelivery
• Callee side
• Confirm
24. 24
Elasticity – Sharding
• Shard
– Group of Actors
– Based on a hash function
– N / node
• ShardRegion
– Group of Shards
– Routes requets
– Handels actors’ lifecycles
– 1 / node
• Shard Coordinator
– Router between shards
– Distributes shards „evenly” among
nodes
– Semi-dynamic
– 1 / cluster (ClusterSingleton)
• Graceful shutdown
– Request it from ShardRegion
– It will propagate all the way down
– Asks for Hands-off
– Leaves the cluster
29. 29
Summary
• Building a Distributed System is hard
• Akka tries to help you ease this pain
• Be aware what quality attributes are chasing
Editor's Notes
C- Every read receives the most recent write or an error
A - Every request receives a (non-error) response – without guarantee that it contains the most recent write
P - The system continues to operate despite an arbitrary number of messages being dropped (or delayed) by the network between nodes
If there is a network failure that splits the processing nodes into two groups that cannot talk to each other, then the goal would be to allow processing to continue in both subgroups