You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficcontrol.apache.org by GitBox <gi...@apache.org> on 2021/09/09 14:59:59 UTC

[GitHub] [trafficcontrol] ocket8888 opened a new issue #6183: Snapshot-Queue Automation

ocket8888 opened a new issue #6183:
URL: https://github.com/apache/trafficcontrol/issues/6183


   ## This Feature Request affects these Traffic Control components:
   - Traffic Control Cache Config (T3C, formerly ORT)
   - Traffic Control Client <!-- Please specify which (Python, Go, or Java) -->
   - Traffic Monitor
   - Traffic Ops
   - Traffic Portal
   - Traffic Router
   - Documentation
   
   ## Description
   This issue depends on first closing #6182 . What follows was transcribed from the "Self Service Change Integrity" Confluence wiki page.
   
   Currently, Traffic Control change are applied in two steps: Changes are added to
   the Monitor and Router via taking a CDN Snapshot, and changes are applied to
   Cache Servers via 'Queueing Updates'.
   
   In order to retain change integrity, these must be executed in the correct
   order. Generally, additions must be applied to Caches via Queueing first, and
   only then the Router changed via Snapshot to send users to the cache; while
   subtractions must be removed from the Router via Snapshot, and only once clients
   have ceased sending users to the Cache may it be removed via Queuing.
   
   An example of addition is adding a server to a Delivery Service: the server MUST
   be queued in order to have its information before its addition to the Delivery
   Service may be snapshotted so that clients are sent to the server. Otherwise,
   clients will be routed to the cache before it knows how to serve them.
   
   An example of subtraction is removing a server from a Delivery Service: the
   removal MUST be snapshotted so the router ceases to send clients to the server,
   before it may be queued and its configuration removed. Otherwise, the cache will
   no longer know how to serve clients, before they cease being sent to it.
   
   A fundamental requirement of snapshotting and queueing automatically and in the
   right order, is to know when both have been successfully applied. Therefore,
   functions must be implemented to acquire this data.
   
   The implementation of Snapshot-Queue Automation can be broken into a few high-level projects:
   
   1. Traffic Ops db tables and fields, and respective API endpoints, for Snapshots applied by Routers and Caches.
   1. A Service/Function retrieving the latest Snapshot applied by each Router, and setting that data in Traffic Ops
   1. Add Server Snapshots (#6182) and corresponding function to generate 2 snapshot timestamps for Additions and Subtractions.
   1. `t3c` updates to support Server Snapshots, and to send Snapshot timestamp (rather than Queue Update Boolean) to Traffic Ops
   1. Snapshot Generation updates, to get latest applied Server Snapshot (as well as newer Subtractions)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@trafficcontrol.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org