This commit is contained in:
Jonas Juselius
2017-08-18 11:31:07 +02:00
parent e2c2c6b811
commit 85a045577d
13 changed files with 458 additions and 236 deletions

49
yml/busybox.yml Normal file
View File

@@ -0,0 +1,49 @@
apiVersion: v1
kind: Service
metadata:
name: bbox
labels:
run: bbox
spec:
type: ClusterIP
selector:
app: busybox
ports:
- port: 8000
targetPort: 8000
protocol: TCP
name: http
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: busybox
namespace: default
spec:
replicas: 1
template:
metadata:
labels:
app: busybox
spec:
containers:
- image: busybox
name: busybox
command:
- /bin/sh
- "-c"
- "while true; do echo ping | nc -l -p 8000; done"
# - "while true; do sleep 10; done"
volumeMounts:
- mountPath: /data
name: nfs-vol
ports:
- containerPort: 8000
volumes:
- name: nfs-vol
nfs:
path: /data
server: git01.itpartner.intern
readOnly: false

38
yml/hello.yml Normal file
View File

@@ -0,0 +1,38 @@
apiVersion: v1
kind: Service
metadata:
name: hello
labels:
run: hello
spec:
type: ClusterIP
ports:
- port: 8000
targetPort: 8000
protocol: TCP
name: http
selector:
app: hello
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: hello
namespace: default
spec:
replicas: 1
template:
metadata:
labels:
app: hello
spec:
containers:
- image: crccheck/hello-world
name: hello
# command:
# - sleep
# - "3600"
ports:
- containerPort: 8000

22
yml/traefik-conf.yml Normal file
View File

@@ -0,0 +1,22 @@
---
kind: ConfigMap
apiVersion: v1
metadata:
name: traefik-conf
namespace: kube-system
data:
traefik.toml: |-
logLevel = "INFO"
defaultEntryPoints = ["http"]
[kubernetes]
[entryPoints]
[entryPoints.http]
address = ":80"
# [entryPoints.https]
# address = ":443"
# [entryPoints.https.tls]
[web]
address = ":8091"

0
yml/traefik-ui.yml Normal file
View File

85
yml/traefik.yml Normal file
View File

@@ -0,0 +1,85 @@
# ---
# apiVersion: v1
# kind: ServiceAccount
# metadata:
# name: traefik-ingress-controller
# namespace: kube-system
---
kind: DaemonSet
apiVersion: extensions/v1beta1
metadata:
name: traefik-ingress-controller
namespace: kube-system
labels:
k8s-app: traefik-ingress-lb
spec:
template:
metadata:
labels:
k8s-app: traefik-ingress-lb
name: traefik-ingress-lb
spec:
# serviceAccountName: traefik-ingress-controller
serviceAccountName: default
terminationGracePeriodSeconds: 60
hostNetwork: true
volumes:
- name: traefik-config
configMap:
name: traefik-conf
containers:
- image: traefik
name: traefik-ingress-lb
resources:
limits:
cpu: 200m
memory: 30Mi
requests:
cpu: 100m
memory: 20Mi
volumeMounts:
- mountPath: /etc/traefik
name: traefik-config
ports:
- name: http
containerPort: 80
hostPort: 80
- name: admin
containerPort: 8091
securityContext:
privileged: true
args:
- --web
- --web.address=:8091
- --kubernetes
- --configfile=/etc/traefik/traefik.toml
- --insecureSkipVerify=true
---
apiVersion: v1
kind: Service
metadata:
name: traefik-web-ui
namespace: kube-system
spec:
type: NodePort
selector:
k8s-app: traefik-ingress-lb
ports:
- name: web
port: 8091
targetPort: 8091
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: traefik-web-ui
namespace: kube-system
spec:
rules:
- host: traefik-ui.cluster.local
http:
paths:
- path: /
backend:
serviceName: traefik-web-ui
servicePort: web