This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
production:shaman.ceph.com [2020/10/21 19:49] djgalloway |
production:shaman.ceph.com [2023/04/06 00:51] (current) dmick [Summary] |
||
---|---|---|---|
Line 4: | Line 4: | ||
There are three VMs in the [[https://wiki.sepia.ceph.com/doku.php?id=services:ovh#production_services|OVH CI region]] that make up shaman. | There are three VMs in the [[https://wiki.sepia.ceph.com/doku.php?id=services:ovh#production_services|OVH CI region]] that make up shaman. | ||
- | * shaman.ceph.com is just a load balancing VM | + | * shaman.ceph.com is just a load balancing VM. Accesses are proxied to either 1.shaman.ceph.com or 2.shaman.ceph.com with an 'upstream shaman' clause in /etc/nginx/nginx.conf, which is then referred to by the site config for shaman.ceph.com. |
* 1.shaman.ceph.com is the primary shaman node that has the postgres DB with all the repo information | * 1.shaman.ceph.com is the primary shaman node that has the postgres DB with all the repo information | ||
* 2.shaman.ceph.com is a **READ ONLY** backup in the event 1.shaman.ceph.com goes down | * 2.shaman.ceph.com is a **READ ONLY** backup in the event 1.shaman.ceph.com goes down | ||
+ | * 2.shaman.ceph.com can handle write requests because pecan, the web framework, is also aware of the primary/hot standby configuration, and so will redirect writes to 1.shaman.ceph.com on its own, if they appear. | ||
===== User Access ===== | ===== User Access ===== | ||
Line 66: | Line 67: | ||
irvingi_builds = {} | irvingi_builds = {} | ||
braggi_builds = {} | braggi_builds = {} | ||
+ | adami_builds = {} | ||
rest_of_the_world = {} | rest_of_the_world = {} | ||
ovh_count = 0 | ovh_count = 0 | ||
irvingi_count = 0 | irvingi_count = 0 | ||
braggi_count = 0 | braggi_count = 0 | ||
+ | adami_count = 0 | ||
for build in builds: | for build in builds: | ||
Line 82: | Line 85: | ||
mapping = braggi_builds | mapping = braggi_builds | ||
counter = braggi_count | counter = braggi_count | ||
+ | elif 'adami' in node_name: | ||
+ | mapping = adami_builds | ||
+ | counter = adami_count | ||
else: | else: | ||
mapping = rest_of_the_world | mapping = rest_of_the_world | ||
Line 90: | Line 96: | ||
mapping[node_name] = 1 | mapping[node_name] = 1 | ||
| | ||
- | for mapping in [ovh_builds, irvingi_builds, braggi_builds]: | + | for mapping in [ovh_builds, irvingi_builds, braggi_builds, adami_builds]: |
count = 0 | count = 0 | ||
for key, value in mapping.items(): | for key, value in mapping.items(): |