From ecf5552d9095da079b9c158cd143b0d35549b748 Mon Sep 17 00:00:00 2001 From: spencergibb Date: Tue, 19 Sep 2023 13:09:58 -0400 Subject: [PATCH] Insert explicit ids for headers --- docs/modules/ROOT/pages/_configprops.adoc | 2 +- docs/modules/ROOT/pages/discovery-client.adoc | 1 + docs/modules/ROOT/pages/discovery-kubernetes-native.adoc | 1 + docs/modules/ROOT/pages/examples.adoc | 1 + docs/modules/ROOT/pages/getting-started.adoc | 1 + docs/modules/ROOT/pages/info-contributor.adoc | 1 + docs/modules/ROOT/pages/kubernetes-awareness.adoc | 4 ++++ docs/modules/ROOT/pages/leader-election.adoc | 1 + docs/modules/ROOT/pages/load-balancer.adoc | 1 + docs/modules/ROOT/pages/other-resources.adoc | 1 + docs/modules/ROOT/pages/pod-health-indicator.adoc | 1 + docs/modules/ROOT/pages/property-source-config.adoc | 3 +++ docs/modules/ROOT/pages/security-service-accounts.adoc | 3 +++ docs/modules/ROOT/pages/service-registry.adoc | 1 + docs/modules/ROOT/pages/spring-cloud-kubernetes.adoc | 7 +++++++ 15 files changed, 28 insertions(+), 1 deletion(-) diff --git a/docs/modules/ROOT/pages/_configprops.adoc b/docs/modules/ROOT/pages/_configprops.adoc index d6e8d2d5..01a5d8cd 100644 --- a/docs/modules/ROOT/pages/_configprops.adoc +++ b/docs/modules/ROOT/pages/_configprops.adoc @@ -113,4 +113,4 @@ |spring.cloud.kubernetes.secrets.sources | | |spring.cloud.kubernetes.secrets.use-name-as-prefix | `+++false+++` | -|=== \ No newline at end of file +|=== diff --git a/docs/modules/ROOT/pages/discovery-client.adoc b/docs/modules/ROOT/pages/discovery-client.adoc index 99d6a182..c0117ecf 100644 --- a/docs/modules/ROOT/pages/discovery-client.adoc +++ b/docs/modules/ROOT/pages/discovery-client.adoc @@ -1,3 +1,4 @@ +[[discoveryclient-for-kubernetes]] == DiscoveryClient for Kubernetes This project provides an implementation of https://github.com/spring-cloud/spring-cloud-commons/blob/master/spring-cloud-commons/src/main/java/org/springframework/cloud/client/discovery/DiscoveryClient.java[Discovery Client] diff --git a/docs/modules/ROOT/pages/discovery-kubernetes-native.adoc b/docs/modules/ROOT/pages/discovery-kubernetes-native.adoc index aa5e2f8d..53ecab87 100644 --- a/docs/modules/ROOT/pages/discovery-kubernetes-native.adoc +++ b/docs/modules/ROOT/pages/discovery-kubernetes-native.adoc @@ -1,3 +1,4 @@ +[[kubernetes-native-service-discovery]] == Kubernetes native service discovery Kubernetes itself is capable of (server side) service discovery (see: https://kubernetes.io/docs/concepts/services-networking/service/#discovering-services). diff --git a/docs/modules/ROOT/pages/examples.adoc b/docs/modules/ROOT/pages/examples.adoc index 6754e0f0..ee375fb6 100644 --- a/docs/modules/ROOT/pages/examples.adoc +++ b/docs/modules/ROOT/pages/examples.adoc @@ -1,3 +1,4 @@ +[[examples]] == Examples Spring Cloud Kubernetes tries to make it transparent for your applications to consume Kubernetes Native Services by diff --git a/docs/modules/ROOT/pages/getting-started.adoc b/docs/modules/ROOT/pages/getting-started.adoc index e62c0f5f..571a9388 100644 --- a/docs/modules/ROOT/pages/getting-started.adoc +++ b/docs/modules/ROOT/pages/getting-started.adoc @@ -1,3 +1,4 @@ +[[starters]] == Starters Starters are convenient dependency descriptors you can include in your diff --git a/docs/modules/ROOT/pages/info-contributor.adoc b/docs/modules/ROOT/pages/info-contributor.adoc index 7f2057e1..040156a1 100644 --- a/docs/modules/ROOT/pages/info-contributor.adoc +++ b/docs/modules/ROOT/pages/info-contributor.adoc @@ -1,3 +1,4 @@ +[[info-contributor]] == Info Contributor Spring Cloud Kubernetes includes an `InfoContributor` which adds Pod information to diff --git a/docs/modules/ROOT/pages/kubernetes-awareness.adoc b/docs/modules/ROOT/pages/kubernetes-awareness.adoc index d2687e77..973d9599 100644 --- a/docs/modules/ROOT/pages/kubernetes-awareness.adoc +++ b/docs/modules/ROOT/pages/kubernetes-awareness.adoc @@ -1,3 +1,4 @@ +[[kubernetes-ecosystem-awareness]] == Kubernetes Ecosystem Awareness All features described earlier in this guide work equally well, regardless of whether your application is running inside @@ -20,18 +21,21 @@ you will have to set `spring.main.cloud-platform` should be set in `bootstrap.{p (or the profile specific one). Also note that these properties: `spring.cloud.kubernetes.config.enabled` and `spring.cloud.kubernetes.secrets.enabled` will only take effect when set in `bootstrap.{properties|yml}` when you have `spring-cloud-starter-bootstrap` on your classpath or are setting `spring.cloud.bootstrap.enabled=true`. +[[breaking-changes-in-3-0-x]] === Breaking Changes In 3.0.x In versions of Spring Cloud Kubernetes prior to `3.0.x`, Kubernetes awareness was implemented using `spring.cloud.kubernetes.enabled` property. This property was removed and is un-supported. Instead, we use Spring Boot API: https://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/autoconfigure/condition/ConditionalOnCloudPlatform.html[ConditionalOnCloudPlatform]. If it is needed to explicitly enable or disable this awareness, use `spring.main.cloud-platform=NONE/KUBERNETES`. +[[kubernetes-profile-autoconfiguration]] === Kubernetes Profile Autoconfiguration When the application runs as a pod inside Kubernetes, a Spring profile named `kubernetes` automatically gets activated. This lets you customize the configuration, to define beans that are applied when the Spring Boot application is deployed within the Kubernetes platform (for example, different development and production configuration). +[[istio-awareness]] === Istio Awareness When you include the `spring-cloud-kubernetes-fabric8-istio` module in the application classpath, a new profile is added to the application, diff --git a/docs/modules/ROOT/pages/leader-election.adoc b/docs/modules/ROOT/pages/leader-election.adoc index 0a03a764..00dd9a54 100644 --- a/docs/modules/ROOT/pages/leader-election.adoc +++ b/docs/modules/ROOT/pages/leader-election.adoc @@ -1,3 +1,4 @@ +[[leader-election]] == Leader Election The Spring Cloud Kubernetes leader election mechanism implements the leader election API of Spring Integration using a Kubernetes ConfigMap. diff --git a/docs/modules/ROOT/pages/load-balancer.adoc b/docs/modules/ROOT/pages/load-balancer.adoc index 037b45b3..0a25af70 100644 --- a/docs/modules/ROOT/pages/load-balancer.adoc +++ b/docs/modules/ROOT/pages/load-balancer.adoc @@ -1,3 +1,4 @@ +[[loadbalancer-for-kubernetes]] == LoadBalancer for Kubernetes This project includes Spring Cloud Load Balancer for load balancing based on Kubernetes Endpoints and provides implementation of load balancer based on Kubernetes Service. To include it to your project add the following dependency. diff --git a/docs/modules/ROOT/pages/other-resources.adoc b/docs/modules/ROOT/pages/other-resources.adoc index 542cdaf0..430b1a03 100644 --- a/docs/modules/ROOT/pages/other-resources.adoc +++ b/docs/modules/ROOT/pages/other-resources.adoc @@ -1,3 +1,4 @@ +[[other-resources]] == Other Resources This section lists other resources, such as presentations (slides) and videos about Spring Cloud Kubernetes. diff --git a/docs/modules/ROOT/pages/pod-health-indicator.adoc b/docs/modules/ROOT/pages/pod-health-indicator.adoc index 3c59f2e3..9ef4fd8b 100644 --- a/docs/modules/ROOT/pages/pod-health-indicator.adoc +++ b/docs/modules/ROOT/pages/pod-health-indicator.adoc @@ -1,3 +1,4 @@ +[[pod-health-indicator]] == Pod Health Indicator Spring Boot uses https://github.com/spring-projects/spring-boot/blob/master/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/health/HealthEndpoint.java[`HealthIndicator`] to expose info about the health of an application. diff --git a/docs/modules/ROOT/pages/property-source-config.adoc b/docs/modules/ROOT/pages/property-source-config.adoc index 25a00f1c..24ec58f4 100644 --- a/docs/modules/ROOT/pages/property-source-config.adoc +++ b/docs/modules/ROOT/pages/property-source-config.adoc @@ -1,3 +1,4 @@ +[[kubernetes-propertysource-implementations]] == Kubernetes PropertySource implementations The most common approach to configuring your Spring Boot application is to create an `application.properties` or `application.yaml` or @@ -634,6 +635,7 @@ by setting `spring.cloud.kubernetes.config.retry.enabled=false`. | `spring.cloud.kubernetes.config.retry.multiplier` | `Double` | `1.1` | Multiplier for next interval. |=== +[[secrets-propertysource]] === Secrets PropertySource Kubernetes has the notion of https://kubernetes.io/docs/concepts/configuration/secret/[Secrets] for storing @@ -872,6 +874,7 @@ Failure to find a namespace from the above steps will result in an Exception bei If, for whatever reason, you enabled both configmaps and secrets, and there is a common property between them, the value from the ConfigMap will have a higher precedence. That is: it will override whatever values are found in secrets. +[[propertysource-reload]] === `PropertySource` Reload WARNING: This functionality has been deprecated in the 2020.0 release. Please see diff --git a/docs/modules/ROOT/pages/security-service-accounts.adoc b/docs/modules/ROOT/pages/security-service-accounts.adoc index ddd5da50..c959c5bb 100644 --- a/docs/modules/ROOT/pages/security-service-accounts.adoc +++ b/docs/modules/ROOT/pages/security-service-accounts.adoc @@ -1,6 +1,8 @@ +[[security-configurations-inside-kubernetes]] == Security Configurations Inside Kubernetes +[[namespace]] === Namespace Most of the components provided in this project need to know the namespace. For Kubernetes (1.3+), the namespace is made available to the pod as part of the service account secret and is automatically detected by the client. @@ -17,6 +19,7 @@ For earlier versions, it needs to be specified as an environment variable to the ---- ==== +[[service-account]] === Service Account For distributions of Kubernetes that support more fine-grained role-based access within the cluster, you need to make sure a pod that runs with `spring-cloud-kubernetes` has access to the Kubernetes API. diff --git a/docs/modules/ROOT/pages/service-registry.adoc b/docs/modules/ROOT/pages/service-registry.adoc index 723e928a..8614544e 100644 --- a/docs/modules/ROOT/pages/service-registry.adoc +++ b/docs/modules/ROOT/pages/service-registry.adoc @@ -1,3 +1,4 @@ +[[service-registry-implementation]] == Service Registry Implementation In Kubernetes service registration is controlled by the platform, the application itself does not control diff --git a/docs/modules/ROOT/pages/spring-cloud-kubernetes.adoc b/docs/modules/ROOT/pages/spring-cloud-kubernetes.adoc index 275eb992..5ca1b8a3 100644 --- a/docs/modules/ROOT/pages/spring-cloud-kubernetes.adoc +++ b/docs/modules/ROOT/pages/spring-cloud-kubernetes.adoc @@ -1,8 +1,10 @@ +[[spring-cloud-kubernetes]] = Spring Cloud Kubernetes include::_attributes.adoc[] This reference guide covers how to use Spring Cloud Kubernetes. +[[why-do-you-need-spring-cloud-kubernetes?]] == Why do you need Spring Cloud Kubernetes? Spring Cloud Kubernetes provides implementations of well known Spring Cloud interfaces allowing developers to build and run Spring Cloud applications on Kubernetes. While this project may be useful to you when building a cloud native application, it is also not a requirement in order to deploy a Spring Boot app on Kubernetes. If you are just getting started in your journey to running your Spring Boot app on Kubernetes you can accomplish a lot with nothing more than a basic Spring Boot app and Kubernetes itself. To learn more, you can get started by reading the https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#cloud-deployment-kubernetes[Spring Boot reference documentation for deploying to Kubernetes ] and also working through the workshop material https://hackmd.io/@ryanjbaxter/spring-on-k8s-workshop[Spring and Kubernetes]. @@ -39,14 +41,17 @@ include::examples.adoc[] include::other-resources.adoc[] +[[configuration-properties]] == Configuration properties To see the list of all Kubernetes related configuration properties please check link:appendix.html[the Appendix page]. +[[building]] == Building include::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/main/docs/modules/ROOT/partials/building.adoc[] +[[building-docker-images-on-arm64]] === Building Docker Images On ARM64 If you run the Spring Cloud Kuberentes build on an ARM64 machine the docker images @@ -60,10 +65,12 @@ For example: ``` +[[contributing]] == Contributing include::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/main/docs/modules/ROOT/partials/contributing.adoc[] +[[aot-and-native-image-support]] == AOT and native image support At this point, Spring Cloud Kubernetes does not support Spring Boot AOT transformations or native images. Partial support might be added in future releases.