May 1, 2024
3 minute read
Deployment models refer to architectural patterns and strategies used for deploying and managing software applications and services across different environments and infrastructures. It involves making decisions about how the application will be distributed, installed, and operated, as well as the underlying infrastructure and resources required to support it.
Types of Deployment Models
There are several common deployment models, each with its own advantages and use cases:
-
On-Premises Deployment: Applications and infrastructure are deployed and operated within an organization's own data center or physical infrastructure. This model provides greater control, security, and customization options.
-
Cloud Deployment: Applications and infrastructure are hosted and managed by a third-party cloud provider, such as Amazon Web Services (AWS), Microsoft Azure, or Google Cloud Platform (GCP). Cloud deployment offers scalability, flexibility, and reduced infrastructure management overhead.
-
Hybrid Deployment: A combination of on-premises and cloud deployment, where some components are hosted on-premises while others are hosted in the cloud. This model provides a balance of control, flexibility, and cost-effectiveness.
-
Multi-Cloud Deployment: Applications and infrastructure are distributed across multiple cloud providers, offering increased redundancy, availability, and vendor lock-in avoidance.
-
Edge Deployment: Applications and infrastructure are deployed at the edge of the network, closer to end-users or devices, reducing latency and improving performance for applications that require real-time data processing or low latency.
Choosing the Right Deployment Model
givvio|
Find a path to becoming a Deployment Models. Learn more at:
OpenCourser.com/topic/givvio/deployment
Reading list
We've selected ten books
that we think will supplement your
learning. Use these to
develop background knowledge, enrich your coursework, and gain a
deeper understanding of the topics covered in
Deployment Models.
This highly acclaimed book outlines the DevOps mindset and provides practical guidance on implementing DevOps principles and practices for improved software delivery performance.
This classic book explores the principles and practices of continuous delivery, focusing on how to automate the software delivery pipeline for faster and more reliable software releases.
Provides a comprehensive overview of modern software engineering practices, including principles, tools, and techniques for building and delivering high-quality software.
Provides a step-by-step guide to designing, developing, and deploying microservices-based applications, covering topics such as architecture, communication, testing, and deployment models.
Practical guide to using Kubernetes for managing containerized applications, covering topics such as cluster architecture, deployment strategies, and scaling.
Comprehensive guide to using Elasticsearch, a popular open-source search and analytics engine, covering topics such as data ingestion, indexing, querying, and scaling.
This popular novel uses a fictional story to illustrate the challenges and benefits of DevOps, providing insights into the importance of collaboration and automation in software delivery.
Introduces the concept of infrastructure as code, exploring how to manage and provision infrastructure using code-based approaches for greater efficiency and consistency.
Focuses on the release process, covering strategies and techniques for planning, testing, deploying, and monitoring software releases in complex environments.
Shares insights from Google's Site Reliability Engineering (SRE) team, highlighting best practices for ensuring the reliability and availability of large-scale distributed systems.
For more information about how these books relate to this course, visit:
OpenCourser.com/topic/givvio/deployment