Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Kong in 1.x Territory

219 views

Published on

A retrospective on the state of the development of the Kong API Gateway since its 1.0 release. New features, new deployment paradigms, and what to expect from upcoming releases. This talk was given at the AWS Loft Tokyo on April 16th, 2019.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Kong in 1.x Territory

  1. 1. Tokyo,April 16th 2019
  2. 2. Kong’s biggest milestone yet Kong 1.0 release candidate being announced at Kong Summit in Sept 2018
  3. 3. Kong 1.0 - Reaching maturity L4 proxying Service Mesh and mTLS Blue/Green upgrade path
  4. 4. L4 proxying Kong HTTP/1 HTTP/2 HTTP Service MySQL/PostgreSQL/ Redis/MongoDB/... proxy_listen stream_listen TCP stream_listen = 0.0.0.0:7000
  5. 5. Service Mesh Kong Service TCP/mTLS DB Kong Kong Kong Kong Service Service Kong Kong N E S W mTLS Kong DB TLS
  6. 6. Blue/Green upgrade paths Kong 0.14 Kong 0.14 PostgreSQL / Cassandra
  7. 7. Blue/Green upgrade paths Kong 0.14 Kong 0.14 PostgreSQL / Cassandra # 1.0 node $ kong migrations up upgrading from 0.14, bootstrapping database... migrating core on database 'kong'... core migrated up to: 000_base (executed) … 22 migrations processed 13 executed 9 pending Kong 1.0
  8. 8. Blue/Green upgrade paths Kong 0.14 Kong 0.14 Kong 1.0 PostgreSQL / Cassandra
  9. 9. Kong 0.14 Kong 0.14 Kong 1.0 PostgreSQL / Cassandra Blue/Green upgrade paths
  10. 10. Blue/Green upgrade paths Kong 1.0 Kong 0.14 Kong 1.0 PostgreSQL / Cassandra
  11. 11. Blue/Green upgrade paths Kong 1.0 Kong 1.0 Kong 1.0 PostgreSQL / Cassandra
  12. 12. Blue/Green upgrade paths Kong 1.0 Kong 1.0 Kong 1.0 PostgreSQL / Cassandra # 1.0 node $ kong migrations finish migrating core on database 'kong'... core migrated up to: 001_14_to_15 (executed) … 9 migrations processed 9 executed
  13. 13. ● L4 plugins preread ● ● ● ● Recognizing 4 years of production mileage Kong 1.0 - Other achievements
  14. 14. Kong 1.1 - Declarative Config DB-less deployments DB Import Tags
  15. 15. $ kong config init $ ls kong.conf kong.yml Kong 1.1 - Declarative Config kong.conf kong.yml Node config Entities config _format_version: "1.1" services: - name: service-1 url: https://svc1 routes: - paths: - /path1 - /path2 plugins: - name: key-auth - name: service-2 url: https://svc2
  16. 16. Kong 1.1 - Declarative Config kong.conf kong.yml Node config Entities config database = off declarative_config = ./kong.yml
  17. 17. Kong 1.1 - DB Import kong.yml PostgreSQL / Cassandra $ kong config db_import ./kong.yml parse successful, beginning import import successful
  18. 18. Kong 1.1 - DB-import Kong 1.1 Kong 1.1 Kong 1.1 Service Service Service PostgreSQL / Cassandra $ kong start Kong started
  19. 19. Kong 1.1 - DB-less $ kong start Kong 1.1 kong.yml Kong started
  20. 20. Kong 1.1 - DB-less Kong 1.1 Kong 1.1 Kong 1.1 Service Service Service PostgreSQL / Cassandra
  21. 21. Kong 1.1 - DB-less Kong 1.1 Kong 1.1 Kong 1.1 Service Service Service kong.yml
  22. 22. Kong 1.1 - Tags $ curl -XPOST https://kong:8001/services -d name=service-1 -d url=https://svc1 -d 'tags[]=foo' -d 'tags[]=bar' # kong.yml services: - name: service-2 url: https://svc2 tags: - foo - bar Or
  23. 23. $ curl -XGET 'http://kong:8001/services?tags=foo/baz' { "next": null, "data": [ { "name": “service-1”, "host": "svc1", "tags": [ "foo", "bar" ] }, { "name": “service-2”, "host": "svc2", "tags": [ "foo", "bar" ] } ] } Kong 1.1 - Tags
  24. 24. Kong 1.1 - Other achievements ● /config ○ ● New plugin: K8S sidecar injector ● ●
  25. 25. Kong 1.2 - Consolidation & performance ● ● ● ● ○ ○ ○ ○
  26. 26. Kong 1.3+ - Upcoming work ● gRPC ● ● ● ● ●
  27. 27. Kong - Upcoming work ● Kong Enterprise ● ● Envoy proxy
  28. 28. Join the discussion on Kong Nation https://discuss.konghq.com

×