Talk from O'Reilly Software Architecture Conference San Jose 2019 Microservices and containers have taken the software industry by storm. Transitioning from a monolith to microservices enables you to deploy your application more frequently, independently, and reliably. However, microservice architecture has its own challenges, and it has to deal with the same problems encountered while designing distributed systems. Enter service mesh technology to the rescue. A service mesh reduces the complexity associated with microservices and provides functionality like load balancing, service discovery, traffic management, circuit breaking, telemetry, fault injection, and more. Istio is one of the best implementations of a service mesh at this point, while Kubernetes provides a platform for running microservices and automating deployment of containerized applications. Join Samir Behara to go beyond the buzz and understand microservices and service mesh technologies.
gRPC is an open source RPC framework that makes it easy to build a distributed system across multiple languages. It uses HTTP/2 for transport, has features like streaming, load balancing and authentication built-in. It is used widely at Google and is now available open source with implementations in 10 languages. gRPC benefits from being layered on HTTP/2 for interoperability and has a pluggable architecture for advanced features like monitoring and proxies.
This document discusses inter-process communication in microservices architectures using gRPC and Protocol Buffers. It begins with an overview of moving from a monolithic to a microservices architecture and the challenges of communication between independent services. It then covers considerations for building high performance APIs and why gRPC and Protocol Buffers are well-suited for microservices. The remainder details what gRPC is, how Protocol Buffers work, and how gRPC uses Protocol Buffers to provide a framework for remote procedure calls between services.
Linux offers an extensive selection of programmable and configurable networking components from traditional bridges, encryption, to container optimized layer 2/3 devices, link aggregation, tunneling, several classification and filtering languages all the way up to full SDN components. This talk will provide an overview of many Linux networking components covering the Linux bridge, IPVLAN, MACVLAN, MACVTAP, Bonding/Team, OVS, classification & queueing, tunnel types, hidden routing tricks, IPSec, VTI, VRF and many others.
gRPC is an open source framework that allows for communication between services using HTTP/2 and Protocol Buffers. It provides features like low latency and high scalability. Key benefits include focusing on service design, language interoperability, and growing community support. gRPC uses Protocol Buffers for serialization, HTTP/2 for transport, and an IDL for service definitions. It supports various request-response and streaming call types and provides libraries in many languages.
In a lot of companies, machine deployment is a delicate subject: every administrator has his own recipe, using CD-ROMs, static binary images deployed via the network, peer delegation ... However, one solution makes the consensus when it comes to automated mass deployments ( except in the Cloud ): PXE boot. The main cons are that the deployment and the management of such a service is a pain, and every OS has its own installation automation system. This is where Cobbler saves the day: it enables a painless and reliably to create a PXE service, usable on either virtual or physical machines, while beeing the most agnostic possible towards the target OSes and its preconfiguration system (preseed, kickstart, sysprep, ...) while offering the possibility to handle lots of configuration parameters in a modular fashion (network, partitionning, user accounts, configuration management agent...) This conference aims to introduce the audience to the general concepts of Cobbler, and some scenarios where it would be a useful solution.
OpenStack 운영을 통해 얻은 교훈을 공유합니다. 목차 1. TOAST 클라우드 지금의 모습 2. OpenStack 선택의 이유 3. 구성의 어려움과 극복 사례 4. 활용 사례 5. 풀어야 할 문제들 대상 - TOAST 클라우드를 사용하고 싶은 분 - WMI를 처음 들어보시는 분
This document provides an overview and agenda for a Docker networking deep dive presentation. The presentation covers key concepts in Docker networking including libnetwork, the Container Networking Model (CNM), multi-host networking capabilities, service discovery, load balancing, and new features in Docker 1.12 like routing mesh and secured control/data planes. The agenda demonstrates Docker networking use cases like default bridge networks, user-defined bridge networks, and overlay networks. It also covers networking drivers, Docker 1.12 swarm mode networking functionality, and how concepts like routing mesh and load balancing work.
From the bottom-up approach to introduction the iptables, including the architecture of iptables/ebtables and the some usage of iptables.
BPF is one of the fastest emerging technologies of the Linux kernel. The talk provides an introduction to Cilium which brings the powers of BPF to Kubernetes and other orchestration systems to provide highly scalable and efficient networking, security and load balancing for containers and microservices. The talk will provide an introduction to the capabilities of Cilium today but also deep dives into the emerging roadmap involving networking at the socket layer and service mesh datapath capabilities to provide highly efficient connectivity between cloud native apps and sidecar proxies.
SOSCON 2019.10.17 What are the methods for packet processing on Linux? And how fast are each packet processing methods? In this presentation, we will learn how to handle packets on Linux (User space, socket filter, netfilter, tc), and compare performance with analysis of where each packet processing is done in the network stack (hook point). Also, we will discuss packet processing using XDP, an in-kernel fast-path recently added to the Linux kernel. eXpress Data Path (XDP) is a high-performance programmable network data-path within the Linux kernel. The XDP is located at the lowest level of access through SW in the network stack, the point at which driver receives the packet. By using the eBPF infrastructure at this hook point, the network stack can be expanded without modifying the kernel. Daniel T. Lee (Hoyeon Lee) @danieltimlee Daniel T. Lee currently works as Software Engineer at Kosslab and contributing to Linux kernel BPF project. He has interest in cloud, Linux networking, and tracing technologies, and likes to analyze the kernel's internal using BPF technology.
This document discusses building microservices with gRPC and NATS. It begins with an introduction to microservices architecture and challenges in communication between microservices. It then covers using gRPC and Protocol Buffers to build high performance APIs, as well as using NATS for an event-driven architecture with publish-subscribe messaging. Code demos are provided for gRPC and NATS. The document concludes with a discussion of event sourcing and various messaging patterns when using NATS.
- gRPC is an open source RPC framework originally developed by Google in 2015. It uses HTTP/2 for transport, Protocol Buffers as the interface definition language, and provides features like authentication, bidirectional streaming and interface definitions. - Compared to REST, gRPC is faster, more efficient through binary encoding (Protocol Buffers), supports bidirectional streaming, and generates client and server code. However, it lacks browser support and has fewer available tools. - gRPC is best suited for internal microservices communication where high performance is required and tight coupling is acceptable. It supports unary, server streaming, client streaming and bidirectional streaming RPC patterns.
Presented as part of Container Conference 2018: www.containerconf.in Deep dive into Kubernetes networking "Container networking is pretty complex and Kubernetes has taken a unique approach to solve container networking challenges. Both simplicity and scalability have been key design principles of Kubernetes networking. This session will illustrate kubernetes networking concepts with examples and demos. Best practises and considerations for deploying container networks in production using Kubernetes will be covered. This session will also go into latest developments in Kubernetes networking like Network policy and Service policy using Istio."
This document discusses improving the developer experience through GitOps and ArgoCD. It recommends building developer self-service tools for cloud resources and Kubernetes to reduce frustration. Example GitLab CI/CD pipelines are shown that handle releases, deployments to ECR, and patching apps in an ArgoCD repository to sync changes. The goal is to create faster feedback loops through Git operations and automation to motivate developers.
Munander Maan presented an introduction to gRPC, a modern, fast and efficient open-source framework developed by Google. The presentation covered what gRPC is, how it works internally using Protocol Buffers, its advantages over REST APIs, how it achieves scalability, and different types of APIs that can be built with gRPC. The agenda included deep dives into gRPC internals, comparisons with REST, scalability, and API types.
The document discusses Docker networking and Kubernetes networking concepts. It provides an overview of Docker networking and how containers on the same host can communicate. It then summarizes key Kubernetes concepts like pods, replication controllers, services and networking. It demonstrates how to create a replication controller and service for a Tomcat application. It also discusses exposing services externally and additional resources for learning about Docker and Kubernetes.
HTTP, REST Basics REST API Design Guide, best practices when designing a REST API SOAP, REST, GraphQL, and gRPC Which API Format Shall I Choose?
1. ONAP was evolving from a "SOA-like" architecture to a "pure microservices" architecture. MSB provided transparent service registration and communication for ONAP microservices. 2. Istio is an open source service mesh that provides reliability, security, observability and manageability for microservices. It introduces a centralized control plane to manage distributed sidecars. 3. Integrating Istio with ONAP would provide benefits like distributed tracing, metrics visibility and service graph for ONAP microservices. It is important to address challenges in supporting multiple network interfaces and coarse-grained services.
This presentation was made by Mangesh Patankar (Developer Advocate - IBM Cloud) as part of Container Conference 2018: www.containerconf.in. "How do we make microservices resilient and fault-tolerant? How do we enforce policy decisions, such as fine-grained access control and rate limits? How do we enable timeouts/retries, health checks, etc.? A service-mesh architecture attempts to resolve these issues by extracting the common resiliency features needed by a microservices framework away from the applications and frameworks and into the platform itself. Istio provides an easy way to create this service mesh."
The document provides an overview of microservices and service meshes, and uses Istio as an example service mesh implementation. It discusses how Istio allows microservices to be developed independently while providing capabilities like discovery, load balancing, resilience, metrics and tracing through lightweight proxies. The document then demonstrates what happens at each step of a request's lifecycle as it travels through an application protected by Istio's service mesh. Specifically, it shows how Istio components like Pilot, Envoy, Mixer and Citadel work together to provide control, observability and security for microservices.
Provide a high level introduction to Istio Service Mesh. Discuss the problems it addresses, it's architecture and it's use cases
Istio is a service mesh platform that provides service discovery, load balancing, failure recovery, metrics and monitoring for microservices. It consists of Envoy proxies that intercept and manage network communication between services, Pilot which configures the proxies, and Mixer which handles policy enforcement. When a request is made, it is intercepted by Envoy proxies, routed to the appropriate service, and telemetry from the transaction is collected and reported by the proxies and Mixer. Istio provides control and visibility across microservices running on Kubernetes.
Developing and managing hundreds (or maybe thousands) of microservices at scale is a challenge for both development and operations teams. We have seen over the last years the appearance of new frameworks dedicated to deliver ‘Cloud Native’ applications by providing a set of (out of box) building blocks. Most of these frameworks integrate microservices concerns at the code level. Recently, we have seen the emerging of a new pattern known as sidecar or proxy promoting to push all these common concerns outside of the business code and provides them on the edge by integrate a new layer to the underlying platform called Service Mesh. Istio is one of the leading Service Mesh implementing sidecar pattern. We will go during the presentation throw the core concepts behind Istio, the capabilities that provides to manage, secure and observe microservices and how it gives a new breath for both developers and operations. The presentation will be guided by a sequence of demo exposing Istio capabilities.
Microservices Architectures (aka Distributed Architectures) are the new paradigm to develop and deploy applications in Cloud environments. These architectures resolve several problems and improve the new life cycle in DevOps teams, however new challenges should be resolved or managed. OpenShift Service Mesh (based in Istio, Kiali, Jaeger) allows us to manage this new paradigm easily without to change our current applications. These slides will introduce you in OpenShift Service Mesh as a new component on OpenShift to manage your microservices architectures. Carlos Vicens worked on it with me. Slides used during a coordinated meetup between three different groups in Madrid: - OpenShift Madrid Group: https://www.meetup.com/es/openshift_spain/events/258188248/ - Microservices Madrid Group: https://www.meetup.com/es-ES/Microservicios/events/258188068/ - Madrid Spring User Group: https://www.meetup.com/es/madrid-spring-user-group/events/258322835/
This document provides an overview of service mesh and the Istio observability tool Kiali. It begins with an introduction to service mesh and what problems it addresses in microservices architectures. Istio is presented as an open source service mesh that provides traffic management, observability, and policy enforcement for microservices. Kiali is specifically discussed as a tool for visualizing the topology and traffic flow of services in an Istio mesh. The rest of the document provides an agenda and then a live demo of Kiali's features using the Bookinfo sample application on Istio.
This presentation gave an introduction to Istio and service mesh, as well as a description of how service mesh fits in with API Management.
It's been two years since we introduced the Istio project to the Triangle Kubernetes Meetup group. This presentation will be a brief re-introduction of the Istio project, and a summary of the updates to the Istio project since its 1.0 release.
Presentation in IBM Cloud Meet-up of Toronto https://www.meetup.com/IBM-Cloud-Toronto/events/253903913/?_xtd=gatlbWFpbF9jbGlja9oAJGU3NmM3ZjdmLWE2NzgtNGVlNC1iNGZiLTBlZGE5ZWM0NDZjOQ
One of the most complex challenges in realizing microservice architecture is not building the services themselves, but building and governing the communication between services. Most microservices developers have to take care of complex inter-service communication logic as part of their service development. Service Mesh has emerged as a solution to overcome the challenges that we have in microservices communication. Since most of the inter-service communication requirements are quite generic across all microservices implementations, we can think about offloading all such tasks to a different layer, so that we can keep the service code independent. This presentation will discuss the following: 1) Why we need a Service Mesh? 2) Fundamentals of Service Mesh 3) Introduction to Istio 4) What's new in Istio 1.0. 5) Seamless integration of Ballerina and Istio
A service mesh is necessary for organizations adopting microservices and dynamic cloud-native infrastructure. Traditional host-based network security must be replaced with modern service-based security to accommodate the highly dynamic nature of modern runtime environments. In this talk, we will look at Connect a significant new feature in Consul that provides secure service-to-service communication with automatic TLS encryption and identity-based authorization. We will look at the features of Connect, how to enable Connect in an existing Consul cluster and how easy it is to secure service-to-service communication using Connect.
This document discusses designing microservices architectures. It begins by defining microservices as small, autonomous services that work together. The benefits of microservices include continuous innovation, independent deployments, and fault isolation. Challenges include complexity, testing, and service discovery. Key principles in designing microservices are modeling them around business domains, making each independently deployable, and decentralizing all components. Additional topics covered include service boundaries, communication patterns, data management, and monitoring microservices applications. The document provides examples and recommendations for implementing microservices on Azure.
This document discusses moving a microservices architecture to the next level with service meshes. It introduces Istio as a service mesh for Kubernetes that provides traffic management, observability, and security capabilities. Istio uses the sidecar proxy pattern to enable features like mutual TLS, timeouts, retries, and circuit breakers to help solve challenges of microservices distribution like service discovery, load balancing, and failure handling. The document demonstrates Istio's capabilities and recommends adopting its features incrementally to gain experience before fully implementing a service mesh.
This document provides an overview of cloud native reference architectures. It discusses key concepts like microservices, serverless computing, containers, Kubernetes, service meshes, and event-driven architectures. These concepts are presented along with examples of how to implement messaging, integration, security and other capabilities in a cloud native way.
The document discusses microservices architecture on Kubernetes. It describes microservices as minimal, independently deployable services that interact to provide broader functionality. It contrasts this with monolithic applications. It then covers key aspects of microservices like ownership, tradeoffs compared to traditional applications, common adoption cases, and differences from SOA. It provides a reference architecture diagram for microservices on Kubernetes including components like ingress, services, CI/CD pipelines, container registry, and data stores. It also discusses design considerations for Kubernetes microservices including using Kubernetes services for service discovery and load balancing, and using an API gateway for routing between clients and services.
Netflix morphed from a private datacenter based monolithic application into a cloud based Microservices architecture. This talk highlights the pros and cons of building software applications as suites of independently deployable services, as well as practical approaches for overcoming challenges - especially in the context of an elastic but ephemeral cloud ecosystem. What were the lessons learned while building and managing these services? What are the best practices and anti-patterns?
Microservice Powered Orchestration discusses using a microservice architecture and microservice bus (MSB) solution for ONAP orchestration. Some key points: - Microservices allow ONAP components to scale independently and integrate diverse seed codes, improving reliability and scalability. - MSB provides service registration, discovery, and routing to address challenges of direct client-microservice communication and dynamic service endpoints. - MSB features include high availability, separated gateways, extensibility through plugins, service health monitoring, and acting as a single entry point for ONAP. - MSB could fit into ONAP by handling service discovery and routing between components, and providing a reverse proxy for web applications
The document discusses strategic integration options for connecting CICS and J2EE applications. It outlines two main integration models: exposing CICS applications as web services with an endpoint in a front-end system or directly in CICS. Key integration technologies covered include web services, JCA, and WebSphere products like Process Server and ESB. The document recommends choosing an approach based on business and technical factors like standards, skills, performance, and transaction requirements.
Slide of the tutorial entitled "Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Emerging Trends" held at UMAP'24: 32nd ACM Conference on User Modeling, Adaptation and Personalization (July 1, 2024 | Cagliari, Italy)
Revolutionize your transportation processes with our cutting-edge RPA software. Automate repetitive tasks, reduce costs, and enhance efficiency in the logistics sector with our advanced solutions.
Everything that I found interesting about machines behaving intelligently during June 2024
Password Rotation in 2024 is still Relevant
This presentation explores the practical application of image description techniques. Familiar guidelines will be demonstrated in practice, and descriptions will be developed “live”! If you have learned a lot about the theory of image description techniques but want to feel more confident putting them into practice, this is the presentation for you. There will be useful, actionable information for everyone, whether you are working with authors, colleagues, alone, or leveraging AI as a collaborator. Link to presentation recording and slides: https://bnctechforum.ca/sessions/details-of-description-part-ii-describing-images-in-practice/ Presented by BookNet Canada on June 25, 2024, with support from the Department of Canadian Heritage.