You want the same private yum and apt trees in Sydney and Auckland — packages
plus repodata / dists, not plain objects. A full
Pulp stack can host those repos, but you own the
servers, upgrades, and network path. Here S3 holds the rpm and deb layout, a
Lambda rebuilds indexes after publish, and each consumer VPC reads its
local bucket through a
gateway VPC endpoint S3 gateway VPC endpoint. Route-table target that keeps S3 traffic on the AWS network; no hourly charge for the gateway itself. .
A separate public catalog viewer Public static website on the UI bucket. Shows catalog.json only; packages stay on the private S3 buckets and are not downloaded from this page. lists
what was published. It is read-only metadata (catalog.json), not a package
download CDN and not Pulp’s UI.
Once packages and indexes have replicated, Auckland keeps serving Auckland if
Sydney is down (and the other way around). That is not full multi-Region
HA High availability. Design goal of staying usable through failures; multi-Region HA usually needs failover routing, not only a replica bucket.. You still publish to Sydney, replication is
async so RPO Recovery point objective. How much data you can afford to lose after a failure, measured as time. Asynchronous replication means RPO is greater than zero. is not zero, and anything in a failed
Region is still down.
Package buckets ps3p-pkgs-…-syd/akl, public UI bucket
ps3p-ui-…-syd, replication filtered to repos/.
Dual-OS consumers
AL2023 + Ubuntu 24.04 probes per Region, each VPC locked with
aws:SourceVpce Bucket policy condition key aws:SourceVpce. Limits which VPC endpoint IDs can access the bucket..
Publish + rebuild
Put sample rpm/deb under repos/, then Lambda indexes
(createrepo_c createrepo_c builds yum/dnf repodata (repomd.xml and friends) for an RPM tree so dnf can resolve packages. / apt-ftparchive) and
catalog.json.
Prove dnf / apt
SSM Run Command installs the samples on both OS probes in Syd and Akl.
Expectation
Notes
Same package keys
Different regional hostnames
Cross-region installs
Via the replica tree, not cross-Region PrivateLink