This library is dedicated for Spring Boot application. Once it is included and enabled it is creating Istio resources on the current Kubernetes cluster basing on the code and annotation fields @EnableIstio
.
The library is published on Maven Central. Current version is 0.1.1.RELEASE
<dependency>
<groupId>com.github.piomin</groupId>
<artifactId>istio-spring-boot-starter</artifactId>
<version>0.1.1.RELEASE</version>
</dependency>
The library provides auto-configured support for creating Istio resources on Kubernetes basing on annotation @EnableIstio
.
@SpringBootApplication
@EnableIstio(version = "v1", retries = 3, timeout = 3)
public class CallmeApplication {
public static void main(String[] args) {
SpringApplication.run(CallmeApplication.class, args);
}
}
Here's the architecture of presented solution. Spring Boot Istio Library is included to the target application. It uses Java Istio Client to communication with istiod. During application startup the library is communicating with Istio API in order to create DestinationRule
and VirtualService
objects.