Even more badges ;-)
This commit is contained in:
committed by
Ioannis Canellos
parent
06dd709865
commit
d1c3957277
35
readme.md
35
readme.md
@@ -1,5 +1,4 @@
|
||||
Spring Cloud Kubernetes
|
||||
-----------------------
|
||||
## Spring Cloud Kubernetes
|
||||
|
||||
Spring Cloud integration with Kubernetes
|
||||
|
||||
@@ -16,7 +15,7 @@ Spring Cloud integration with Kubernetes
|
||||
- [ConfigMap Archaius Bridge](#configmap-archaius-bridge)
|
||||
|
||||
---
|
||||
### DiscoveryClient for Kubernetes ###
|
||||
### DiscoveryClient for Kubernetes
|
||||
|
||||
[](https://maven-badges.herokuapp.com/maven-central/io.fabric8/spring-cloud-starter-kubernetes/)
|
||||
[](http://www.javadoc.io/doc/io.fabric8/spring-cloud-starter-kubernetes)
|
||||
@@ -49,7 +48,7 @@ spring.cloud.kubernetes.discovery.enabled=false
|
||||
|
||||
Some spring cloud components use the `DiscoveryClient` in order obtain info about the local service instance. For this to work you need to align the service name with `spring.application.name`.
|
||||
|
||||
### ConfigMap PropertySource
|
||||
#### ConfigMap PropertySource
|
||||
|
||||
The most common approach to configure your spring boot application is to edit the `application.yaml` file. Often the user may override properties by specifying system properties or env variables.
|
||||
Kubernetes has the notion of [ConfigMap](http://kubernetes.io/docs/user-guide/configmap/) for passing configuration to the application. This project provides integration with `ConfigMap` to make config maps accessible by spring boot.
|
||||
@@ -94,7 +93,7 @@ data:
|
||||
max:16
|
||||
```
|
||||
|
||||
### Pod Health Indicator
|
||||
#### Pod Health Indicator
|
||||
|
||||
Spring Boot uses [HealthIndicator](https://github.com/spring-projects/spring-boot/blob/master/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/health/HealthIndicator.java) to expose info about the health of an application.
|
||||
That makes it really useful for exposing health related information to the user and are also a good fit for use as [readiness probes](http://kubernetes.io/docs/user-guide/production-pods/#liveness-and-readiness-probes-aka-health-checks).
|
||||
@@ -105,16 +104,20 @@ The Kubernetes health indicator which is part of the core modules exposes the fo
|
||||
- visible services
|
||||
- flag that indicates if app is internal or external to Kubernetes
|
||||
|
||||
### Transparency
|
||||
#### Transparency
|
||||
|
||||
All of the features described above will work equally fine regardless of wether our application is inside Kubernetes or not. This is really helpful for development and troubleshooting.
|
||||
|
||||
### Kubernetes Profile Autoconfiguration
|
||||
#### Kubernetes Profile Autoconfiguration
|
||||
|
||||
When the application is run inside Kubernetes a profile named `kubernetes` will automatically get activated.
|
||||
This allows the user to customize the configuration that will be applied in and out of kubernetes *(e.g. different dev and prod configuration)*.
|
||||
|
||||
#### Ribbon discovery in Kubernetes
|
||||
### Ribbon discovery in Kubernetes
|
||||
|
||||
[](https://maven-badges.herokuapp.com/maven-central/io.fabric8/spring-cloud-starter-kubernetes-netflix/)
|
||||
[](http://www.javadoc.io/doc/io.fabric8/spring-cloud-starter-kubernetes-netflix)
|
||||
[](https://www.versioneye.com/java/io.fabric8:spring-cloud-starter-kubernetes-netflix/)
|
||||
|
||||
A Kubernetes based `ServerList` for Ribbon has been implemented. The implementation is part of the [spring-cloud-kubernetes-ribbon](spring-cloud-kubernetes-ribbon/pom.xml) module and you can use it by adding:
|
||||
|
||||
@@ -140,7 +143,11 @@ Examples that are using this module for ribbon discovery are:
|
||||
- [Kubeflix - LoanBroker - Bank](https://github.com/fabric8io/kubeflix/tree/master/examples/loanbroker/bank)
|
||||
|
||||
|
||||
#### Zipkin discovery in Kubernetes
|
||||
### Zipkin discovery in Kubernetes
|
||||
|
||||
[](https://maven-badges.herokuapp.com/maven-central/io.fabric8/spring-cloud-starter-kubernetes-zipkin/)
|
||||
[](http://www.javadoc.io/doc/io.fabric8/spring-cloud-starter-kubernetes-zipkin)
|
||||
[](https://www.versioneye.com/java/io.fabric8:spring-cloud-starter-kubernetes-zipkin/)
|
||||
|
||||
[Zipkin](https://github.com/openzipkin/zipkin) is a distributed tracing system and it is also supported by [Sleuth](https://github.com/spring-cloud/spring-cloud-sleuth).
|
||||
|
||||
@@ -161,7 +168,11 @@ Examples of application that are using Zipkin discovery in Kubernetes:
|
||||
- [iPaas Quickstarts - Spring Boot - Ribbon](https://github.com/fabric8io/ipaas-quickstarts/tree/master/quickstart/spring-boot/ribbon)
|
||||
- [Kubeflix - LoanBroker - Bank](https://github.com/fabric8io/kubeflix/tree/master/examples/loanbroker/bank)
|
||||
|
||||
#### ConfigMap Archaius Bridge
|
||||
### ConfigMap Archaius Bridge
|
||||
|
||||
[](https://maven-badges.herokuapp.com/maven-central/io.fabric8/spring-cloud-starter-kubernetes-archaius/)
|
||||
[](http://www.javadoc.io/doc/io.fabric8/spring-cloud-starter-kubernetes-archaius)
|
||||
[](https://www.versioneye.com/java/io.fabric8:spring-cloud-starter-kubernetes-archaius/)
|
||||
|
||||
Section [ConfigMap PropertySource](#configmap-propertysource) provides a brief explanation on how to configure spring boot application via ConfigMap.
|
||||
This approach will aid in creating the configuration properties objects that will be passed in our application. If our application is using Archaius it will indirectly benefit by it.
|
||||
@@ -170,7 +181,7 @@ An alternative approach that provides more direct Archaius support without getti
|
||||
This module allows you to annotate your application with the `@ArchaiusConfigMapSource` and archaius will automatically use the configmap as a watched source *(get notification on changes)*.
|
||||
|
||||
---
|
||||
#### Building
|
||||
### Building
|
||||
|
||||
You can just use maven to build it from sources:
|
||||
|
||||
@@ -178,7 +189,7 @@ You can just use maven to build it from sources:
|
||||
mvn clean install
|
||||
```
|
||||
|
||||
#### Usage
|
||||
### Usage
|
||||
|
||||
The project provides a "starter" module, so you just need to add the following dependency in your project.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user