1[
2  {
3    "title": "Intro to Consul",
4    "routes": [
5      {
6        "title": "Overview",
7        "path": "intro"
8      },
9      {
10        "title": "Consul vs. Other Software",
11        "routes": [
12          {
13            "title": "Overview",
14            "path": "intro/vs"
15          },
16          {
17            "title": "Chef, Puppet, etc.",
18            "path": "intro/vs/chef-puppet"
19          },
20          {
21            "title": "Nagios",
22            "path": "intro/vs/nagios"
23          },
24          {
25            "title": "SkyDNS",
26            "path": "intro/vs/skydns"
27          },
28          {
29            "title": "SmartStack",
30            "path": "intro/vs/smartstack"
31          },
32          {
33            "title": "Serf",
34            "path": "intro/vs/serf"
35          },
36          {
37            "title": "Eureka",
38            "path": "intro/vs/eureka"
39          },
40          {
41            "title": "Istio",
42            "path": "intro/vs/istio"
43          },
44          {
45            "title": "Envoy and Other Proxies",
46            "path": "intro/vs/proxies"
47          },
48          {
49            "title": "Custom Solutions",
50            "path": "intro/vs/custom"
51          }
52        ]
53      }
54    ]
55  },
56  {
57    "title": "Get Started",
58    "routes": [
59      {
60        "title": "Overview",
61        "path": "install"
62      },
63      {
64        "title": "Manual Bootstrap",
65        "path": "install/manual-bootstrap",
66        "hidden": true
67      },
68      {
69        "title": "Consul Agent",
70        "href": "/docs/agent"
71      },
72      {
73        "title": "Glossary",
74        "path": "install/glossary"
75      },
76      {
77        "title": "Required Ports",
78        "path": "install/ports"
79      },
80      {
81        "title": "Bootstrapping a Datacenter",
82        "path": "install/bootstrapping"
83      },
84      {
85        "title": "Cloud Auto-join",
86        "path": "install/cloud-auto-join"
87      },
88      {
89        "title": "Server Performance",
90        "path": "install/performance"
91      },
92      {
93        "title": "Kubernetes",
94        "href": "/docs/k8s"
95      }
96    ]
97  },
98  {
99    "title": "API",
100    "href": "/api-docs"
101  },
102  {
103    "title": "Commands (CLI)",
104    "href": "/commands"
105  },
106  {
107    "title": "Service Discovery",
108    "routes": [
109      {
110        "title": "Register Services - Service Definitions",
111        "path": "discovery/services"
112      },
113      {
114        "title": "Find Services - DNS Interface",
115        "path": "discovery/dns"
116      },
117      {
118        "title": "Monitor Services - Check Definitions",
119        "path": "discovery/checks"
120      }
121    ]
122  },
123  {
124    "title": "Service Mesh",
125    "routes": [
126      {
127        "title": "Overview",
128        "path": "connect"
129      },
130      {
131        "title": "How Connect Works",
132        "path": "connect/connect-internals"
133      },
134      {
135        "title": "Configuration",
136        "path": "connect/configuration"
137      },
138      {
139        "title": "Configuration Entries",
140        "routes": [
141          {
142            "title": "Overview",
143            "path": "connect/config-entries"
144          },
145          {
146            "title": "Ingress Gateway",
147            "path": "connect/config-entries/ingress-gateway"
148          },
149          {
150            "title": "Mesh",
151            "path": "connect/config-entries/mesh"
152          },
153          {
154            "title": "Proxy Defaults",
155            "path": "connect/config-entries/proxy-defaults"
156          },
157          {
158            "title": "Service Defaults",
159            "path": "connect/config-entries/service-defaults"
160          },
161          {
162            "title": "Service Intentions",
163            "path": "connect/config-entries/service-intentions"
164          },
165          {
166            "title": "Service Resolver",
167            "path": "connect/config-entries/service-resolver"
168          },
169          {
170            "title": "Service Router",
171            "path": "connect/config-entries/service-router"
172          },
173          {
174            "title": "Service Splitter",
175            "path": "connect/config-entries/service-splitter"
176          },
177          {
178            "title": "Terminating Gateway",
179            "path": "connect/config-entries/terminating-gateway"
180          }
181        ]
182      },
183      {
184        "title": "Supported Proxies",
185        "routes": [
186          {
187            "title": "Overview",
188            "path": "connect/proxies"
189          },
190          {
191            "title": "Envoy",
192            "path": "connect/proxies/envoy"
193          },
194          {
195            "title": "Built-in Proxy",
196            "path": "connect/proxies/built-in"
197          },
198          {
199            "title": "Proxy Integration",
200            "path": "connect/proxies/integrate"
201          },
202          {
203            "title": "Managed (Deprecated)",
204            "path": "connect/proxies/managed-deprecated",
205            "hidden": true
206          }
207        ]
208      },
209      {
210        "title": "Registering Proxies",
211        "routes": [
212          {
213            "title": "Overview",
214            "path": "connect/registration"
215          },
216          {
217            "title": "Proxy Service Registration",
218            "path": "connect/registration/service-registration"
219          },
220          {
221            "title": "Sidecar Service Registration",
222            "path": "connect/registration/sidecar-service"
223          }
224        ]
225      },
226      {
227        "title": "Service-to-service permissions - Intentions",
228        "path": "connect/intentions"
229      },
230      {
231        "title": "Service-to-service permissions - Intentions (Legacy Mode)",
232        "path": "connect/intentions-legacy"
233      },
234      {
235        "title": "Transparent Proxy",
236        "path": "connect/transparent-proxy"
237      },
238      {
239        "title": "Observability",
240        "routes": [
241          {
242            "title": "Overview",
243            "path": "connect/observability"
244          },
245          {
246            "title": "UI Visualization",
247            "path": "connect/observability/ui-visualization"
248          }
249        ]
250      },
251      {
252        "title": "L7 Traffic Management",
253        "routes": [
254          {
255            "title": "Overview",
256            "path": "connect/l7-traffic"
257          },
258          {
259            "title": "Discovery Chain",
260            "path": "connect/l7-traffic/discovery-chain"
261          }
262        ]
263      },
264      {
265        "title": "Connectivity Tasks",
266        "path": "connect/connectivity-tasks"
267      },
268      {
269        "title": "Gateways",
270        "routes": [
271          {
272            "title": "Overview",
273            "path": "connect/gateways"
274          },
275          {
276            "title": "Connect Datacenters - Mesh Gateways",
277            "routes": [
278              {
279                "title": "Overview",
280                "path": "connect/gateways/mesh-gateway"
281              },
282              {
283                "title": "WAN Federation",
284                "path": "connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways"
285              }
286            ]
287          },
288          {
289            "title": "External <> Internal Services -  Ingress Gateways",
290            "path": "connect/gateways/ingress-gateway"
291          },
292          {
293            "title": "Internal <> External Services - Terminating Gateways",
294            "path": "connect/gateways/terminating-gateway"
295          }
296        ]
297      },
298      {
299        "title": "Nomad",
300        "path": "connect/nomad"
301      },
302      {
303        "title": "Kubernetes",
304        "href": "/docs/k8s/connect"
305      },
306      {
307        "title": "Native App Integration",
308        "routes": [
309          {
310            "title": "Overview",
311            "path": "connect/native"
312          },
313          {
314            "title": "Go Integration",
315            "path": "connect/native/go"
316          }
317        ]
318      },
319      {
320        "title": "Certificate Management",
321        "routes": [
322          {
323            "title": "Overview",
324            "path": "connect/ca"
325          },
326          {
327            "title": "Built-In CA",
328            "path": "connect/ca/consul"
329          },
330          {
331            "title": "Vault",
332            "path": "connect/ca/vault"
333          },
334          {
335            "title": "ACM Private CA",
336            "path": "connect/ca/aws"
337          }
338        ]
339      },
340      {
341        "title": "Develop and Debug",
342        "path": "connect/dev"
343      },
344      {
345        "title": "Security",
346        "path": "connect/security",
347        "hidden": true
348      }
349    ]
350  },
351  {
352    "title": "Kubernetes",
353    "routes": [
354      {
355        "title": "Overview",
356        "path": "k8s"
357      },
358      {
359        "title": "Get Started",
360        "routes": [
361          {
362            "title": "Install with Helm Chart",
363            "path": "k8s/installation/install"
364          },
365          {
366            "title": "Platform Guides",
367            "routes": [
368              {
369                "title": "Minikube",
370                "href": "https://learn.hashicorp.com/tutorials/consul/kubernetes-minikube?utm_source=consul.io&utm_medium=docs&utm_content=k8s&utm_term=mk"
371              },
372              {
373                "title": "Kind",
374                "href": "https://learn.hashicorp.com/tutorials/consul/kubernetes-kind?utm_source=consul.io&utm_medium=docs&utm_content=k8s&utm_term=kind"
375              },
376              {
377                "title": "AKS (Azure)",
378                "href": "https://learn.hashicorp.com/tutorials/consul/kubernetes-aks-azure?utm_source=consul.io&utm_medium=docs&utm_content=k8s&utm_term=aks"
379              },
380              {
381                "title": "EKS (AWS)",
382                "href": "https://learn.hashicorp.com/tutorials/consul/kubernetes-eks-aws?utm_source=consul.io&utm_medium=docs&utm_content=k8s&utm_term=eks"
383              },
384              {
385                "title": "GKE (Google Cloud)",
386                "href": "https://learn.hashicorp.com/tutorials/consul/kubernetes-gke-google?utm_source=consul.io&utm_medium=docs&utm_content=k8s&utm_term=gke"
387              },
388              {
389                "title": "Red Hat OpenShift",
390                "href": "https://learn.hashicorp.com/tutorials/consul/kubernetes-openshift-red-hat?utm_source=consul.io&utm_medium=docs&utm_content=k8s&utm_term=openshift"
391              },
392              {
393                "title": "Self Hosted Kubernetes",
394                "path": "k8s/installation/platforms/self-hosted-kubernetes"
395              }
396            ]
397          },
398          {
399            "title": "Deployment Configurations",
400            "routes": [
401              {
402                "title": "Consul Clients Outside Kubernetes",
403                "path": "k8s/installation/deployment-configurations/clients-outside-kubernetes"
404              },
405              {
406                "title": "Consul Servers Outside Kubernetes",
407                "path": "k8s/installation/deployment-configurations/servers-outside-kubernetes"
408              },
409              {
410                "title": "Single Consul Datacenter in Multiple Kubernetes Clusters",
411                "path": "k8s/installation/deployment-configurations/single-dc-multi-k8s"
412              },
413              {
414                "title": "Consul Enterprise",
415                "path": "k8s/installation/deployment-configurations/consul-enterprise"
416              }
417            ]
418          },
419          {
420            "title": "Multi-Cluster Federation",
421            "routes": [
422              {
423                "title": "Overview",
424                "path": "k8s/installation/multi-cluster"
425              },
426              {
427                "title": "Federation Between Kubernetes Clusters",
428                "path": "k8s/installation/multi-cluster/kubernetes"
429              },
430              {
431                "title": "Federation Between VMs and Kubernetes",
432                "path": "k8s/installation/multi-cluster/vms-and-kubernetes"
433              }
434            ]
435          }
436        ]
437      },
438      {
439        "title": "Service Mesh",
440        "routes": [
441          {
442            "title": "Overview",
443            "path": "k8s/connect"
444          },
445          {
446            "title": "Transparent Proxy",
447            "href": "/docs/connect/transparent-proxy"
448          },
449          {
450            "title": "Ingress Gateways",
451            "path": "k8s/connect/ingress-gateways"
452          },
453          {
454            "title": "Terminating Gateways",
455            "path": "k8s/connect/terminating-gateways"
456          },
457          {
458            "title": "Ingress Controllers",
459            "path": "k8s/connect/ingress-controllers"
460          },
461          {
462            "title": "Configuring a Connect CA Provider",
463            "path": "k8s/connect/connect-ca-provider"
464          },
465          {
466            "title": "Ambassador Integration",
467            "path": "k8s/connect/ambassador"
468          },
469          {
470            "title": "Health Checks",
471            "path": "k8s/connect/health"
472          },
473          {
474            "title": "Observability",
475            "routes": [
476              {
477                "title": "Metrics",
478                "path": "k8s/connect/observability/metrics"
479              }
480            ]
481          }
482        ]
483      },
484      {
485        "title": "Service Sync",
486        "path": "k8s/service-sync"
487      },
488      {
489        "title": "Custom Resource Definitions",
490        "routes": [
491          {
492            "title": "Overview",
493            "path": "k8s/crds"
494          },
495          {
496            "title": "Upgrade An Existing Cluster to CRDs",
497            "path": "k8s/crds/upgrade-to-crds"
498          }
499        ]
500      },
501      {
502        "title": "Consul DNS",
503        "path": "k8s/dns"
504      },
505      {
506        "title": "Upgrade",
507        "routes": [
508          {
509            "title": "Overview",
510            "path": "k8s/upgrade"
511          },
512          {
513            "title": "Compatibility Matrix",
514            "path": "k8s/upgrade/compatibility"
515          }
516        ]
517      },
518      {
519        "title": "Operations",
520        "routes": [
521          {
522            "title": "Uninstall",
523            "path": "k8s/operations/uninstall"
524          },
525          {
526            "title": "Certificate Rotation",
527            "path": "k8s/operations/certificate-rotation"
528          },
529          {
530            "title": "Gossip Encryption Key Rotation",
531            "path": "k8s/operations/gossip-encryption-key-rotation"
532          },
533          {
534            "title": "Configure TLS on an Existing Cluster",
535            "path": "k8s/operations/tls-on-existing-cluster"
536          }
537        ]
538      },
539      {
540        "title": "Troubleshoot",
541        "routes": [
542          {
543            "title": "Common Error Messages",
544            "href": "/docs/troubleshoot/common-errors#common-errors-on-kubernetes"
545          },
546          {
547            "title": "FAQ",
548            "href": "/docs/troubleshoot/faq#consul-on-kubernetes"
549          }
550        ]
551      },
552      {
553        "title": "Helm Chart Configuration",
554        "path": "k8s/helm"
555      }
556    ]
557  },
558  {
559    "title": "AWS ECS <sup>Tech Preview</sup>",
560    "routes": [
561      {
562        "title": "Overview",
563        "path": "ecs"
564      },
565      {
566        "title": "Get Started",
567        "routes": [
568          {
569            "title": "Example Installation",
570            "href": "https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/examples/dev-server-fargate"
571          },
572          {
573            "title": "Requirements",
574            "path": "ecs/get-started/requirements"
575          },
576          {
577            "title": "Install",
578            "path": "ecs/get-started/install"
579          }
580        ]
581      },
582      {
583        "title": "Architecture",
584        "path": "ecs/architecture"
585      }
586    ]
587  },
588  {
589    "title": "Network Infrastructure Automation",
590    "routes": [
591      {
592        "title": "Overview",
593        "path": "nia"
594      },
595      {
596        "title": "Get Started",
597        "routes": [
598          {
599            "title": "Installation",
600            "path": "nia/installation/install"
601          },
602          {
603            "title": "Requirements",
604            "path": "nia/installation/requirements"
605          },
606          {
607            "title": "Configure",
608            "path": "nia/installation/configure"
609          },
610          {
611            "title": "Run Consul-Terraform-Sync",
612            "path": "nia/installation/run"
613          }
614        ]
615      },
616      {
617        "title": "Architecture",
618        "path": "nia/architecture"
619      },
620      {
621        "title": "API",
622        "routes": [
623          {
624            "title": "Overview",
625            "path": "nia/api"
626          },
627          {
628            "title": "Status",
629            "path": "nia/api/status"
630          },
631          {
632            "title": "Tasks",
633            "path": "nia/api/tasks"
634          }
635        ]
636      },
637      {
638        "title": "CLI",
639        "routes": [
640          {
641            "title": "Overview",
642            "path": "nia/cli"
643          },
644          {
645            "title": "task",
646            "path": "nia/cli/task"
647          }
648        ]
649      },
650      {
651        "title": "Configuration",
652        "path": "nia/configuration"
653      },
654      {
655        "title": "Tasks",
656        "path": "nia/tasks"
657      },
658      {
659        "title": "Terraform Modules",
660        "path": "nia/terraform-modules"
661      },
662      {
663        "title": "Enterprise",
664        "routes": [
665          {
666            "title": "Overview",
667            "path": "nia/enterprise"
668          },
669
670          {
671            "title": "License",
672            "path": "nia/enterprise/license"
673          },
674          {
675            "title": "Terraform Cloud Driver",
676            "href": "/docs/nia/network-drivers/terraform-cloud"
677          }
678        ]
679      },
680      {
681        "title": "Network Drivers",
682        "routes": [
683          {
684            "title": "Overview",
685            "path": "nia/network-drivers"
686          },
687          {
688            "title": "Terraform",
689            "path": "nia/network-drivers/terraform"
690          },
691          {
692            "title": "Terraform Cloud",
693            "path": "nia/network-drivers/terraform-cloud"
694          }
695        ]
696      },
697      {
698        "title": "Compatibility",
699        "path": "nia/compatibility"
700      }
701    ]
702  },
703  {
704    "title": "Dynamic App Configuration",
705    "routes": [
706      {
707        "title": "Consul KV",
708        "path": "dynamic-app-config/kv"
709      },
710      {
711        "title": "Sessions",
712        "path": "dynamic-app-config/sessions"
713      },
714      {
715        "title": "Watches",
716        "path": "dynamic-app-config/watches"
717      }
718    ]
719  },
720  {
721    "title": "Agent",
722    "routes": [
723      {
724        "title": "Overview",
725        "path": "agent"
726      },
727      {
728        "title": "Configuration",
729        "path": "agent/options"
730      },
731      {
732        "title": "Configuration Entries",
733        "path": "agent/config-entries"
734      },
735      {
736        "title": "Telemetry",
737        "path": "agent/telemetry"
738      },
739      {
740        "title": "Sentinel",
741        "path": "agent/sentinel"
742      },
743      {
744        "title": "RPC",
745        "path": "agent/rpc",
746        "hidden": true
747      }
748    ]
749  },
750  {
751    "title": "Security",
752    "routes": [
753      {
754        "title": "Overview",
755        "path": "security"
756      },
757      {
758        "title": "Access Control (ACLs)",
759        "routes": [
760          {
761            "title": "Overview",
762            "path": "security/acl"
763          },
764          {
765            "title": "ACL System",
766            "path": "security/acl/acl-system"
767          },
768          {
769            "title": "ACL Rules",
770            "path": "security/acl/acl-rules"
771          },
772          {
773            "title": "Legacy Mode",
774            "path": "security/acl/acl-legacy"
775          },
776          {
777            "title": "Token Migration",
778            "path": "security/acl/acl-migrate-tokens"
779          },
780          {
781            "title": "Auth Methods",
782            "routes": [
783              {
784                "title": "Overview",
785                "path": "security/acl/auth-methods"
786              },
787              {
788                "title": "Kubernetes",
789                "path": "security/acl/auth-methods/kubernetes"
790              },
791              {
792                "title": "JWT",
793                "path": "security/acl/auth-methods/jwt"
794              },
795              {
796                "title": "OIDC",
797                "path": "security/acl/auth-methods/oidc"
798              }
799            ]
800          }
801        ]
802      },
803      {
804        "title": "Encryption",
805        "path": "security/encryption"
806      },
807      {
808        "title": "Security Models",
809        "routes": [
810          {
811            "title": "Overview",
812            "path": "security/security-models"
813          },
814          {
815            "title": "Core",
816            "path": "security/security-models/core"
817          },
818          {
819            "title": "Network Infrastructure Automation",
820            "path": "security/security-models/nia"
821          }
822        ]
823      }
824    ]
825  },
826  {
827    "title": "Consul Enterprise",
828    "routes": [
829      {
830        "title": "Overview",
831        "path": "enterprise"
832      },
833      {
834        "title": "Audit Logging",
835        "path": "enterprise/audit-logging"
836      },
837      {
838        "title": "Automated Backups",
839        "path": "enterprise/backups"
840      },
841      {
842        "title": "Automated Upgrades",
843        "path": "enterprise/upgrades"
844      },
845      {
846        "title": "Enhanced Read Scalability",
847        "path": "enterprise/read-scale"
848      },
849      {
850        "title": "Single sign-on - OIDC",
851        "href": "/docs/security/acl/auth-methods/oidc"
852      },
853      {
854        "title": "Redundancy Zones",
855        "path": "enterprise/redundancy"
856      },
857      {
858        "title": "Advanced Federation",
859        "path": "enterprise/federation"
860      },
861      {
862        "title": "Network Segments",
863        "path": "enterprise/network-segments"
864      },
865      {
866        "title": "Namespaces",
867        "path": "enterprise/namespaces"
868      },
869      {
870        "title": "NIA with TFE",
871        "href": "/docs/nia/enterprise"
872      },
873      {
874        "title": "Sentinel",
875        "path": "enterprise/sentinel"
876      },
877      {
878        "title": "License",
879        "routes": [
880          {
881            "title": "Overview",
882            "path": "enterprise/license/overview"
883          },
884          {
885            "title": "FAQ",
886            "path": "enterprise/license/faq"
887          }
888        ]
889      }
890    ]
891  },
892  {
893    "title": "Architecture",
894    "routes": [
895      {
896        "title": "Overview",
897        "path": "architecture"
898      },
899      {
900        "title": "Anti-Entropy",
901        "path": "architecture/anti-entropy"
902      },
903      {
904        "title": "Consensus Protocol",
905        "path": "architecture/consensus"
906      },
907      {
908        "title": "Gossip Protocol",
909        "path": "architecture/gossip"
910      },
911      {
912        "title": "Jepsen Testing",
913        "path": "architecture/jepsen"
914      },
915      {
916        "title": "Network Coordinates",
917        "path": "architecture/coordinates"
918      }
919    ]
920  },
921  {
922    "title": "Integrations",
923    "routes": [
924      {
925        "title": "Consul Integration Program",
926        "path": "integrate/partnerships"
927      },
928      {
929        "title": "NIA Integration Program",
930        "path": "integrate/nia-integration"
931      },
932      {
933        "title": "Vault Integration",
934        "href": "/docs/connect/ca/vault"
935      },
936      {
937        "title": "Ambassador Integration",
938        "href": "/docs/k8s/connect/ambassador"
939      },
940      {
941        "title": "Proxy Integration",
942        "href": "/docs/connect/proxies/integrate"
943      }
944    ]
945  },
946  {
947    "title": "Consul Tools",
948    "path": "download-tools"
949  },
950  {
951    "title": "Upgrade",
952    "routes": [
953      {
954        "title": "Overview",
955        "path": "upgrading"
956      },
957      {
958        "title": "Compatibility Promise",
959        "path": "upgrading/compatibility"
960      },
961      {
962        "title": "Specific Version Details",
963        "path": "upgrading/upgrade-specific"
964      },
965      {
966        "title": "Upgrade Instructions",
967        "routes": [
968          {
969            "title": "Overview",
970            "path": "upgrading/instructions"
971          },
972          {
973            "title": "General Process",
974            "path": "upgrading/instructions/general-process"
975          },
976          {
977            "title": "Upgrading to 1.2.4",
978            "path": "upgrading/instructions/upgrade-to-1-2-x"
979          },
980          {
981            "title": "Upgrading to 1.6.9",
982            "path": "upgrading/instructions/upgrade-to-1-6-x"
983          },
984          {
985            "title": "Upgrading to 1.8.13",
986            "path": "upgrading/instructions/upgrade-to-1-8-x"
987          },
988          {
989            "title": "Upgrading to 1.10.0",
990            "path": "upgrading/instructions/upgrade-to-1-10-x"
991          }
992        ]
993      }
994    ]
995  },
996  {
997    "title": "Troubleshoot",
998    "routes": [
999      {
1000        "title": "Common Error Messages",
1001        "path": "troubleshoot/common-errors"
1002      },
1003      {
1004        "title": "FAQ",
1005        "path": "troubleshoot/faq"
1006      }
1007    ]
1008  },
1009  {
1010    "title": "Release Notes",
1011    "routes": [
1012      {
1013        "title": "1.9.0",
1014        "path": "release-notes/1-9-0"
1015      },
1016      {
1017        "title": "1.10.0",
1018        "path": "release-notes/1-10-0"
1019      }
1020    ]
1021  },
1022  {
1023    "title": "Internals",
1024    "hidden": true,
1025    "routes": [
1026      {
1027        "title": "Overview",
1028        "path": "internals"
1029      },
1030      {
1031        "title": "ACL",
1032        "path": "internals/acl"
1033      }
1034    ]
1035  },
1036  {
1037    "title": "Guides",
1038    "path": "guides",
1039    "hidden": true
1040  }
1041]
1042