https://github.com/netmarkjp/dockerfile-k8s-ingress-nginx-coordinator
ingress-nginx coordinator on Kubernetes
https://github.com/netmarkjp/dockerfile-k8s-ingress-nginx-coordinator
ingress-nginx kubernetes
Last synced: about 1 month ago
JSON representation
ingress-nginx coordinator on Kubernetes
- Host: GitHub
- URL: https://github.com/netmarkjp/dockerfile-k8s-ingress-nginx-coordinator
- Owner: netmarkjp
- Created: 2018-10-26T09:48:01.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-10-29T05:24:04.000Z (over 7 years ago)
- Last Synced: 2025-06-22T16:06:23.104Z (12 months ago)
- Topics: ingress-nginx, kubernetes
- Language: Shell
- Homepage: https://hub.docker.com/r/netmarkjp/k8s-ingress-nginx-coordinator/
- Size: 4.88 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# kubernetes-ingress-nginx-coordinator
# motivation
Enable multitenant HTTP/HTTPS web application platform
on small local on-premis Kubernetes cluster, without Loadbalancer, without VIP.
- multitenant with using ingress-nginx
- DNS `*.example.com` set to node's ip addresses
- `ingress-nginx` has wildcard SSL certification
- `ingress-nginx` expose port 80,443. Service with `NodePort`
## Overview
```
foo.example.com => (DNS RoundRobin) => [Node_IP:80/443] => (iptables) => [Service: ingress-nginx:80/443] => [Service: each webapp:80] => [each webapp's Pods]
```
After `[Service: ingress-nginx:80/443]` are the Kubernetes world.
## Usage
1. [setup Kubernetes cluster with kubeadm](https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/)
1. setup [ingress-nginx](https://github.com/kubernetes/ingress-nginx)
1. create secret `kubeconfig`
```bash
kubectl create secret generic kubeconfig -n kube-system --from-file=kubeconfig=/etc/kubernetes/admin.conf
```
1. create DaemonSet
```bash
kubectl apply -f kubernetes-ingress-nginx-coordinator.yml
```