System design and architecture
All things around detailed planning and specification of a system's components
and interactions to build applications for the modern hybrid cloud.
All things around detailed planning and specification of a system's components
and interactions to build applications for the modern hybrid cloud.
Increasingly complex modern systems have driven the technological innovation behind microservices, event-driven architecture, serverless infrastructure, isolated environments, virtualization, and API management.
Microservices architecture breaks applications into smaller, manageable units called services. Each service underpins a unique business function. Dividing applications into smaller components streamlines development, scales services independently, and achieves greater fault isolation and resilience.
Red Hat Runtimes offers pre-built frameworks, while Red Hat OpenShift helps deliver and manage these microservices.
Learn moreHelpful resources
Microservices development and design
Data-driven businesses demand real-time processing and responsiveness. Systems using event-driven architecture can respond to events dynamically by initiating appropriate actions. Components communicate asynchronously through events, promoting scalability and decoupling dependencies. These systems are highly adaptable, enabling you to build event-based applications, process data in real time, and agilely respond to dynamic business requirements.
Red Hat OpenShift Streams for Apache Kafka helps build Apache Kafka streams to process events.
Helpful resources
Serverless architecture abstracts the underlying infrastructure to a cloud provider, who oversees function-critical aspects like resource allocation, availability, and scaling. This approach minimizes distraction and keeps coding your priority, fostering rapid development, shorter time to market, and more time for productive work. Also, serverless architecture enables traffic-based autoscaling and pay-as-you-go pricing structures to reduce unnecessary operational overhead and keep your resource budget lean.
Red Hat OpenShift Serverless, based on Knative, offers an enterprise-grade serverless platform.
Learn moreHelpful resources
Environment disconnection can physically separate hardware — like servers and storage media — from publicly accessible cloud environments. Or, it can virtually separate discrete workloads, such as using different networks for on-premises and cloud resources. It protects sensitive data, helps maintain resource allocation to meet workload demands, and lets developers build, test, and experiment without interfering with the production environment.
Red Hat OpenShift Data Foundation helps deploy code to disconnected environments.
Helpful resources
Microservices development and design
Virtualization creates virtual resources — including servers, networks, and storage — separate from the physical infrastructure. It enables multiple isolated or interconnected virtual machines (VMs) to operate on a single physical server, which optimizes the server’s computing power, memory, and storage, reducing the demand for additional physical hardware so you can scale resources efficiently, improve workload isolation, and reduce spending.
Linux includes the kernel-based virtual machine, a hypervisor to run VMs.
Helpful resources
API management involves discovering, accessing, and sharing APIs internally or externally. Reusing existing APIs in new applications becomes effortless, and you can monetize your APIs to enhance value. An efficient management platform enables APIs' exposure, regulation, and protection. It ensures control over service access and data, implements security policies, and lets you monitor API usage.
Red Hat 3scale API Management helps manage your APIs effectively.
Helpful resources
While there are many viable approaches to modern system design, there are a few principles on which all successful systems are built. These principles are paramount for creating an efficient, secure, maintainable system that can grow and change with your needs. For example, maintainability, flexibility, and scalability form the pillars of robust systems, minimizing downtime, boosting troubleshooting capabilities, and mitigating disruptions.
A well-integrated security strategy for distributed systems includes centralized management, rapid threat detection, and flexible policy implementation.
Red Hat Trusted Software Supply Chain addresses these challenges to fortify your hybrid cloud systems. The solution includes Red Hat Trusted Application Pipeline to build images from application code, with the help of default pipeline definitions and automated security checks. It also includes Red Hat Trusted Content, containing curated builds and hardened open source libraries, all verified for provenance. Plugins also help developers analyze and fix vulnerabilities.
Red Hat Advanced Cluster Security (ACS) for Kubernetes integrates with Red Hat OpenShift to offer Kubernetes-native security for building, deploying, and running cloud-native applications safely. The fully managed security solution helps organizations focus on reducing risk and triaging incidents instead of managing infrastructure.
Helpful resources
Red Hat Trusted Software Supply Chain
Managing data in a hybrid cloud environment presents unique challenges as critical data is distributed across multiple environments. A storage system must handle diverse data sources, formats, and access patterns for structured, semi-structured, or unstructured data while efficiently handling high-throughput workloads and real-time processing.
Red Hat provides comprehensive solutions to access your data’s full potential and extract valuable insights. The technology underlying Red Hat OpenShift Data Foundation’s powerful change data capture (CDC) cluster data management capabilities facilitates developer productivity by enabling app deployments and adjustments as necessary. It also manages registry, logging, and metrics storage for the Red Hat OpenShift Container Platform. Plus, its data replication and disaster recovery capabilities enable the fault-tolerant distribution of your application data across several availability zones.
Helpful resources
Managing applications across multiple cloud providers is complex. GitOps streamlines deployment, configuration, and monitoring through version control systems for infrastructure and application code. Changes occur via pull requests so DevOps can review, test, and approve code before automatically pushing changes to the live environment. This approach enables teams to manage complex multicloud environments more efficiently and reliably.
Red Hat provides Argo CD for deployment automation, Red Hat OpenShift Data Foundation for a unified data platform, and Advanced Cluster Management (ACM) for efficient cluster management across hybrid and multicloud environments.
Red Hat OpenShift offers a complete application development, deployment, and runtime platform with pipeline builds, monitoring, security, and service mesh to streamline the development lifecycle, enhance security, and improve observability. Plus, it uses Kubernetes to automate delivery of high-quality applications across diverse cloud environments.
Helpful resources
Enhancements play a vital role in optimizing your hybrid cloud environment. Red Hat OpenShift offers a rich selection of readily available software components, so developers can quickly jump ahead to building unique software features.
Red Hat OpenShift’s comprehensive suite of services — such as Single Sign-On (SSO), Advanced Message Queuing (AMQ), and ServiceInterconnect — increases productivity, enriches functionality, and accelerates software development processes as engineers quickly access services and information.
With managed OpenShift, Red Hat takes care of end-to-end management and version maintenance for the entire stack — the master, infrastructure, worker nodes, and additional services like CI/CD, logging, and metrics. Red Hat’s specialized 24x7 global site reliability engineering (SRE) team ensures proactive monitoring, handles automatic upgrades and patching, and offers industry-leading support. Organizations are free from the operational overhead and can focus on delivering business value.
Helpful resources
Even the best-built software system will eventually need maintenance.
Red Hat OpenShift helps IT teams improve a system’s maintainability. Teams can monitor the system for potential issues before they grow, fixing them with preventative maintenance.
Additionally, to ensure maintainability, organizations need a stable, standardized, and regularly updated operating system platform, ensuring long-term support and compatibility for enterprise applications. Red Hat Enterprise Linux offers organizations the stable platform they need to reach these goals.
Helpful resources
Achieving agility requires a modular and flexible platform, enabling rapid adjustments to accommodate changing business needs and technologies. Automation, cloud technologies, and decoupling components all boost an organization’s agility. Organizations should anticipate future needs and design their systems to accommodate changes painlessly since building agility into a system from the start reduces the cost of making changes.
Red Hat OpenShift’s support for containerization, automation tools, and cloud-native technologies facilitates quick application deployment and scaling. It reduces the friction of making changes to a Kubernetes system, offering more agility.
Helpful resources
Scalability enables systems to handle increased workloads and accommodate growth without compromising performance. When you build systems to scale, they accommodate increased business demand without wasting resources in slower periods.
Red Hat OpenShift supports increasing or decreasing the number of nodes in a cluster or pods in a node. It also enables scaling resources allocated to an app instance dynamically, ensuring efficient use and optimal app elasticity.
Automating key repetitive or sensitive tasks with Red Hat Ansible Automation Platform helps ensure the system is set to scale and maintains consistency as it grows.
Helpful resources
Automating processes such as application deployment, configuration management, and security implementation ensures process conformity and uniformity across an enterprise system. Also, automating system design and architecture tasks reduces the time to deploy and configure systems. This approach accelerates service and application delivery while IT teams focus on more strategic initiatives, maximizing their efforts.
An efficient, reliable system leverages automation wherever possible, and Red Hat Ansible is a centralized tool to oversee all aspects, vital to maintaining your system’s consistency as it grows.
Helpful resources
This guide helps you understand OpenShift audit logs and classify them based...
Explore the differences between Red Hat OpenShift Service Mesh and Red Hat...
Clean architecture enables you to build more robust, adaptable software. This...
In this preview of a 2022 Red Hat Summit talk, Jim Tyrrell breaks down the...