diff --git a/datacenter/dtr/2.2/guides/admin/configure/deploy-a-cache.md b/datacenter/dtr/2.2/guides/admin/configure/deploy-a-cache.md index 4a39417f74..5267e1b186 100644 --- a/datacenter/dtr/2.2/guides/admin/configure/deploy-a-cache.md +++ b/datacenter/dtr/2.2/guides/admin/configure/deploy-a-cache.md @@ -13,7 +13,7 @@ that allows them faster downloads. You start by deploying one or more DTR caches. -![](images/cache-docker-images-1.svg) +![](../../images/cache-docker-images-1.svg) Since caches have to contact DTR for authorizing user requests, and requests are chained from one cache to the next until the request reaches DTR, you @@ -106,7 +106,7 @@ DTR interactive API documentation to use this API. In the DTR web UI, click the top-right menu, and choose **API docs**. -![](images/cache-docker-images-2.png){: .with-border} +![](../../images/cache-docker-images-2.png){: .with-border} Navigate to the `POST /api/v0/content_caches` line and click it to expand. In the **body** field include: @@ -120,7 +120,7 @@ In the **body** field include: Click the **Try it out!** button to make the API call. -![](images/cache-docker-images-3.png){: .with-border} +![](../../images/cache-docker-images-3.png){: .with-border} DTR knows about the cache we've created, so we just need to configure our DTR user settings to start using that cache. @@ -128,7 +128,7 @@ user settings to start using that cache. In the DTR web UI, navigate to your **user profile**, click the **Settings** tab, and change the **Content cache** settings to use the **region-us** cache. -![](images/cache-docker-images-4.png){: .with-border} +![](../../images/cache-docker-images-4.png){: .with-border} Now when you pull images, you'll be using the cache. To test this, try pulling an image from DTR. You can inspect the logs of the cache service, to validate diff --git a/datacenter/dtr/2.2/guides/admin/configure/license-your-installation.md b/datacenter/dtr/2.2/guides/admin/configure/license-your-installation.md index 2442065a8e..c3cb201a3b 100644 --- a/datacenter/dtr/2.2/guides/admin/configure/license-your-installation.md +++ b/datacenter/dtr/2.2/guides/admin/configure/license-your-installation.md @@ -1,7 +1,7 @@ --- +title: License your installation description: Learn how to license your Docker Trusted Registry installation. keywords: docker, dtr, install, license -title: License Docker Trusted Registry --- By default, you don't need to license your Docker Trusted Registry. When diff --git a/datacenter/dtr/2.2/guides/admin/configure/set-up-high-availability.md b/datacenter/dtr/2.2/guides/admin/configure/set-up-high-availability.md index 030f20c934..7bac291365 100644 --- a/datacenter/dtr/2.2/guides/admin/configure/set-up-high-availability.md +++ b/datacenter/dtr/2.2/guides/admin/configure/set-up-high-availability.md @@ -5,16 +5,40 @@ keywords: docker, dtr, install, deploy --- Docker Trusted Registry is designed to scale horizontally as your usage -increases. You can add or remove replicas to make DTR scale to your needs -or for high availability. +increases. You can add more replicas to make DTR scale to your demand and for +high availability. -To set up DTR for high availability, -you can add more replicas to your DTR cluster. Adding more replicas allows you -to load-balance requests across all replicas, and keep DTR working if a -replica fails. +All DTR replicas run the same set of services and changes to their configuration +are automatically propagated to other replicas. -For high-availability you should set 3, 5, or 7 DTR replicas. The nodes where -you're going to install these replicas also need to be managed by UCP. +![](../../images/set-up-high-availability-1.svg) + +To make DTR tolerant to failures, add additional replicas to the DTR cluster. + +| DTR replicas | Failures tolerated | +|:------------:|:------------------:| +| 1 | 0 | +| 3 | 1 | +| 5 | 2 | +| 7 | 3 | + + +When sizing your DTR installation for high-availability, +follow these rules of thumb: + +* Don't create a DTR cluster with just two replicas. Your cluster +won't tolerate any failures, and it's possible that you experience performance +degradation. +* When a replica fails, the number of failures tolerated by your cluster +decreases. Don't leave that replica offline for long. +* Adding too many replicas to the cluster might also lead to performance +degradation, as data needs to be replicated across all replicas. + +To have high-availability on UCP and DTR, you need a minimum of: + +* 3 dedicated nodes to install UCP with high availability, +* 3 dedicated nodes to install DTR with high availability, +* As many nodes as you want for running your containers and applications. ## Join more DTR replicas diff --git a/datacenter/dtr/2.2/guides/admin/configure/use-a-load-balancer.md b/datacenter/dtr/2.2/guides/admin/configure/use-a-load-balancer.md index de9b29f30a..55d593150b 100644 --- a/datacenter/dtr/2.2/guides/admin/configure/use-a-load-balancer.md +++ b/datacenter/dtr/2.2/guides/admin/configure/use-a-load-balancer.md @@ -7,7 +7,7 @@ keywords: docker, dtr, load balancer Once you’ve joined multiple DTR replicas nodes for high-availability, you can configure your own load balancer to balance user requests across all replicas. -![](image) +![](../../images/use-a-load-balancer-1.svg) This allows users to access DTR using a centralized domain name. If a replica diff --git a/datacenter/dtr/2.2/guides/admin/configure/use-your-own-tls-certificates.md b/datacenter/dtr/2.2/guides/admin/configure/use-your-own-tls-certificates.md index 7862de228d..364d91b538 100644 --- a/datacenter/dtr/2.2/guides/admin/configure/use-your-own-tls-certificates.md +++ b/datacenter/dtr/2.2/guides/admin/configure/use-your-own-tls-certificates.md @@ -1,8 +1,7 @@ --- -description: Trusted Registry configuration options -keywords: docker, documentation, about, technology, install, enterprise, hub, CS engine, - Docker Trusted Registry, configure, storage, backend, drivers -title: Set up TLS certificates for DTR +title: Use your own TLS certificates +description: Learn how to configure Docker Trusted Registry with your own TLS certificates. +keywords: docker, dtr, tls --- diff --git a/datacenter/dtr/2.2/guides/admin/install/index.md b/datacenter/dtr/2.2/guides/admin/install/index.md index 6aa21e9844..5c458e206d 100644 --- a/datacenter/dtr/2.2/guides/admin/install/index.md +++ b/datacenter/dtr/2.2/guides/admin/install/index.md @@ -24,7 +24,7 @@ to run, you need to install UCP on all the nodes where you plan to install DTR. DTR needs to be installed on a worker node that is being managed by UCP. You can't install DTR on a standalone Docker Engine. -![](../../images/install-dtr-0.png) +![](../../images/install-dtr-0.svg) ## Step 3. Install DTR diff --git a/datacenter/dtr/2.2/guides/architecture.md b/datacenter/dtr/2.2/guides/architecture.md index ca1f21a7c6..3d266e038d 100644 --- a/datacenter/dtr/2.2/guides/architecture.md +++ b/datacenter/dtr/2.2/guides/architecture.md @@ -4,13 +4,25 @@ keywords: docker, registry, dtr, architecture title: DTR architecture --- -Docker Trusted Registry (DTR) is a Dockerized application that runs on a Docker -Universal Control Plane cluster. +Docker Trusted Registry (DTR) is a containerized application that runs on a +Docker Universal Control Plane cluster. -![](images/architecture-1.png) +![](images/architecture-1.svg) +Once you have DTR deployed, you use your Docker CLI client to login, push, and +pull images. -## Containers +## Under the hood + +For high-availability you can deploy multiple DTR replicas, one on each UCP +worker node. + +![](images/architecture-2.svg) + +All DTR replicas run the same set of services and changes to their configuration +are automatically propagated to other replicas. + +## DTR internal components When you install DTR on a node, the following containers are started: @@ -28,7 +40,7 @@ When you install DTR on a node, the following containers are started: All these components are for internal use of DTR. Don't use them in your applications. -## Networks +## Networks used by DTR To allow containers to communicate, when installing DTR the following networks are created: @@ -38,7 +50,7 @@ are created: | dtr-ol | overlay | Allows DTR components running on different nodes to communicate, to replicate DTR data | -## Volumes +## Volumes used by DTR DTR uses these named volumes for persisting data: @@ -61,9 +73,12 @@ By default, the data for these volumes can be found at ## Image storage By default, Docker Trusted Registry stores images on the filesystem of the node -where it is running. +where it is running, but you should configure it to use a centralized storage +backend. -You can also configure DTR to use these storage backends: +![](images/architecture-3.svg) + +DTR supports these storage backends: * NFS * Amazon S3 @@ -72,13 +87,14 @@ You can also configure DTR to use these storage backends: * OpenStack Swift * Microsoft Azure -For highly available installations, you should use a cloud storage system -instead of an NFS mount, since they usually have better performance. +## How to interact with DTR -## High-availability support +DTR has a web UI where you can manage settings and user permissions. -For load balancing and high-availability, you can install multiple replicas of -DTR, and join them to create a cluster. +![](images/architecture-4.svg) + +You can push and pull images using the standard Docker CLI client or other tools +that can interact with a Docker registry. ## Where to go next diff --git a/datacenter/dtr/2.2/guides/images/architecture-1.png b/datacenter/dtr/2.2/guides/images/architecture-1.png deleted file mode 100644 index 1528ddecf1..0000000000 Binary files a/datacenter/dtr/2.2/guides/images/architecture-1.png and /dev/null differ diff --git a/datacenter/dtr/2.2/guides/images/architecture-1.svg b/datacenter/dtr/2.2/guides/images/architecture-1.svg new file mode 100644 index 0000000000..8f63e29679 --- /dev/null +++ b/datacenter/dtr/2.2/guides/images/architecture-1.svg @@ -0,0 +1,75 @@ + + + + architecture-1 + Created with Sketch. + + + + + + + + + + cloud servers + + + + + + virtual servers + + + + + + physical servers + + + + + + + CS Docker Engine + + + + + + Universal Control Plane + + + + + + Docker Trusted Registry + + + + + + your applications + + + + + + + + + docker run + + + + + + + docker push + + + + + + + \ No newline at end of file diff --git a/datacenter/dtr/2.2/guides/images/architecture-2.svg b/datacenter/dtr/2.2/guides/images/architecture-2.svg new file mode 100644 index 0000000000..e8de51d858 --- /dev/null +++ b/datacenter/dtr/2.2/guides/images/architecture-2.svg @@ -0,0 +1,225 @@ + + + + architecture-2 + Created with Sketch. + + + + + UCP cluster + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + \ No newline at end of file diff --git a/datacenter/dtr/2.2/guides/images/architecture-3.svg b/datacenter/dtr/2.2/guides/images/architecture-3.svg new file mode 100644 index 0000000000..7656909ea1 --- /dev/null +++ b/datacenter/dtr/2.2/guides/images/architecture-3.svg @@ -0,0 +1,160 @@ + + + + architecture-3 + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + DTR cluster + + + + + overlay network + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + + object + storage + + + + + + \ No newline at end of file diff --git a/datacenter/dtr/2.2/guides/images/architecture-4.svg b/datacenter/dtr/2.2/guides/images/architecture-4.svg new file mode 100644 index 0000000000..056ab55076 --- /dev/null +++ b/datacenter/dtr/2.2/guides/images/architecture-4.svg @@ -0,0 +1,356 @@ + + + + architecture-4 + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Docker swarm + + + + + + + + + your load balancer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + your load balancer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + + + + UI + + + + + + CLI + + + + + + + + UI + + + + + + CLI + + + + + + + + \ No newline at end of file diff --git a/datacenter/dtr/2.2/guides/images/high-availability-1.png b/datacenter/dtr/2.2/guides/images/high-availability-1.png deleted file mode 100644 index 4a7a323764..0000000000 Binary files a/datacenter/dtr/2.2/guides/images/high-availability-1.png and /dev/null differ diff --git a/datacenter/dtr/2.2/guides/images/high-availability-2.png b/datacenter/dtr/2.2/guides/images/high-availability-2.png deleted file mode 100644 index c96083a198..0000000000 Binary files a/datacenter/dtr/2.2/guides/images/high-availability-2.png and /dev/null differ diff --git a/datacenter/dtr/2.2/guides/images/install-dtr-0.png b/datacenter/dtr/2.2/guides/images/install-dtr-0.png deleted file mode 100644 index 1528ddecf1..0000000000 Binary files a/datacenter/dtr/2.2/guides/images/install-dtr-0.png and /dev/null differ diff --git a/datacenter/dtr/2.2/guides/images/install-dtr-0.svg b/datacenter/dtr/2.2/guides/images/install-dtr-0.svg new file mode 100644 index 0000000000..e8de51d858 --- /dev/null +++ b/datacenter/dtr/2.2/guides/images/install-dtr-0.svg @@ -0,0 +1,225 @@ + + + + architecture-2 + Created with Sketch. + + + + + UCP cluster + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + \ No newline at end of file diff --git a/datacenter/dtr/2.2/guides/images/set-up-high-availability-1.svg b/datacenter/dtr/2.2/guides/images/set-up-high-availability-1.svg new file mode 100644 index 0000000000..b86fc8f357 --- /dev/null +++ b/datacenter/dtr/2.2/guides/images/set-up-high-availability-1.svg @@ -0,0 +1,310 @@ + + + + set-up-high-availability-1 + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Docker swarm + + + + + + + + + your load balancer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + your load balancer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + + + + + + + + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + + + + UI + + + + + + CLI + + + + + + + + UI + + + + + + CLI + + + + + + + + \ No newline at end of file diff --git a/datacenter/dtr/2.2/guides/images/use-a-load-balancer-1.svg b/datacenter/dtr/2.2/guides/images/use-a-load-balancer-1.svg new file mode 100644 index 0000000000..b86fc8f357 --- /dev/null +++ b/datacenter/dtr/2.2/guides/images/use-a-load-balancer-1.svg @@ -0,0 +1,310 @@ + + + + set-up-high-availability-1 + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Docker swarm + + + + + + + + + your load balancer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + your load balancer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + + + + + + + worker node + + + + + + + CS Docker Engine + + + + + + UCP worker + + + + + + DTR + + + + + + + + + + + + + + + + + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + manager node + + + + + + + CS Docker Engine + + + + + + UCP manager + + + + + + + + + + + + + UI + + + + + + CLI + + + + + + + + UI + + + + + + CLI + + + + + + + + \ No newline at end of file