refactor: Update Traefik ingress routes file paths
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
# Ngnix Ingress
|
||||
|
||||
```bash
|
||||
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
|
||||
helm repo update
|
||||
helm install nginx ingress-nginx/ingress-nginx \
|
||||
--create-namespace \
|
||||
--namespace nginx-system
|
||||
|
||||
```
|
||||
@@ -0,0 +1,13 @@
|
||||
# plane
|
||||
|
||||
```bash
|
||||
helm repo add makeplane https://helm.plane.so/
|
||||
helm repo update
|
||||
helm install plane-app makeplane/plane-ce \
|
||||
--create-namespace \
|
||||
--namespace plane-ce \
|
||||
-f values.yaml \
|
||||
--timeout 10m \
|
||||
--wait \
|
||||
--wait-for-jobs
|
||||
```
|
||||
@@ -0,0 +1,123 @@
|
||||
planeVersion: stable
|
||||
|
||||
dockerRegistry:
|
||||
enabled: false
|
||||
host: "index.docker.io/v1/"
|
||||
loginid: makeplane
|
||||
password: ""
|
||||
|
||||
ingress:
|
||||
enabled: true
|
||||
appHost: "plane.local"
|
||||
minioHost: "plane-minio.local"
|
||||
ingressClass: "nginx"
|
||||
ingress_annotations: {
|
||||
"nginx.ingress.kubernetes.io/proxy-body-size": "5m",
|
||||
}
|
||||
|
||||
# SSL Configuration - Valid only if ingress.enabled is true
|
||||
ssl:
|
||||
createIssuer: false
|
||||
issuer: "http" # Allowed : cloudflare, digitalocean, http
|
||||
token: "" # not required for http
|
||||
server: https://acme-v02.api.letsencrypt.org/directory
|
||||
email: plane@example.com
|
||||
generateCerts: false
|
||||
|
||||
redis:
|
||||
local_setup: true
|
||||
image: valkey/valkey:7.2.5-alpine
|
||||
servicePort: 6379
|
||||
storageClass: longhorn
|
||||
volumeSize: 1Gi
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
postgres:
|
||||
local_setup: true
|
||||
image: postgres:15.5-alpine
|
||||
servicePort: 5432
|
||||
cliConnectPort: ""
|
||||
storageClass: longhorn
|
||||
volumeSize: 5Gi
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
minio:
|
||||
image: minio/minio:latest
|
||||
local_setup: true
|
||||
pullPolicy: IfNotPresent
|
||||
root_password: password
|
||||
root_user: admin
|
||||
storageClass: longhorn
|
||||
volumeSize: 5Gi
|
||||
|
||||
web:
|
||||
replicas: 1
|
||||
memoryLimit: 1000Mi
|
||||
cpuLimit: 500m
|
||||
image: makeplane/plane-frontend
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
space:
|
||||
replicas: 1
|
||||
memoryLimit: 1000Mi
|
||||
cpuLimit: 500m
|
||||
image: makeplane/plane-space
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
admin:
|
||||
replicas: 1
|
||||
memoryLimit: 1000Mi
|
||||
cpuLimit: 500m
|
||||
image: makeplane/plane-admin
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
api:
|
||||
replicas: 1
|
||||
memoryLimit: 1000Mi
|
||||
cpuLimit: 500m
|
||||
image: makeplane/plane-backend
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
worker:
|
||||
replicas: 1
|
||||
memoryLimit: 1000Mi
|
||||
cpuLimit: 500m
|
||||
image: makeplane/plane-backend
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
beatworker:
|
||||
replicas: 1
|
||||
memoryLimit: 1000Mi
|
||||
cpuLimit: 500m
|
||||
image: makeplane/plane-backend
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
env:
|
||||
pgdb_username: plane
|
||||
pgdb_password: plane
|
||||
pgdb_name: plane
|
||||
pgdb_remote_url: "" #INCASE OF REMOTE PG DB URL ONLY
|
||||
|
||||
# NEXT_PUBLIC_DEPLOY_URL: ""
|
||||
# REDIS
|
||||
remote_redis_url: "" #INCASE OF REMOTE REDIS ONLY
|
||||
# POSTGRES DB VALUES
|
||||
|
||||
# DATA STORE
|
||||
docstore_bucket: "uploads"
|
||||
doc_upload_size_limit: "5242880" # 5MB
|
||||
|
||||
# REQUIRED IF MINIO LOCAL SETUP IS FALSE
|
||||
aws_access_key: ""
|
||||
aws_secret_access_key: ""
|
||||
aws_region: ""
|
||||
aws_s3_endpoint_url: ""
|
||||
|
||||
secret_key: "60gp0byfz2dvffa45cxl20p1scy9xbpf6d8c5y0geejgkyp1b5"
|
||||
|
||||
sentry_dsn: ""
|
||||
sentry_environment: ""
|
||||
|
||||
cors_allowed_origins: ""
|
||||
default_cluster_domain: cluster.local
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: cleanup-service-account
|
||||
namespace: kube-system
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: cleanup-admin
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: cleanup-service-account
|
||||
namespace: kube-system
|
||||
roleRef:
|
||||
kind: ClusterRole
|
||||
name: cluster-admin
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: cleanup-job
|
||||
namespace: kube-system
|
||||
labels:
|
||||
app: cleanup
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: cleanup
|
||||
image: rancher/rancher-cleanup:latest
|
||||
args: [ "force" ]
|
||||
imagePullPolicy: Always
|
||||
serviceAccountName: cleanup-service-account
|
||||
restartPolicy: Never
|
||||
backoffLimit: 4
|
||||
@@ -0,0 +1,45 @@
|
||||
# kubunetes cluster
|
||||
|
||||
## Create a cluster
|
||||
```bash
|
||||
```
|
||||
|
||||
## Delete a cluster
|
||||
```bash
|
||||
```
|
||||
|
||||
## Get cluster info
|
||||
```bash
|
||||
```
|
||||
|
||||
## Get cluster status
|
||||
```bash
|
||||
```
|
||||
|
||||
## Get cluster logs
|
||||
```bash
|
||||
```
|
||||
|
||||
## Get cluster events
|
||||
```bash
|
||||
```
|
||||
|
||||
## Get cluster nodes
|
||||
```bash
|
||||
```
|
||||
|
||||
## Delete rancher
|
||||
|
||||
### Using the cleanup script
|
||||
Run as a Kubernetes Job
|
||||
```bash
|
||||
k create -f rancher-cleanup.yaml
|
||||
kubectl -n kube-system logs -l job-name=cleanup-job -f
|
||||
```
|
||||
|
||||
Verify that the job has completed
|
||||
```bash
|
||||
kubectl apply -f verify.yaml
|
||||
kubectl -n kube-system logs -l job-name=verify-job -f
|
||||
kubectl -n kube-system logs -l job-name=verify-job -f | grep -v "is deprecated"
|
||||
```
|
||||
@@ -0,0 +1,47 @@
|
||||
apiVersion: traefik.io/v1alpha1
|
||||
kind: IngressRoute
|
||||
metadata:
|
||||
name: myingressroute
|
||||
namespace: default
|
||||
|
||||
spec:
|
||||
entryPoints:
|
||||
- web
|
||||
|
||||
routes:
|
||||
- match: Host(`test.traefik.local`) && PathPrefix(`/bar`)
|
||||
kind: Rule
|
||||
services:
|
||||
- name: whoami
|
||||
port: 80
|
||||
|
||||
---
|
||||
apiVersion: traefik.io/v1alpha1
|
||||
kind: IngressRouteTCP
|
||||
metadata:
|
||||
name: ingressroute.tcp
|
||||
namespace: default
|
||||
|
||||
spec:
|
||||
entryPoints:
|
||||
- tcpep
|
||||
routes:
|
||||
- match: HostSNI(`testtcp.traefik.local`)
|
||||
services:
|
||||
- name: whoamitcp
|
||||
port: 8080
|
||||
|
||||
---
|
||||
apiVersion: traefik.io/v1alpha1
|
||||
kind: IngressRouteUDP
|
||||
metadata:
|
||||
name: ingressroute.udp
|
||||
namespace: default
|
||||
|
||||
spec:
|
||||
entryPoints:
|
||||
- udpep
|
||||
routes:
|
||||
- services:
|
||||
- name: whoamiudp
|
||||
port: 8080
|
||||
@@ -0,0 +1,8 @@
|
||||
# traefik ingress route
|
||||
|
||||
## Description
|
||||
```bash
|
||||
k apply -f ingress_route.yaml -f whoami.yaml
|
||||
http://test.traefik.local/bar
|
||||
k delete -f ingress_route.yaml -f whoami.yaml
|
||||
```
|
||||
@@ -0,0 +1,82 @@
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: traefik-ingress-controller
|
||||
|
||||
---
|
||||
kind: Deployment
|
||||
apiVersion: apps/v1
|
||||
metadata:
|
||||
name: traefik
|
||||
labels:
|
||||
app: traefik
|
||||
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: traefik
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: traefik
|
||||
spec:
|
||||
serviceAccountName: traefik-ingress-controller
|
||||
containers:
|
||||
- name: traefik
|
||||
image: traefik:v3.1
|
||||
args:
|
||||
- --log.level=DEBUG
|
||||
- --api
|
||||
- --api.insecure
|
||||
- --entryPoints.web.address=:80
|
||||
- --entryPoints.tcpep.address=:8000
|
||||
- --entryPoints.udpep.address=:9000/udp
|
||||
- --providers.kubernetescrd
|
||||
ports:
|
||||
- name: web
|
||||
containerPort: 80
|
||||
- name: admin
|
||||
containerPort: 8080
|
||||
- name: tcpep
|
||||
containerPort: 8000
|
||||
- name: udpep
|
||||
containerPort: 9000
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: traefik
|
||||
spec:
|
||||
type: LoadBalancer
|
||||
selector:
|
||||
app: traefik
|
||||
ports:
|
||||
- protocol: TCP
|
||||
port: 80
|
||||
name: web
|
||||
targetPort: 80
|
||||
- protocol: TCP
|
||||
port: 8080
|
||||
name: admin
|
||||
targetPort: 8080
|
||||
- protocol: TCP
|
||||
port: 8000
|
||||
name: tcpep
|
||||
targetPort: 8000
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: traefikudp
|
||||
spec:
|
||||
type: LoadBalancer
|
||||
selector:
|
||||
app: traefik
|
||||
ports:
|
||||
- protocol: UDP
|
||||
port: 9000
|
||||
name: udpep
|
||||
targetPort: 9000
|
||||
@@ -0,0 +1,126 @@
|
||||
kind: Deployment
|
||||
apiVersion: apps/v1
|
||||
metadata:
|
||||
name: whoami
|
||||
namespace: default
|
||||
labels:
|
||||
app: traefiklabs
|
||||
name: whoami
|
||||
|
||||
spec:
|
||||
replicas: 2
|
||||
selector:
|
||||
matchLabels:
|
||||
app: traefiklabs
|
||||
task: whoami
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: traefiklabs
|
||||
task: whoami
|
||||
spec:
|
||||
containers:
|
||||
- name: whoami
|
||||
image: traefik/whoami
|
||||
ports:
|
||||
- containerPort: 80
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: whoami
|
||||
namespace: default
|
||||
|
||||
spec:
|
||||
ports:
|
||||
- name: http
|
||||
port: 80
|
||||
selector:
|
||||
app: traefiklabs
|
||||
task: whoami
|
||||
|
||||
---
|
||||
kind: Deployment
|
||||
apiVersion: apps/v1
|
||||
metadata:
|
||||
name: whoamitcp
|
||||
namespace: default
|
||||
labels:
|
||||
app: traefiklabs
|
||||
name: whoamitcp
|
||||
|
||||
spec:
|
||||
replicas: 2
|
||||
selector:
|
||||
matchLabels:
|
||||
app: traefiklabs
|
||||
task: whoamitcp
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: traefiklabs
|
||||
task: whoamitcp
|
||||
spec:
|
||||
containers:
|
||||
- name: whoamitcp
|
||||
image: traefik/whoamitcp
|
||||
ports:
|
||||
- containerPort: 8080
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: whoamitcp
|
||||
namespace: default
|
||||
|
||||
spec:
|
||||
ports:
|
||||
- protocol: TCP
|
||||
port: 8080
|
||||
selector:
|
||||
app: traefiklabs
|
||||
task: whoamitcp
|
||||
|
||||
---
|
||||
kind: Deployment
|
||||
apiVersion: apps/v1
|
||||
metadata:
|
||||
name: whoamiudp
|
||||
namespace: default
|
||||
labels:
|
||||
app: traefiklabs
|
||||
name: whoamiudp
|
||||
|
||||
spec:
|
||||
replicas: 2
|
||||
selector:
|
||||
matchLabels:
|
||||
app: traefiklabs
|
||||
task: whoamiudp
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: traefiklabs
|
||||
task: whoamiudp
|
||||
spec:
|
||||
containers:
|
||||
- name: whoamiudp
|
||||
image: traefik/whoamiudp:latest
|
||||
ports:
|
||||
- containerPort: 8080
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: whoamiudp
|
||||
namespace: default
|
||||
|
||||
spec:
|
||||
ports:
|
||||
- port: 8080
|
||||
selector:
|
||||
app: traefiklabs
|
||||
task: whoamiudp
|
||||
@@ -0,0 +1,38 @@
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: cleanup-service-account
|
||||
namespace: kube-system
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: cleanup-admin
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: cleanup-service-account
|
||||
namespace: kube-system
|
||||
roleRef:
|
||||
kind: ClusterRole
|
||||
name: cluster-admin
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: verify-job
|
||||
namespace: kube-system
|
||||
labels:
|
||||
app: verify
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: verify
|
||||
image: rancher/rancher-cleanup:latest
|
||||
command: [ "verify.sh" ]
|
||||
imagePullPolicy: Always
|
||||
serviceAccountName: cleanup-service-account
|
||||
restartPolicy: Never
|
||||
backoffLimit: 0
|
||||
Reference in New Issue
Block a user