Apache Traffic Control 5.0.0
Apache Traffic Control 5.0.0
Released January 21st, 2021
Downloads
Apache Traffic Control 5.0.0 is available here:
Release Notes
Added
-
A transliteration of the
traffic_ops_ort.pl
Perl script to the Go language. Seetraffic_ops_ort/t3c/README.md
-
Traffic Ops API v3
-
Flexible Topologies
For full details, refer tothe blueprint.
- Added a Traffic Ops API v3.0 endpoint:
/topologies
, to create, read, update and delete flexible topologies - Added the ability to queue or dequeue updates for all servers assigned to the Cachegroups in a given Topology
- Added new "Topology" property to Delivery Services as an alternative to direct server assignments
- Added "Topology" section to CDN Snapshot Comparison page
- The CiaB default Delivery Service is now "Topology-based"
- Added a Traffic Ops API v3.0 endpoint:
-
Edge Traffic Routing - a feature which allows Traffic Router to localize more DNS record types than just the routing name for DNS Delivery Services
-
Traffic Portal table performance improvements
We've begun the process of shifting away from jQuery-plugin-based "data tables" to the much more performant AG-Grid table system.
So far the following tables have been improved:
- Servers - including when viewing the servers assigned to a Delivery Service etc.
- The API Change Log table
- DSRs
-
astats_over_http
plugin CSV supportThe
astats_over_http
plugin for ATS now supports outputting data in CSV format when
given thetext/csv
MIME-Type in theAccept
header. Traffic Monitor is capable of requesting this new format (which
is faster to parse than the JSON format) in its Profile'shttp_polling_format
Parameter.As 5.0.0 also adds support to Traffic Monitor for the more standard
stats_over_http
plugin, CSV format using thathealth.polling.format
value is also supported - but note that one must also install thesystem_stats
plugin to
provide all of the data necessary for Traffic Monitor's evaluations. Note also that this usage requires ATS version 9 or higher. -
Multi-Interface Servers
Servers are now allowed to have multiple network interfaces specified. For full details, refer to the blueprint.
- Traffic Portal allows editing of a server's interfaces
- Traffic Ops exposes server interface data in response payloads
- Traffic Monitor is capable of evaluating a set of network interfaces, optionally with some limited thresholds set on any, all, or none of them
-
The ability to view Hash ID field (aka
xmppId
) on Traffic Portals' server summary page -
The ability to delete invalidation requests, accessible in Traffic Portal
-
A UI indiciator to the Traffic Monitor when using a disk backup of configuration from Traffic Ops.
-
Support for the
If-Match
andIf-Unmodified-Since
HTTP headers to Traffic Ops and its native Go client -
The "Status Last Updated" field to servers, which makes visible the time when the last status change took place for a server
-
TR using the default miss location of a Delivery Service in case the location (for the client's IP address) returned was the default location for the country
-
Traffic Ops, Traffic Ops ORT, Traffic Monitor, Traffic Stats, and Grove are now compiled using Go version 1.15
-
User-Agent
string to Traffic Router log output -
locationByDeepCoverageZone
to thecrs/stats/ip/{{ip}}
endpoint in the Traffic Router API -
The number of days of API change logs to fetch is now configurable in
traffic_portal_properties.json
(default is 7 days) and can be overridden by the user in Traffic Portal -
Support for building RPMs that target CentOS version 8
Fixed
- #3455 - Alphabetically sorting CDN Read API call
- #5010 - Fixed Reference urls for Cache Config on Delivery service pages (HTTP, DNS) in Traffic Portal
- #5147 - GET /servers?dsId={id} should only return mid servers (in addition to edge servers) for the CDN of the Delivery Service if the mid-tier is employed
- #4981 - Cannot create routing regular expression with a blank pattern param in Delivery Service
- #4979 - Returns a Bad Request error during server creation with missing profileId
- #4237 - Do not return an internal server error when Delivery Service's capacity is zero.
- #2712 - Invalid TM logrotate configuration permissions causing TM logs to be ignored by logrotate
- #3400 - Allow "0" as a TTL value for Static DNS entries
- #5050 - Allows the TP administrator to name a TP instance (production, staging, etc) and flag whether it is production or not in traffic_portal_properties.json
- #4743 - Validate absolute DNS name requirement on Static DNS entry for CNAME type
- #4848 -
GET /api/x/cdns/capacity
gives back 500, with the messagecapacity was zero
- #2156 - Renaming a host in TC, does not impact xmpp_id and thereby hashid
- #3661 - Anonymous Proxy ipv4 whitelist does not work
- #1847 - Delivery Service with SSL keys are no longer allowed to be updated when the fields changed are relevant to the SSL Keys validity.
- Fixed the
/jobs
and/jobs/:id
Traffic Ops API routes to allow falling back to Perl via the routing blacklist - Fixed ORT config generation not using the
coalesce_number_v6
Parameter. - #4735 - Fixed
POST deliveryservices/request
(designed to simple send an email) regression which erroneously required deep caching type and routing name - Fixed an issue that caused Traffic Monitor to poll caches that did not have the status ONLINE/REPORTED/ADMIN_DOWN
- #4740- Fixed
/deliveryservice_stats
regression restricting metric type to a predefined set of values - #4116- Fixed update procedure of servers, so that if a server is linked to one or more delivery services, you cannot change its CDN
- Fixed ORT bug miscalculating Mid Max Origin Connections as all servers, usually resulting in 1
- Added Delivery Service Raw Remap
__RANGE_DIRECTIVE__
directive to allow inserting the Range Directive after the Raw Remap text. This allows Raw Remaps which manipulate the Range - #4984 - Lets
create_tables.sql
be run concurrently without issue
Changed
- When creating invalidation jobs through TO/TP, if an identical regex is detected that overlaps its time, then warnings will be returned indicating that overlap exists.
- Changed Traffic Portal to disable browser caching on GETs until it utilizes the If-Modified-Since functionality that the TO API now provides.
- Changed Traffic Portal to use Traffic Ops API v3
- Changed ORT to find the local ATS config directory and use it when location Parameters don't exist for many required configs, including all Delivery Service files (Header Rewrites, Regex Remap, URL Sig, URI Signing).
- Changed the access logs in Traffic Ops to now show the route ID with every API endpoint call. The Route ID is appended to the end of the access log line.
- Changed the format of Traffic Monitor's
tmconfig.backup
to that of aGET
request to/cdns/{{name}}/configs/monitoring
instead of a transformed map - Changed Tomcat Java dependency to 8.5.57.
- Changed Spring Framework Java dependency to 4.2.5.
- Updated CiaB to CentOS 8
Deprecated
- Importing Traffic Ops Go clients via the un-versioned
github.com/apache/trafficcontrol/traffic_ops/client
is now deprecated in favor of versioned import paths e.g.github.com/apache/trafficcontrol/traffic_ops/v3-client
.
Removed
- Removed deprecated Traffic Ops Go Client methods.
- Configuration generation logic in the TO API (v1) for all files and the "meta" route - this means that versions of Traffic Ops ORT earlier than 4.0.0 will not work any longer with versions of Traffic Ops moving forward.
- Removed from Traffic Portal the ability to view cache server config files as the contents are no longer reliable through the TO API due to the introduction of
atstccfg
.