Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Kubernetes Ingress
With Kong
Harry Bagdi
Irvine CA
Agenda
Ingress with Kong
■ Ingress
■ Kong
■ Ingress & Kong
■ Demo
2
Harry
Engineer @ Kong Inc
Maintainer of Kong Ingress Controller
Open-source enthusiast
Chuck Taylor All-Stars fan; current obsession: RED
3
hbagdi
Kubernetes
4
5
Bills
Orders
Orders
InventoryBills
Inventory
Orders
Analytics Analytics
6
Bills
Orders
Orders
InventoryBills
Inventory
Orders
LB
Analytics Analytics
LB LB
7
Bills
Orders
Orders
InventoryBills
Inventory
Orders
Analytics Analytics
Kong
Kubernetes Ingress
8
9
Edge/DMZ
- Operations
- Security & audits
- $ effective
One port of entry
- Load balancing
- Throttling
- Canary
- Service mesh
Traffic management
- TCP and TLS termination
- Certificate management
- Service mesh
Connection management
10
networking.v1beta1
Ingress Spec
- Vendor-neutral spec defining external access to services inside k8s
- L7 metadata based
- TLS termination
- GA progress: https://github.com/kubernetes/enhancements/pull/1113
Ingress Spec
extensions.v1beta1
->
networking.v1beta1
->
networking.v1
11
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: finance-apis
spec:
rules:
- host: example.com
http:
paths:
- path: /bills
backend:
serviceName: bills
servicePort: 80
- path: /orders
backend:
serviceName: orders
servicePort: 443
Kong
12
Kong
- Popular cloud-native API Gateway
- Open sourced in 2015; Apache-2.0
- Kong 1.0 announced last year in September
- Platform agnostic
i.e. k8s friendly but not k8s only
13
King in the North
14
Client JSON
Over
HTTP
Database
Kong
Authentication
Logging
Metrics
Caching
Load-balance
Circuit-break
Rate-limiting
Transformations
Serverless Custom logic
gRPC
Robust
Tech stack
15
NGINX
OpenResty
Kong
Internet’s WorkHorse
Lua & LuaJIT extension
(powers ingress-nginx)
Cloud-native,dynamic &
API-driven
Ingress with Kong
16
Kong Ingress Controller
17
API-server
Service B
KongController Service C
Service A
18
configuration.konghq.com/v1
Custom Resources
- Additional functions that can be executed
- Configurable for each Ingress or Service
KongPlugins
- Route by HTTP Method
- Route by header
- Round robin, weight based, least conn
- Sticky session, hash based
- Active & passive health-checks (TCP/HTTP)
KongIngress
- Per user/service customization
- Authentication
- Traffic transformation and shaping
KongConsumer & KongCredential
Demo
19
20
Features
- Round robin, weight based, least conn
- Sticky session, hash based
- Active & passive health-checks (TCP/HTTP)
Load balancing
- Route by HTTP Method
- Route by header
Routing
- Prometheus
- Jaeger/Zipkin/OpenTracing
- Response caching
Plugins
- cert-manager: automated TLS certs
- external-dns: automate DNS records
Integrations
Roadmap
- L4 TCP/TLS routing
- gRPC routing
- Ingress v2 API
- Upstream TLS
- configuration.konghq.com/v2alpha1 API group
21
Thank You
22
Questions?
Install Kong Ingress Controller:
kubectl apply -f https://bit.ly/kong-ingress-dbless
Github:
https://github.com/kong/kong
https://github.com/kong/kubernetes-ingress-controller
Building the Next Era of Software
APIs, Microservices and Mesh for the Hybrid World
October 2-3, 2019
Hilton Union Square, San Francisco, California
Coupon Code: FriendOfHarry
75% off the ticket price
https://konghq.com/kong-summit/

More Related Content

Kuberntes Ingress with Kong