Practical Site Reliability Engineering
Pethuru Raj Chelliah Shreyash Naithani Shailender Singh更新时间:2021-06-10 19:08:49
最新章节:Leave a review - let other readers know what you thinkcoverpage
Title Page
Dedication
About Packt
Why subscribe?
Packt.com
Contributors
About the authors
About the reviewers
Packt is searching for authors like you
Preface
Who this book is for
What this book covers
To get the most out of this book
Download the example code files
Download the color images
Conventions used
Get in touch
Reviews
Demystifying the Site Reliability Engineering Paradigm
Setting the context for practical SRE
Characterizing the next-generation software systems
Characterizing the next-generation hardware systems
Moving toward hybrid IT and distributed computing
Envisioning the digital era
The cloud service paradigm
The ubiquity of cloud platforms and infrastructures
The growing software penetration and participation
Plunging into the SRE discipline
The challenges ahead
The need for highly reliable platforms and infrastructures
The need for reliable software
The emergence of microservices architecture
Docker enabled containerization
Containerized microservices
Kubernetes for container orchestration
Resilient microservices and reliable applications
Reactive systems
Reactive systems are highly reliable
The elasticity of reactive systems
Highly reliable IT infrastructures
The emergence of serverless computing
The vitality of the SRE domain
The importance of SREs
Toolsets that SREs typically use
Summary
Microservices Architecture and Containers
What are microservices?
Microservice design principles
Deploying microservices
Container platform-based deployment tools
Code as function deployment
Programming language selection criteria in AWS Lambda
Virtualization-based platform deployment
Practical examples of microservice deployment
A container platform deployment example with Kubernetes
Code as function deployment
Example 1 – the Apex deployment tool
Example 2 – the Apex deployment tool
Example 3 – the Serverless deployment tool
Virtual platform-based deployment using Jenkins or TeamCity
Microservices using Spring Boot and the RESTful framework
Jersey Framework
Representational State Transfer (REST)
Deploying the Spring Boot application
Monitoring the microservices
Application metrics
Platform metrics
System events
Tools to monitor microservices
Important facts about microservices
Microservices in the current market
When to stop designing microservices
Can the microservice format be used to divide teams into small or micro teams?
Microservices versus SOA
Summary
Microservice Resiliency Patterns
Briefing microservices and containers
The containerization paradigm
IT reliability challenges and solution approaches
The promising and potential approaches for resiliency and reliability
MSA is the prominent way forward
Integrated platforms are the need of the hour for resiliency
Summary
DevOps as a Service
What is DaaS?
Selecting tools isn't easy
Types of services under DaaS
An example of one-click deployment and rollback
Configuring automated alerts
Centralized log management
Infrastructure security
Continuous process and infrastructure development
CI and CD
CI life cycle
CI tools
Installing Jenkins
Jenkins setup for GitHub
Setting up the Jenkins job
Installing Git
Starting the Jenkins job
CD
Collaboration with development and QA teams
The role of developers in DevOps
The role of QA teams in DevOps
QA practices
Summary
Container Cluster and Orchestration Platforms
Resilient microservices
Application and volume containers
Clustering and managing containers
What are clusters?
Container orchestration and management
What is container orchestration?
Summary
Architectural and Design Patterns
Architecture pattern
Design pattern
Design pattern for security
Design pattern for resiliency
Design pattern for scalability
Design pattern for performance
Design principles for availability
Design principles for reliability
Design patterns – circuit breaker
Advantages of circuit breakers
Closed state
Open state
Half-open state
Summary
Reliability Implementation Techniques
Ballerina programming
A hello program example
A simple example with Twitter integration
Kubernetes deployment code
A circuit breaker code example
Ballerina data types
Control logic expression
The building blocks of Ballerina
Ballerina command cheat sheet
Reliability
Rust programming
Installing Rust
Concept of Rust programming
The ownership of variables in Rust
Borrowing values in Rust
Memory management in Rust
Mutability in Rust
Concurrency in Rust
Error-handling in Rust
The future of Rust programming
Summary
Realizing Reliable Systems - the Best Practices
Reliable IT systems – the emerging traits and tips
MSA for reliable software
The accelerated adoption of containers and orchestration platforms
The emergence of containerized clouds
Service mesh solutions
Microservices design – best practices
The relevance of event-driven microservices
Why asynchronous communication?
Why event-driven microservices?
Asynchronous messaging patterns for event-driven microservices
The role of EDA to produce reactive applications
Command query responsibility segregation pattern
Reliable IT infrastructures
High availability
Auto-scaling
Infrastructure as code
Summary
Service Resiliency
Delineating the containerization paradigm
Why use containerization?
Demystifying microservices architecture
Decoding the growing role of Kubernetes for the container era
Describing the service mesh concept
Data plane versus control plane summary
Why is service mesh paramount?
Service mesh architectures
Monitoring the service mesh
Service mesh deployment models
Summary
Containers Kubernetes and Istio Monitoring
Prometheus
Prometheus architecture
Setting up Prometheus
Configuring alerts in Prometheus
Grafana
Setting up Grafana
Configuring alerts in Grafana
Summary
Post-Production Activities for Ensuring and Enhancing IT Reliability
Modern IT infrastructure
Elaborating the modern data analytics methods
Monitoring clouds clusters and containers
The emergence of Kubernetes
Cloud infrastructure and application monitoring
The monitoring tool capabilities
The benefits
Prognostic predictive and prescriptive analytics
Machine-learning algorithms for infrastructure automation
Log analytics
Open source log analytics platforms
Cloud-based log analytics platforms
AI-enabled log analytics platforms
Loom
Enterprise-class log analytics platforms
The key capabilities of log analytics platforms
Centralized log-management tools
IT operational analytics
IT performance and scalability analytics
IT security analytics
The importance of root-cause analysis
OverOps enhances log-management
Summary
Further Readings
Service Meshes and Container Orchestration Platforms
About the digital transformation
Cloud-native and enabled applications for the digital era
Service mesh solutions
Linkerd
Istio
Visualizing an Istio service mesh
Microservice API Gateway
The benefits of an API Gateway for microservices-centric applications
Security features of API Gateways
API Gateway and service mesh in action
API management suite
Ensuring the reliability of containerized cloud environments
The journey toward containerized cloud environments
The growing solidity of the Kubernetes platform for containerized clouds
Kubernetes architecture – how it works
Installing the Kubernetes platform
Installing the Kubernetes client
Installing Istio on Kubernetes
Trying the application
Deploying services to Kubernetes
Summary
Other Books You May Enjoy
Leave a review - let other readers know what you think
更新时间:2021-06-10 19:08:49