Hi, we run 2017 std. I've done my best in the image below to show at a high level the general architecture we use to consolidate info from 12 servers.
Failure to connect to 1 or more of the 12 servers in their oledb source components should be forgiven so the package can accomplish whatever is possible.
Regarding the package. It acts incrementally on the data by keeping a table around called job control and using that table to record the high keys from what is really like 22 servers (and thus 22 locations), 11 of which are already replicated to 11 db's on 1 server . The pkg doesn't write to the job control table until component "Add New Job Control" executes. That job control table's columns are location identifier, high key and package run date. There is also an expiration flag column so we can keep a little history in this table.
The component called "Record High Mod Dates" retrieves those high keys which are recorded temporarily and later baked into dynamically built queries. "Record High Mod Dates" is the 1st of two components where the 12 servers are connected to.
The component called "Stage Hist" is the 2nd component in which the 12 servers are connected to and where the dynamic sql is run.
Right now the package fails upon failure to connect to any server. I'd like to forgive failures to connect to 1 or more of the 12 servers without overly complicating the pkg. connection attempts are always thru oledb source components. as you can imagine i'd want to somehow share connection failures by location with the component called "Add New Job Control" so only the previous high keys for those failed locations would be inserted to Job Control. I'd probably want to share with "Stage Hist" any failures encountered in "Record High Mod Dates".
I'm looking at this article https://www.timmitchell.net/post/2013/08/05/continue-package-execution-after-error-in-ssis/ and see that event handlers might help in all of this. But in general i'm wondering what the available alternatives are for this sort of thing. I suppose for every one of the 12 oledb sources I could have a separate dft whose failure path could handle this class of problem.