Skip to content
Snippets Groups Projects
Commit 3f6c1f0e authored by Kawtar Laariche's avatar Kawtar Laariche
Browse files

kubernetes setup

parent ecc04b4f
No related branches found
No related tags found
No related merge requests found
apiVersion: v1
# ===============LICENSE_START=======================================================
# Graphene Apache-2.0
# ===================================================================================
# Copyright (C) 2017-2018 AT&T Intellectual Property & Tech Mahindra. All rights reserved.
# ===================================================================================
# This Graphene software file is distributed by AT&T and Tech Mahindra
# under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# This file is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ===============LICENSE_END=========================================================
# What this is: kubernetes template for Angular Frontend service
# How to use:
kind: Service
metadata:
namespace: graphene
name: angular-frontend-service
labels:
app: angular-frontend
spec:
selector:
app: angular-frontend
type: ClusterIP
ports:
- name: angular-frontend-port
port: 80
targetPort: 80
\ No newline at end of file
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: graphene
name: angular-frontend
labels:
app: angular-frontend
spec:
replicas: 1
selector:
matchLabels:
app: angular-frontend
strategy:
type: Recreate
template:
metadata:
labels:
app: angular-frontend
grapheneService: graphene
spec:
affinity:
podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: grapheneService
operator: NotIn
values:
- graphene
topologyKey: "kubernetes.io/node"
imagePullSecrets:
- name: graphene-registry
containers:
- name: angular-frontend
image: cicd.ai4eu-dev.eu:7444/aiod/angular-frontend:1.0.4
ports:
- containerPort: 80
volumeMounts:
- mountPath: /usr/share/nginx/html/logs
name: logs
restartPolicy: Always
volumes:
- name: logs
persistentVolumeClaim:
claimName: graphene
hostAliases:
- ip: "185.216.177.79"
hostnames:
- "dev02"
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: consolidated-ingress
namespace: graphene
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/proxy-buffer-size: "128k"
nginx.ingress.kubernetes.io/proxy-buffers-number: "4"
nginx.ingress.kubernetes.io/proxy-buffers-size: "256k"
nginx.ingress.kubernetes.io/proxy-busy-buffers-size: "256k"
nginx.ingress.kubernetes.io/proxy-connect-timeout: "300"
nginx.ingress.kubernetes.io/proxy-send-timeout: "300"
nginx.ingress.kubernetes.io/proxy-read-timeout: "300"
nginx.ingress.kubernetes.io/enable-cors: "true"
nginx.ingress.kubernetes.io/cors-allow-methods: "GET, POST, OPTIONS, PUT, DELETE"
nginx.ingress.kubernetes.io/cors-allow-headers: "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization"
nginx.ingress.kubernetes.io/cors-allow-origin: "*"
nginx.ingress.kubernetes.io/cors-max-age: "1728000"
spec:
ingressClassName: nginx
tls:
- hosts:
- dev02.ki-lab.nrw
secretName: ingress-cert
rules:
- host: dev02.ki-lab.nrw
http:
paths:
# New UI API path
- path: "/api/v2"
pathType: Prefix
backend:
service:
name: portal-be-service
port:
number: 8083
# Old UI API path - goes to frontend
- path: "/api"
pathType: Prefix
backend:
service:
name: portal-fe-service
port:
number: 8085
# Public endpoints
- path: "/public"
pathType: Prefix
backend:
service:
name: portal-be-service
port:
number: 8083
- path: "/catalogs"
pathType: Prefix
backend:
service:
name: portal-be-service
port:
number: 8083
- path: "/portal"
pathType: Prefix
backend:
service:
name: portal-be-service
port:
number: 8083
# New Angular UI
- path: "/v2"
pathType: Prefix
backend:
service:
name: angular-frontend-service
port:
number: 80
# Root path (for static assets and old UI)
- path: "/"
pathType: Prefix
backend:
service:
name: portal-fe-service
port:
number: 8085
\ No newline at end of file
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: dsce-double-prefix
namespace: graphene
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/use-regex: "true"
nginx.ingress.kubernetes.io/rewrite-target: /dsce$1
nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
nginx.ingress.kubernetes.io/proxy-buffer-size: "16k"
spec:
ingressClassName: nginx
rules:
- host: dev02.ki-lab.nrw
http:
paths:
# /dsce/dsce/<anything> → /dsce/<anything>
- path: /dsce/dsce(/.*)
pathType: ImplementationSpecific
backend:
service:
name: dsce-service
port:
number: 8088
\ No newline at end of file
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: dsce-prefix
namespace: graphene
annotations:
nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
nginx.ingress.kubernetes.io/proxy-buffer-size: "16k"
spec:
ingressClassName: nginx
rules:
- host: dev02.ki-lab.nrw
http:
paths:
- path: /dsce/
pathType: Prefix
backend:
service:
name: dsce-service
port:
number: 8088
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment