diff --git a/README.md b/README.md index 264bdd7ac6afcd99ad0a201a2a1bc6c9ab32f9bb..e3dea9bbf15828a636e873fedd90eca55b61e8f6 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# kubernetes-setup-1.24 +# Kubernete-Setup-1.24 @@ -15,14 +15,14 @@ Already a pro? Just edit this README.md and make it your own. Want to make it ea ``` cd existing_repo -git remote add origin https://git.informatik.fh-nuernberg.de/HutzlerHe/kubernetes-setup-1.24.git +git remote add origin https://git.informatik.fh-nuernberg.de/HutzlerHe/kubernete-setup-1.24.git git branch -M main git push -uf origin main ``` ## Integrate with your tools -- [ ] [Set up project integrations](https://git.informatik.fh-nuernberg.de/HutzlerHe/kubernetes-setup-1.24/-/settings/integrations) +- [ ] [Set up project integrations](https://git.informatik.fh-nuernberg.de/HutzlerHe/kubernete-setup-1.24/-/settings/integrations) ## Collaborate with your team diff --git a/dashboard.yaml b/dashboard.yaml new file mode 100644 index 0000000000000000000000000000000000000000..53fb932ca6aa8e080e3607100f1ff09c6334a9dd --- /dev/null +++ b/dashboard.yaml @@ -0,0 +1,13 @@ +apiVersion: traefik.containo.us/v1alpha1 +kind: IngressRoute +metadata: + name: dashboard +spec: + entryPoints: + - web + routes: + - match: Host (`dev-storage.informatik.fh-nuernberg.de`) && (PathPrefix(`/dashboard`) || PathPrefix(`/api`)) + kind: Rule + services: + - name: api@internal + kind: TraefikService diff --git a/ii.yaml b/ii.yaml new file mode 100644 index 0000000000000000000000000000000000000000..39826691b34eeb79e7ba95ed786629cf885c092c --- /dev/null +++ b/ii.yaml @@ -0,0 +1,26 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: nginx-ingress-tls + annotations: + kubernetes.io/ingress.class: traefik + traefik.ingress.kubernetes.io/frontend-entry-points: http,https + traefik.ingress.kubernetes.io/redirect-entry-point: https + ingress.kubernetes.io/enable-rewrite-log: "true" + ingress.kubernetes.io/rewrite-target: /app +spec: + tls: + - hosts: + - dev-storage.informatik.fh-nuernberg.de + secretName: mycluster-tls-cert + rules: + - host: dev-storage.informatik.fh-nuernberg.de + http: + paths: + - path: /app + pathType: "Exact" + backend: + service: + name: nginx-service + port: + number: 8080 diff --git a/ir.yaml b/ir.yaml new file mode 100644 index 0000000000000000000000000000000000000000..d8ecd7bea7980d6df0f22e44a3f90ef5aa30b156 --- /dev/null +++ b/ir.yaml @@ -0,0 +1,14 @@ +apiVersion: traefik.containo.us/v1alpha1 +kind: IngressRoute +metadata: + name: users + namespace: default +spec: + entryPoints: + - web + routes: + - match: Host(`dev.[REDUCTED]`) && PathPrefix(`/users`) + kind: Rule + services: + - name: users-service + port: 80 diff --git a/nginx-deployment.yaml b/nginx-deployment.yaml new file mode 100644 index 0000000000000000000000000000000000000000..85f402e43ee066d97768ecca0891c94111d9824b --- /dev/null +++ b/nginx-deployment.yaml @@ -0,0 +1,39 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nginx-deployment + labels: + app: nginx-loadbalance +spec: + replicas: 1 + selector: + matchLabels: + app: nginx-loadbalance + template: + metadata: + labels: + app: nginx-loadbalance + spec: + containers: + - name: nginx + image: nginx:1.15.5 + ports: + - containerPort: 80 +--- +apiVersion: v1 +kind: Service +metadata: + name: nginx-service +spec: + type: ClusterIP + ports: + - name: http + protocol: TCP + port: 8080 + targetPort: 80 + - name: https + protocol: TCP + port: 8443 + targetPort: 443 + selector: + app: nginx-loadbalance diff --git a/nginx-ingress-tls.yaml b/nginx-ingress-tls.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8d57571aff64c562772b82e06c6fd54b68f3e77e --- /dev/null +++ b/nginx-ingress-tls.yaml @@ -0,0 +1,24 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: nginx-ingress-tls + annotations: + kubernetes.io/ingress.class: traefik + traefik.ingress.kubernetes.io/frontend-entry-points: http,https + traefik.ingress.kubernetes.io/redirect-entry-point: https +spec: + tls: + - hosts: + - dev-storage.informatik.fh-nuernberg.de + secretName: mycluster-tls-cert + rules: + - host: dev-storage.informatik.fh-nuernberg.de + http: + paths: + - path: / + pathType: "Exact" + backend: + service: + name: nginx-service + port: + number: 8080 diff --git a/nginx-ingress-tls.yaml_ok b/nginx-ingress-tls.yaml_ok new file mode 100644 index 0000000000000000000000000000000000000000..8d57571aff64c562772b82e06c6fd54b68f3e77e --- /dev/null +++ b/nginx-ingress-tls.yaml_ok @@ -0,0 +1,24 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: nginx-ingress-tls + annotations: + kubernetes.io/ingress.class: traefik + traefik.ingress.kubernetes.io/frontend-entry-points: http,https + traefik.ingress.kubernetes.io/redirect-entry-point: https +spec: + tls: + - hosts: + - dev-storage.informatik.fh-nuernberg.de + secretName: mycluster-tls-cert + rules: + - host: dev-storage.informatik.fh-nuernberg.de + http: + paths: + - path: / + pathType: "Exact" + backend: + service: + name: nginx-service + port: + number: 8080 diff --git a/tls.crt b/tls.crt new file mode 100644 index 0000000000000000000000000000000000000000..1174c09798637d688fb3f0f0d98d3e332f6e77f0 --- /dev/null +++ b/tls.crt @@ -0,0 +1,25 @@ +-----BEGIN CERTIFICATE----- +MIIEMTCCAxmgAwIBAgIUXJn011NmTDgR7DbtYKKZi8HFeoYwDQYJKoZIhvcNAQEL +BQAwgacxCzAJBgNVBAYTAkRFMRAwDgYDVQQIDAdCYXZhcmlhMRIwEAYDVQQHDAlO +dXJlbmJlcmcxFTATBgNVBAoMDFRIIE51cmVuYmVyZzETMBEGA1UECwwKSW5mb3Jt +YXRpazEXMBUGA1UEAwwOMTQxLjc1LjE0OC4xNTExLTArBgkqhkiG9w0BCQEWHmhl +bG11dC5odXR6bGVyQHRoLW51ZXJuYmVyZy5kZTAeFw0yMjEwMDUxMDQ0NDdaFw0y +MzEwMDUxMDQ0NDdaMIGnMQswCQYDVQQGEwJERTEQMA4GA1UECAwHQmF2YXJpYTES +MBAGA1UEBwwJTnVyZW5iZXJnMRUwEwYDVQQKDAxUSCBOdXJlbmJlcmcxEzARBgNV +BAsMCkluZm9ybWF0aWsxFzAVBgNVBAMMDjE0MS43NS4xNDguMTUxMS0wKwYJKoZI +hvcNAQkBFh5oZWxtdXQuaHV0emxlckB0aC1udWVybmJlcmcuZGUwggEiMA0GCSqG +SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDOMzFcxiOcao26iWtGX/3LyQ0o56G8LzF0 +2NzNH4649XTD8kRV7WIROARcMWJgHWcN+3YEy01WVc2ug1iLnYW2P2iZGtS5adN1 +H91IXvmB6G0J9/ASTQPTc9nnP6afkU7ocNuyVzO77jiSo57B0blls4gFnqEyY2rK +wU0+g/uriJ6KObaaV/od+siuKGW84hGN92FY5cAQ4K3e0/C0255WGI+ESQqIhz48 +EgQ4RcAgOqvUY2K44HUPLdS/KNMTlGBqsh+8XymgfONh/ZMSlBK5fyVkukMnNefB +g6SxrzvyVlJMQJF8zgoZDRK6KOA/w9D3r+xZ+Vw4fY2zqdCtYWqVAgMBAAGjUzBR +MB0GA1UdDgQWBBSxqLwSIw0i6IXAznL684r7Wk1uxzAfBgNVHSMEGDAWgBSxqLwS +Iw0i6IXAznL684r7Wk1uxzAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUA +A4IBAQBImcVHLUR7pHvzBVN+0PSvOFNbBjzfsmO7vO47JsUUUrNfwMKC/5PIj0vo +ZjZsbXyB44mMxGYs7llLLblWV/q3j9ftGGpT0rCTGeIshKYetvVu2yD/W5vtaNKy +Z1Fefn8rUSKsOAMeqsaRC5jyGDDMT0iKg23cyncqZbsOop5LJ2QCYgZQi5C2t+li +3YedXxzt5KH0SzRsnJ8aMiV0ekr9BSa8HSu0SLouILJ8gvmjrVzpZD/bLoRUGVuk +6BUNMUBAxO7hD6pz5Fy55UemFwEXBKLfe6PHtgUsTuKkpBqj3yoRwbeE2fAdVQN4 +DiffiXgUeRRfBv2zyAnxBopMv4Y5 +-----END CERTIFICATE----- diff --git a/tls.key b/tls.key new file mode 100644 index 0000000000000000000000000000000000000000..3a88fbd40f0e64039263b721c983327a511e24e5 --- /dev/null +++ b/tls.key @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOMzFcxiOcao26 +iWtGX/3LyQ0o56G8LzF02NzNH4649XTD8kRV7WIROARcMWJgHWcN+3YEy01WVc2u +g1iLnYW2P2iZGtS5adN1H91IXvmB6G0J9/ASTQPTc9nnP6afkU7ocNuyVzO77jiS +o57B0blls4gFnqEyY2rKwU0+g/uriJ6KObaaV/od+siuKGW84hGN92FY5cAQ4K3e +0/C0255WGI+ESQqIhz48EgQ4RcAgOqvUY2K44HUPLdS/KNMTlGBqsh+8XymgfONh +/ZMSlBK5fyVkukMnNefBg6SxrzvyVlJMQJF8zgoZDRK6KOA/w9D3r+xZ+Vw4fY2z +qdCtYWqVAgMBAAECggEBAIQXeVTEPUXTYI2RwJ3pmkz0s7BzikFiPh1rWy8wOx6z +ZySrSyl8k2kSaICixjFqRH1JjFYP4rAe8U8NJyjxNRoFzrzd2k4Yw/RxADF/Xfjh +axCKu0kN+xh3S6z/Mn9f95uhyKubfzGxrp4JoQbqkgjblJR9BSihVWUjpZcZt5wv +FpOwbP62s55m5Qw8ll07WhbaioDOTYU4+5Wr+pUj5jj/sI8Kp4voxmpcuK2a3kWR +TECNJ5Lf0pThIvB4BTXWz+VWitEptg8EHG/ii26gSRFrqLfO1EokE/cCIUMS7Lln +sXxfogg9hWW+HSMCEl0oICc/hdEJ7CN4xZukQcHSMMECgYEA+Hr1uphpvBlp7/XE +bFt77le9bGSgTtaIUAuct2chhjyd6+6bX/AduvL6Ifz/bayIPsJ5eUjeHioYNu+y +raKQe7IgS/BT7qEA+a9FtI3nuSya0HgYFgTD3BDNkCyRCk8GsjZ+++dmrDZv/H08 +JfpHiJkgy11VLtAvcavtnRW99dECgYEA1HCtKNlmqfDE/1xSz8ClmbtPo1vRTatC +anrbRNVqjz5EXbNUieoQiHrcqA0kaEqQgW/uiH1r8uy+sEuB5HP10+DRY41hcEA8 +CvFdvkEWhmHqvVUgZfJyvXsGxoqRcqfgLBBC7SdOaslOFfHOSR1qGoGZNs0RkCOb +4RAYj6FxpYUCgYAZ7Qpym7B8ldI93VDPVYRKzBDRnHY1g6DZaTzCzhnrXavEkDLa +Ab24Yd3DahhkoxncIoJ2Kyoxz4aTRNNJ1qponZ9NDRhUz6vAYY9OVXgWFBdbJQyu +T3T4IzCvmFbR0okKUzFQq0ZFNbDdkVuTQtfv4rpPPb/DkKlCnQO/3iLh4QKBgEyP +yyg0qZZHaofpewLamBP+eKYUGiuWtBnx6wI0s/Gp7DOkxKvrikfVl56NFfjsHoY3 +k8zm/reO8O5SWB7AV/EjTfNF6b7tt3XuJO3DQV3u/g18F3AGX6nAI+H74I1kyRq4 +RZZ4mv9LS3QHMGQTUMD6wgAJCfJbkvsatO9WrMGNAoGAQCHXMGoXhIkiMylDwvy3 +R/PnpPS/e/brlqbCQxL0/zBobYbyTPUb1g3spJt2Mt3GX85ZbZQx2X0XexJmtLIx +N+X0GZqZr79EToiEramtGV5oy7wQVrkescvQMPaiRcKlJcbHuJkodNbYbnZ8kztA +MKKJQ0/s83NOJ3DZFDLsQfE= +-----END PRIVATE KEY-----