Jämförda versioner

Nyckel

  • Dessa rader lades till.
  • Denna rad togs bort.
  • Formateringen ändrades.

...

I det enklaste fallet är det en statisk lista med URL:er som anropas i angiven följd vid “reset cache”. I en Kubernetes-installation finns även möjlighet att dynamiskt slå upp vilka poddar som är aktiva med hjälp av Kubernetes API.

Installation

Tjänsten är levereras som en Tomcat-applikation ( war-fil ) och kan installeras i t.ex. Tomcat på liknande sätt som tak-web och tak-services.

...

Info

Reset sker i den ordning som anges i listan. Det är viktigt att alla instanser av tak-services anges först eftersom den påverkar efterföljande i början av listan då dessa påverkar övriga komponenter.

Statisk konfiguration med fil

Följande rader läggs till kan läggas till i den gemensamma filen tak-application.properties (i katalog som anges av $TAK_HOME, se SKLTP TAK - Konfiguration - version 3.0 och senare). Genom att den gemensamma filen återanvänds databas-konfigurationen.

Kodblock
languagenone
# Poll interval in ms (optionaldefault value)
tak.monitor.interval=120000=60000

# Delay before first poll in ms (default value)
tak.monitor.initial-delay=0

# No pod lookup (default value)
tak.monitor.reset.use-pod-lookup=false

# List of static reset URLs
tak.monitor.reset.nodes[0].url=http://tomcat1.example.com:8080/tak-services/reset/pv
tak.monitor.reset.nodes[1].url=http://tomcat2.example.com:8080/tak-services/reset/pv
tak.monitor.reset.nodes[2].url=http://vp1.example.com:809123000/resetcache
tak.monitor.reset.nodes[3].url=http://vp2.example.com:809123000/resetcache
tak.monitor.reset.nodes[4].url=http://server.example.com:8082/kat/resetcache

...

Pod-uppslagning i Kubernetes

Exempel på hur konfiguration kan anges i en Kubernetes ConfigMap för användning som miljövariabler. Notera att databas-lösenord även behöver anges via en secret eller motsvarande.

I denna konfiguration hämtas aktiva poddar med sökning i Kubernetes API (på label selector+namespace). URL:erna skapas sedan genom att “0.0.0.0“ ersätts med IP-adressen för varje pod.

Kodblock
languagenone
apiVersion: v1
kind: ConfigMap
metadata:
  name: tak-monitor-configmap
data:
  # Database settings
  SPRING_DATASOURCE_DRIVERCLASSNAME: com.mysql.cj.jdbc.Driver
  SPRING_DATASOURCE_URL: jdbc:mysql://mysql-host:3306/takv3?autoReconnect=true

  # Activate pod lookup
  TAK_MONITOR_RESET_USEPODLOOKUP: "true"
  TAK_MONITOR_RESET_PODNAMESPACE: skltp-default

  # List of applications, identified by label selectors
  # "0.0.0.0" is used as a placeholder for pod ip
  TAK_MONITOR_RESET_NODES_0_LABEL: app.kubernetes.io/name=tak-services
  TAK_MONITOR_RESET_NODES_0_URL: http://0.0.0.0:8080/tak-services/reset/pv
  TAK_MONITOR_RESET_NODES_1_LABEL: app=vp
  TAK_MONITOR_RESET_NODES_1_URL: http://0.0.0.0:23000/resetcache
  TAK_MONITOR_RESET_NODES_2_LABEL: app.kubernetes.io/name=kat-application
  TAK_MONITOR_RESET_NODES_2_URL: http://0.0.0.0:8082/kat/resetcache