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": "Network Drivers",
664        "path": "nia/network-drivers"
665      },
666      {
667        "title": "Compatibility",
668        "path": "nia/compatibility"
669      }
670    ]
671  },
672  {
673    "title": "Dynamic App Configuration",
674    "routes": [
675      {
676        "title": "Consul KV",
677        "path": "dynamic-app-config/kv"
678      },
679      {
680        "title": "Sessions",
681        "path": "dynamic-app-config/sessions"
682      },
683      {
684        "title": "Watches",
685        "path": "dynamic-app-config/watches"
686      }
687    ]
688  },
689  {
690    "title": "Agent",
691    "routes": [
692      {
693        "title": "Overview",
694        "path": "agent"
695      },
696      {
697        "title": "Configuration",
698        "path": "agent/options"
699      },
700      {
701        "title": "Configuration Entries",
702        "path": "agent/config-entries"
703      },
704      {
705        "title": "Telemetry",
706        "path": "agent/telemetry"
707      },
708      {
709        "title": "Sentinel",
710        "path": "agent/sentinel"
711      },
712      {
713        "title": "RPC",
714        "path": "agent/rpc",
715        "hidden": true
716      }
717    ]
718  },
719  {
720    "title": "Security",
721    "routes": [
722      {
723        "title": "Overview",
724        "path": "security"
725      },
726      {
727        "title": "Access Control (ACLs)",
728        "routes": [
729          {
730            "title": "Overview",
731            "path": "security/acl"
732          },
733          {
734            "title": "ACL System",
735            "path": "security/acl/acl-system"
736          },
737          {
738            "title": "ACL Rules",
739            "path": "security/acl/acl-rules"
740          },
741          {
742            "title": "Legacy Mode",
743            "path": "security/acl/acl-legacy"
744          },
745          {
746            "title": "Token Migration",
747            "path": "security/acl/acl-migrate-tokens"
748          },
749          {
750            "title": "Auth Methods",
751            "routes": [
752              {
753                "title": "Overview",
754                "path": "security/acl/auth-methods"
755              },
756              {
757                "title": "Kubernetes",
758                "path": "security/acl/auth-methods/kubernetes"
759              },
760              {
761                "title": "JWT",
762                "path": "security/acl/auth-methods/jwt"
763              },
764              {
765                "title": "OIDC",
766                "path": "security/acl/auth-methods/oidc"
767              }
768            ]
769          }
770        ]
771      },
772      {
773        "title": "Encryption",
774        "path": "security/encryption"
775      },
776      {
777        "title": "Security Models",
778        "routes": [
779          {
780            "title": "Overview",
781            "path": "security/security-models"
782          },
783          {
784            "title": "Core",
785            "path": "security/security-models/core"
786          },
787          {
788            "title": "Network Infrastructure Automation",
789            "path": "security/security-models/nia"
790          }
791        ]
792      }
793    ]
794  },
795  {
796    "title": "Consul Enterprise",
797    "routes": [
798      {
799        "title": "Overview",
800        "path": "enterprise"
801      },
802      {
803        "title": "Audit Logging",
804        "path": "enterprise/audit-logging"
805      },
806      {
807        "title": "Automated Backups",
808        "path": "enterprise/backups"
809      },
810      {
811        "title": "Automated Upgrades",
812        "path": "enterprise/upgrades"
813      },
814      {
815        "title": "Enhanced Read Scalability",
816        "path": "enterprise/read-scale"
817      },
818      {
819        "title": "Single sign-on - OIDC",
820        "href": "/docs/security/acl/auth-methods/oidc"
821      },
822      {
823        "title": "Redundancy Zones",
824        "path": "enterprise/redundancy"
825      },
826      {
827        "title": "Advanced Federation",
828        "path": "enterprise/federation"
829      },
830      {
831        "title": "Namespaces",
832        "path": "enterprise/namespaces"
833      },
834      {
835        "title": "Network Segments",
836        "path": "enterprise/network-segments"
837      },
838      {
839        "title": "Sentinel",
840        "path": "enterprise/sentinel"
841      },
842      {
843        "title": "License",
844        "routes": [
845          {
846            "title": "Overview",
847            "path": "enterprise/license/overview"
848          },
849          {
850            "title": "FAQ",
851            "path": "enterprise/license/faq"
852          }
853        ]
854      }
855    ]
856  },
857  {
858    "title": "Architecture",
859    "routes": [
860      {
861        "title": "Overview",
862        "path": "architecture"
863      },
864      {
865        "title": "Anti-Entropy",
866        "path": "architecture/anti-entropy"
867      },
868      {
869        "title": "Consensus Protocol",
870        "path": "architecture/consensus"
871      },
872      {
873        "title": "Gossip Protocol",
874        "path": "architecture/gossip"
875      },
876      {
877        "title": "Jepsen Testing",
878        "path": "architecture/jepsen"
879      },
880      {
881        "title": "Network Coordinates",
882        "path": "architecture/coordinates"
883      }
884    ]
885  },
886  {
887    "title": "Integrations",
888    "routes": [
889      {
890        "title": "Consul Integration Program",
891        "path": "integrate/partnerships"
892      },
893      {
894        "title": "NIA Integration Program",
895        "path": "integrate/nia-integration"
896      },
897      {
898        "title": "Vault Integration",
899        "href": "/docs/connect/ca/vault"
900      },
901      {
902        "title": "Ambassador Integration",
903        "href": "/docs/k8s/connect/ambassador"
904      },
905      {
906        "title": "Proxy Integration",
907        "href": "/docs/connect/proxies/integrate"
908      }
909    ]
910  },
911  {
912    "title": "Consul Tools",
913    "path": "download-tools"
914  },
915  {
916    "title": "Upgrade",
917    "routes": [
918      {
919        "title": "Overview",
920        "path": "upgrading"
921      },
922      {
923        "title": "Compatibility Promise",
924        "path": "upgrading/compatibility"
925      },
926      {
927        "title": "Specific Version Details",
928        "path": "upgrading/upgrade-specific"
929      },
930      {
931        "title": "Upgrade Instructions",
932        "routes": [
933          {
934            "title": "Overview",
935            "path": "upgrading/instructions"
936          },
937          {
938            "title": "General Process",
939            "path": "upgrading/instructions/general-process"
940          },
941          {
942            "title": "Upgrading to 1.2.4",
943            "path": "upgrading/instructions/upgrade-to-1-2-x"
944          },
945          {
946            "title": "Upgrading to 1.6.9",
947            "path": "upgrading/instructions/upgrade-to-1-6-x"
948          },
949          {
950            "title": "Upgrading to 1.8.13",
951            "path": "upgrading/instructions/upgrade-to-1-8-x"
952          },
953          {
954            "title": "Upgrading to 1.10.0",
955            "path": "upgrading/instructions/upgrade-to-1-10-x"
956          }
957        ]
958      }
959    ]
960  },
961  {
962    "title": "Troubleshoot",
963    "routes": [
964      {
965        "title": "Common Error Messages",
966        "path": "troubleshoot/common-errors"
967      },
968      {
969        "title": "FAQ",
970        "path": "troubleshoot/faq"
971      }
972    ]
973  },
974  {
975    "title": "Release Notes",
976    "routes": [
977      {
978        "title": "1.9.0",
979        "path": "release-notes/1-9-0"
980      },
981      {
982        "title": "1.10.0",
983        "path": "release-notes/1-10-0"
984      }
985    ]
986  },
987  {
988    "title": "Internals",
989    "hidden": true,
990    "routes": [
991      {
992        "title": "Overview",
993        "path": "internals"
994      },
995      {
996        "title": "ACL",
997        "path": "internals/acl"
998      }
999    ]
1000  },
1001  {
1002    "title": "Guides",
1003    "path": "guides",
1004    "hidden": true
1005  }
1006]
1007