Kong v2.7.0 Release Notes
-
Dependencies
- ⬆️ Bumped
kong-plugin-session
from 0.7.1 to 0.7.2 #7910 - ⬆️ Bumped
resty.openssl
from 0.7.4 to 0.7.5 #7909 - ⬆️ Bumped
go-pdk
used in tests from v0.6.0 to v0.7.1 #7964 - 🚚 Cassandra support is deprecated with 2.7 and will be fully removed with 4.0.
➕ Additions
🔧 Configuration
- 🚚 Deprecated the
worker_consistency
directive, and changed its default toeventual
. Future versions of Kong will remove the option and act witheventual
consistency only.
🐎 Performance
🚀 In this release we continued our work on better performance:
- 👌 Improved the plugin iterator performance and JITability #7912 #7979
- 🐎 Simplified the Kong core context read and writes for better performance #7919
- ⬇️ Reduced proxy long tail latency while reloading DB-less config #8133
Core
- 🔌 DAOs in plugins must be listed in an array, so that their loading order is explicit. Loading them in a hash-like table is now deprecated. #7942
- 👉 Postgres credentials
pg_user
andpg_password
, andpg_ro_user
andpg_ro_password
now support automatic secret rotation when used together with Kong Secrets Management vault references. #8967
PDK
- New functions:
kong.response.get_raw_body
andkong.response.set_raw_body
#7887
🔌 Plugins
- IP-Restriction: response status and message can now be customized
through configurations
status
andmessage
. #7728 Thanks timmkelley for the patch! - Datadog: add support for the
distribution
metric type. #6231 Thanks onematchfox for the patch! - Datadog: allow service, consumer, and status tags to be customized through
plugin configurations
service_tag
,consumer_tag
, andstatus_tag
. #6230 Thanks onematchfox for the patch! - gRPC Gateway and gRPC Web: Now share most of the ProtoBuf definitions.
Both plugins now share the Timestamp transcoding and included
.proto
files features. #7950 - gRPC Gateway: processes services and methods defined in imported
.proto
files. #8107 - Rate-Limiting: add support for Redis SSL, through configuration properties
redis_ssl
(can be set totrue
orfalse
),ssl_verify
, andssl_server_name
. #6737 Thanks gabeio for the patch! - LDAP: basic authentication header was not parsed correctly when
the password contained colon (
:
). #7977 Thanks beldahanit for reporting the issue! - 🚚 Old
BasePlugin
is deprecated and will be removed in a future version of Kong. Porting tips in the documentation - 🔌 The deprecated BasePlugin has been removed. #7961
🔧 Configuration
- ✂ Removed the following config options, which had been deprecated in previous versions, in favor of other config names. If you have any of these options in your config you will have to rename them: (removed option -> current option).
- upstream_keepalive -> nginx_upstream_keepalive + nginx_http_upstream_keepalive
- nginx_http_upstream_keepalive -> nginx_upstream_keepalive
- nginx_http_upstream_keepalive_requests -> nginx_upstream_keepalive_requests
- nginx_http_upstream_keepalive_timeout -> nginx_upstream_keepalive_timeout
- nginx_http_upstream_directives -> nginx_upstream_directives
- nginx_http_status_directives -> nginx_status_directives
- nginx_upstream_keepalive -> upstream_keepalive_pool_size
- nginx_upstream_keepalive_requests -> upstream_keepalive_max_requests
- nginx_upstream_keepalive_timeout -> upstream_keepalive_idle_timeout
- client_max_body_size -> nginx_http_client_max_body_size
- client_body_buffer_size -> nginx_http_client_max_buffer_size
- cassandra_consistency -> cassandra_write_consistency / cassandra_read_consistency
- router_update_frequency -> worker_state_update_frequency
- ✂ Removed the nginx_optimizations config option. If you have it in your configuration, please remove it before updating to 3.0.
🛠 Fixes
Core
- 🔧 Balancer caches are now reset on configuration reload. #7924
- 🔧 Configuration reload no longer causes a new DNS-resolving timer to be started. #7943
- 🛠 Fixed problem when bootstrapping multi-node Cassandra clusters, where migrations could attempt insertions before schema agreement occurred. #7667
- 🛠 Fixed intermittent botting error which happened when a custom plugin had inter-dependent entity schemas on its custom DAO and they were loaded in an incorrect order #7911
- 🛠 Fixed problem when the consistent hash header is not found, the balancer tries to hash a nil value. #8141
- Fixed DNS client fails to resolve unexpectedly in
ssl_cert
andssl_session_fetch
phases. #8161
PDK
- 🌲
kong.log.inspect
log level is now debug instead of warn. It also renders text boxes more cleanly now #7815
🔌 Plugins
- Prometheus: Control Plane does not show Upstream Target health metrics #7992
Dependencies
- ⬆️ Bumped
lua-pack
from 1.0.5 to 2.0.0 #8004
- ⬆️ Bumped