feat: support eureka registry (#464)

Signed-off-by: charlie <qianglin98@qq.com>
This commit is contained in:
Qianglin Li
2023-08-14 11:26:39 +08:00
committed by GitHub
parent c49c8f1ec2
commit f8f8b41fa2
12 changed files with 865 additions and 0 deletions

View File

@@ -459,4 +459,109 @@ spec:
scheme: HTTP
initialDelaySeconds: 20
periodSeconds: 20
---
# Eureka service registry
---
apiVersion: v1
kind: ConfigMap
metadata:
name: eureka-cm
namespace: higress-conformance-app-backend
data:
# if you want to deploy n instances of eureka cluster,
# you should set eureka_service_address: http://eureka-0.eureka:8761/eureka,...,http://eureka-(n-1).eureka:8761/eureka
eureka_service_address: "http://eureka-0.eureka.higress-conformance-app-backend.svc:8761/eureka"
---
apiVersion: v1
kind: Service
metadata:
name: eureka
namespace: higress-conformance-app-backend
labels:
app: eureka
spec:
clusterIP: None
ports:
- port: 8761
name: eureka
selector:
app: eureka
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: eureka
namespace: higress-conformance-app-backend
spec:
serviceName: eureka
# n instances
replicas: 1
selector:
matchLabels:
app: eureka
template:
metadata:
labels:
app: eureka
spec:
containers:
- name: eureka
image: bitinit/eureka
ports:
- containerPort: 8761
name: http
protocol: TCP
resources:
requests:
memory: "500Mi"
cpu: "500m"
env:
- name: EUREKA_SERVER_ADDRESS
valueFrom:
configMapKeyRef:
name: eureka-cm
key: eureka_service_address
- name: ENVIRONMENT
value: "prod"
- name: JVM_OPTS
value: "-Xms1g -Xmx1g"
livenessProbe:
httpGet:
path: /
port: 8761
initialDelaySeconds: 30
periodSeconds: 10
readinessProbe:
httpGet:
path: /
port: 8761
initialDelaySeconds: 30
periodSeconds: 10
---
apiVersion: v1
kind: Pod
metadata:
name: eureka-registry-provider
namespace: higress-conformance-app-backend
spec:
containers:
- name: eureka-registry-provider
image: charlie1380/eureka-registry-provider:v0.3.0
env:
- name: EUREKA_SERVER_ADDRESS
valueFrom:
configMapKeyRef:
name: eureka-cm
key: eureka_service_address
ports:
- containerPort: 8888
name: http
protocol: TCP
readinessProbe:
failureThreshold: 5
httpGet:
path: /healthz
port: 8888
scheme: HTTP
periodSeconds: 1