Skip to content

Instantly share code, notes, and snippets.

@ingoclaro
Created July 15, 2017 19:22
Show Gist options
  • Save ingoclaro/364295615c67fccbb728dc61cfb89d97 to your computer and use it in GitHub Desktop.
Save ingoclaro/364295615c67fccbb728dc61cfb89d97 to your computer and use it in GitHub Desktop.
kubernetes-linkerd
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: frontend
annotations:
kubernetes.io/ingress.class: "linkerd"
spec:
backend:
serviceName: frontend
servicePort: http
kind: Service
apiVersion: v1
metadata:
name: frontend
spec:
selector:
app: frontend
ports:
- protocol: TCP
port: 80
targetPort: http
apiVersion: v1
kind: ConfigMap
metadata:
name: l5d-config
data:
config.yaml: |-
namers:
- kind: io.l5d.k8s.ns
host: localhost
port: 8001
envVar: MY_POD_NAMESPACE
routers:
- protocol: http
dtab: |
/svc => /#/io.l5d.k8s.ns/http;
/host => /srv;
/svc=>/host;
servers:
- port: 4140
ip: 0.0.0.0
usage:
orgId: linkerd-examples-ingress
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
app: l5d
name: l5d
spec:
template:
metadata:
labels:
app: l5d
spec:
volumes:
- name: l5d-config
configMap:
name: "l5d-config"
containers:
- name: l5d
image: buoyantio/linkerd:latest
env:
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: MY_POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
args:
- /io.buoyant/linkerd/config/config.yaml
ports:
- name: http
containerPort: 4140
hostPort: 8081
- name: admin
containerPort: 9990
volumeMounts:
- name: "l5d-config"
mountPath: "/io.buoyant/linkerd/config"
readOnly: true
- name: kubectl
image: buoyantio/kubectl:v1.6.2
args: ["proxy", "-p", "8001"]
---
apiVersion: v1
kind: Service
metadata:
name: l5d
spec:
selector:
app: l5d
type: NodePort
ports:
- name: http
port: 4140
nodePort: 30200
- name: admin
port: 9990
nodePort: 30300
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment