Update architecture topic and graphics (#302)

This commit is contained in:
Jim Galasyn 2017-11-20 15:54:57 -08:00
parent 8401c3681b
commit 292e625c58
9 changed files with 66 additions and 48 deletions

View File

@ -352,12 +352,10 @@ guides:
section:
- path: /deploy/
title: Docker Enterprise Edition
- path: /deploy/deploy-kubernetes-workload/
title: Deploy a workload to a Kubernetes cluster
- sectiontitle: Architecture
section:
- path: /deploy/architecture/how-docker-ee-delivers-ha/
title: How Docker EE delivers high availability for your workloads
- path: /deploy/architecture/docker-ee-architecture/
title: Docker EE architecture
- path: /deploy/architecture/dtr-architecture/
title: DTR architecture
- path: /deploy/architecture/ucp-architecture/

View File

@ -1,8 +1,8 @@
---
title: How Docker EE delivers high availability for your workloads
title: Docker EE architecture
description: |
Learn about the architecture of Docker Enterprise Edition and how it enables deploying workloads for HA.
keywords: UCP, Docker EE, orchestration, Kubernetes, cluster, architecture, high availability
Learn about the architecture of Docker Enterprise Edition and how it delivers high availability for your workloads.
keywords: Docker EE, UCP, DTR, architecture, orchestration, Kubernetes, Swarm, cluster, high availability
next_steps:
- path: ucp-architecture
title: UCP architecture
@ -12,7 +12,7 @@ next_steps:
Docker Enterprise Edition (EE) enables deploying your workloads for high
availability (HA) onto the orchestrator of your choice. Docker EE system
components run on multiple manager nodes in the cluster, and if one manager
components can run on multiple manager nodes in the cluster, and if one manager
node fails, another takes its place automatically, without impact to the
cluster.
@ -20,46 +20,52 @@ cluster.
Docker EE provides access to the full API sets of three popular orchestrators:
- Kubernetes
- SwarmKit (Compose file version 3)
- "Classic" Swarm (Compose file version 2)
- Kubernetes: Full YAML object support
- SwarmKit: Service-centric, Compose file version 3
- "Classic" Swarm: Container-centric, Compose file version 2
![](../images/how-docker-ee-delivers-ha-1.svg){: .with-border}
![](../images/docker-ee-architecture-1.svg){: .with-border}
Docker EE proxies the underlying API of each orchestrator, giving you access
to all of the capabilities of each orchestrator, along with the benefits of
Docker EE, like role-baseed access control and Docker Content Trust.
Docker EE, like role-based access control and Docker Content Trust.
## Docker EE components
Docker EE has three major components, which together enable a full software
supply chain, from image creation, to image storage, to image deployment.
supply chain, from image creation, to secure image storage, to secure image
deployment.
- Docker EE Engine: The commercially supported Docker engine for creating
- **Docker EE Engine**: The commercially supported Docker engine for creating
images and running them in Docker containers.
- Docker Trusted Registry (DTR): The production-grade image storage solution
- **Docker Trusted Registry (DTR)**: The production-grade image storage solution
from Docker.
- Universal Control Plane (UCP): Deploys high-availability applications from
images by managing orchestrators, like Kubernetes and Swarm.
DTR is designed to scale horizontally as your usage increases.
You can add more replicas to make DTR scale to your demand and for high
availability.
All DTR replicas run the same set of services, and changes to
their configuration are propagated automatically to other replicas.
Docker Universal Control Plane is designed for high availability (HA). You can
join multiple UCP manager nodes to the cluster, and if one manager node fails,
another takes its place automatically without impact to the cluster. Changes to
the configuration of one UCP manager node are propagated automatically to other
nodes.
Docker Trusted Registry is designed to scale horizontally as your usage
increases. You can add more replicas to make DTR scale to your demand and for
high availability. All DTR replicas run the same set of services, and changes
to their configuration are propagated automatically to other replicas.
- **Universal Control Plane (UCP)**: Deploys applications from images, by
managing orchestrators, like Kubernetes and Swarm.
UCP is designed for high availability (HA). You can join multiple UCP manager
nodes to the cluster, and if one manager node fails, another takes its place
automatically without impact to the cluster.
Changes to the configuration of one UCP manager node are propagated
automatically to other nodes.
![](../images/docker-ee-architecture.svg){: .with-border}
### Universal Control Plane (UCP)
Universal Control Plane (UCP) is a containerized application that runs on
[Docker EE Engine](../index.md) and extends its functionality to make it
easier to deploy, configure, and monitor your applications at scale.
Docker UCP is a containerized application that runs on [Docker EE Engine](../index.md)
and extends its functionality to make it easier to deploy, configure, and
monitor your applications at scale.
Docker UCP provides a web UI and a CLI for deploying images from Kubernetes
YAML or Compose files. Once your workload is deployed, UCP enables monitoring
@ -72,9 +78,9 @@ users can make changes and deploy applications to your cluster.
Once a UCP instance is deployed, you don't interact with Docker EE Engine
directly. Instead, you interact with UCP. Since UCP exposes the standard
Docker API and the full Kubernetes API, and this is all done transparently,
so that you can use the tools you already know and love, like `kubectl`,
the Docker CLI client, and Docker Compose.
Docker API and the full Kubernetes API transparently, you can use the tools
you already know and love, like `kubectl`, the Docker CLI client, and Docker
Compose.
[Learn about UCP architecture](ucp-architecture.md).
![](../images/ucp-architecture-2.svg){: .with-border}
@ -82,7 +88,7 @@ the Docker CLI client, and Docker Compose.
### Docker Trusted Registry (DTR)
Docker Trusted Registry (DTR) is a containerized application that runs on a
Docker Universal Control Plane cluster.
Docker UCP cluster.
![](../images/dtr-architecture-1.svg){: .with-border}

View File

Before

Width:  |  Height:  |  Size: 68 KiB

After

Width:  |  Height:  |  Size: 68 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 309 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 776 KiB

View File

@ -31,7 +31,7 @@
<g id="docker" transform="translate(0.000000, 76.000000)">
<rect id="Rectangle-138" fill="#1488C6" x="0" y="0" width="524" height="34" rx="2"></rect>
<text id="Docker-Engine-EE" font-family="OpenSans, Open Sans" font-size="14" font-weight="normal" fill="#FFFFFF">
<tspan x="205.936035" y="23">Docker Engine EE</tspan>
<tspan x="205.936035" y="23">Docker EE Engine</tspan>
</text>
</g>
<g id="ucp" transform="translate(0.000000, 38.000000)">

Before

Width:  |  Height:  |  Size: 5.2 KiB

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

@ -23,7 +23,7 @@
<g id="engine" transform="translate(1.000000, 79.000000)">
<rect id="Rectangle-138" fill="#1488C6" x="0" y="0" width="95" height="22" rx="2"></rect>
<text id="Docker-Engine-EE" font-family="OpenSans, Open Sans" font-size="10" font-weight="normal" fill="#FFFFFF">
<tspan x="7.59716797" y="15">Docker Engine EE</tspan>
<tspan x="7.59716797" y="15">Docker EE Engine</tspan>
</text>
</g>
<g id="ucp" transform="translate(1.000000, 56.000000)">
@ -46,7 +46,7 @@
<g id="engine" transform="translate(1.000000, 79.000000)">
<rect id="Rectangle-138" fill="#1488C6" x="0" y="0" width="95" height="22" rx="2"></rect>
<text id="Docker-Engine-EE" font-family="OpenSans, Open Sans" font-size="10" font-weight="normal" fill="#FFFFFF">
<tspan x="7.59716797" y="15">Docker Engine EE</tspan>
<tspan x="7.59716797" y="15">Docker EE Engine</tspan>
</text>
</g>
<g id="ucp" transform="translate(1.000000, 56.000000)">
@ -71,7 +71,7 @@
<g id="engine" transform="translate(1.000000, 79.000000)">
<rect id="Rectangle-138" fill="#1488C6" x="0" y="0" width="95" height="22" rx="2"></rect>
<text id="Docker-Engine-EE" font-family="OpenSans, Open Sans" font-size="10" font-weight="normal" fill="#FFFFFF">
<tspan x="7.59716797" y="15">Docker Engine EE</tspan>
<tspan x="7.59716797" y="15">Docker EE Engine</tspan>
</text>
</g>
<g id="ucp" transform="translate(1.000000, 56.000000)">
@ -100,7 +100,7 @@
<g id="engine" transform="translate(1.000000, 79.000000)">
<rect id="Rectangle-138" fill="#1488C6" x="0" y="0" width="95" height="22" rx="2"></rect>
<text id="Docker-Engine-EE" font-family="OpenSans, Open Sans" font-size="10" font-weight="normal" fill="#FFFFFF">
<tspan x="7.59716797" y="15">Docker Engine EE</tspan>
<tspan x="7.59716797" y="15">Docker EE Engine</tspan>
</text>
</g>
<g id="ucp" transform="translate(1.000000, 56.000000)">
@ -129,7 +129,7 @@
<g id="engine" transform="translate(1.000000, 79.000000)">
<rect id="Rectangle-138" fill="#1488C6" x="0" y="0" width="95" height="22" rx="2"></rect>
<text id="Docker-Engine-EE" font-family="OpenSans, Open Sans" font-size="10" font-weight="normal" fill="#FFFFFF">
<tspan x="7.59716797" y="15">Docker Engine EE</tspan>
<tspan x="7.59716797" y="15">Docker EE Engine</tspan>
</text>
</g>
<g id="ucp" transform="translate(1.000000, 56.000000)">
@ -160,7 +160,7 @@
<g id="engine" transform="translate(1.000000, 79.000000)">
<rect id="Rectangle-138" fill="#1488C6" x="0" y="0" width="95" height="22" rx="2"></rect>
<text id="Docker-Engine-EE" font-family="OpenSans, Open Sans" font-size="10" font-weight="normal" fill="#FFFFFF">
<tspan x="7.59716797" y="15">Docker Engine EE</tspan>
<tspan x="7.59716797" y="15">Docker EE Engine</tspan>
</text>
</g>
<g id="ucp" transform="translate(1.000000, 56.000000)">
@ -183,7 +183,7 @@
<g id="engine" transform="translate(1.000000, 79.000000)">
<rect id="Rectangle-138" fill="#1488C6" x="0" y="0" width="95" height="22" rx="2"></rect>
<text id="Docker-Engine-EE" font-family="OpenSans, Open Sans" font-size="10" font-weight="normal" fill="#FFFFFF">
<tspan x="7.59716797" y="15">Docker Engine EE</tspan>
<tspan x="7.59716797" y="15">Docker EE Engine</tspan>
</text>
</g>
<g id="ucp" transform="translate(1.000000, 56.000000)">
@ -206,7 +206,7 @@
<g id="engine" transform="translate(1.000000, 79.000000)">
<rect id="Rectangle-138" fill="#1488C6" x="0" y="0" width="95" height="22" rx="2"></rect>
<text id="Docker-Engine-EE" font-family="OpenSans, Open Sans" font-size="10" font-weight="normal" fill="#FFFFFF">
<tspan x="7.59716797" y="15">Docker Engine EE</tspan>
<tspan x="7.59716797" y="15">Docker EE Engine</tspan>
</text>
</g>
<g id="ucp" transform="translate(1.000000, 56.000000)">

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 17 KiB

View File

@ -31,7 +31,7 @@
<g id="docker" transform="translate(0.000000, 76.000000)">
<rect id="Rectangle-138" fill="#1488C6" x="0" y="0" width="524" height="34" rx="2"></rect>
<text id="Docker-Enterprise-Edition" font-family="OpenSans, Open Sans" font-size="14" font-weight="normal" fill="#FFFFFF">
<tspan x="225.464355" y="23">Docker EE</tspan>
<tspan x="225.464355" y="23">Docker EE Engine</tspan>
</text>
</g>
<g id="ucp" transform="translate(0.000000, 38.000000)">

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 5.0 KiB

View File

@ -64,7 +64,7 @@ Kubernetes in Docker EE fully supports all Docker EE features, including
role-based access control, LDAP/AD integration, scanning, signing enforcement,
and security policies.
- Kubernetes orchestration features
- Kubernetes orchestration full feature set
- CNCF Certified Kubernetes conformance
- Deploy Kubernetes apps via web UI or CLI
- Compose Stack deploy for both Swarm and Kubernetes apps
@ -80,6 +80,8 @@ and security policies.
### Orchestration platform
![](images/docker-ee-overview-4.svg){: .with-border}
- Docker EE Manager Nodes are both Swarm managers and Kubernetes masters to enable
high availability
- Allocate nodes for Swarm and Kubernetes workloads
@ -90,8 +92,12 @@ and security policies.
### Secure supply chain
- Image promotion with mirroring between registries
- Signing/scanning enforcement for Kubernetes
![](images/docker-ee-overview-3.svg){: .with-border}
- Image signing and scanning of Kubernetes apps for validating and verifying content
- Image promotion with mirroring between registries (not in Beta1)
- Define policies for automating image promotions across the app development
lifecycle of Kubernetes apps (not in Beta1)
## Centralized cluster management