You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: doc/hosting.md
+25-9Lines changed: 25 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,13 +9,29 @@ Nodes managed by this Puppet repository are hosted at **DigitalOcean**.
9
9
10
10
## Create new node
11
11
12
-
### Default
13
-
14
-
* Region: NYC3 (`nyc3-vpc-openjsf1`) or SFO3 (`default-sfo3`)
12
+
* Region:
13
+
* Default: NYC3 (`nyc3-vpc-openjsf1`)
14
+
* Secondary: SFO3 (`default-sfo3`)
15
+
* Most servers should use **NYC3**. For critical services (like wp-xx) that have 2+ interchangeable servers (all servers can serve all websites), we also put one server in SFO3 for increased resilience, allowing us to switch traffic there if needed.
15
16
* Image: Debian (latest LTS).
16
-
* Plan: Typically a small dual-core plan unless more is needed, such as:
17
-
* Shared CPU > Basic > Regular Intel > 2 CPUs 2GB RAM ($18/month in 2022)
18
-
* Shared CPU > Basic > Regular Intel > 2 CPUs 4GB RAM ($24/month in 2022)
19
-
* Additional options: Monitoring.
20
-
* Authentication: SSH, add yourself and 1 team mate for initial bootstrapping. These will be replaced by Puppet later.
21
-
* Hostname: Refer to [dns.md](./dns.md).
17
+
* Plan:
18
+
* When replacing an existing server match the plan of the old one, unless a spec change is part of the replacement. To see the full spec of an existing server, select it from the "Droplets" list, go to "Resize", and scroll to the highlighted row.
19
+
* For new servers, we typically use a small dual-core plan unless more is needed, such as:
20
+
* Shared CPU > Basic > Regular Intel > 2 CPUs 2GB RAM ($18/month in 2022)
21
+
* Shared CPU > Basic > Regular Intel > 2 CPUs 4GB RAM ($24/month in 2022)
22
+
* Backups:
23
+
***Enable** for **puppetserver**, **wpblogs**, and **contentorigin** servers that are in "production", because those are stateful and harder to recreate and recover from Tarsnap backups alone.
24
+
* For most servers we leave this off to reduce sponsorship cost, and because they are either not critical (stage servers) or easy to recreate (self-provisioning via Puppet, no state).
25
+
* Authentication: **SSH**. Add yourself and 1 team mate for initial bootstrapping. These will be replaced by Puppet later.
26
+
* Additional options:
27
+
* Enable "Monitoring" (free)
28
+
* Advanced options:
29
+
* Enable "IPv6" (free)
30
+
* Hostname: Refer to [dns.md](./dns.md)
31
+
* Pick the next number within the given role and realm.
32
+
* Tags:
33
+
* For production hosts, enter one of `jquery-prod-1cpu`, `jquery-prod-2cpu` or `jquery-prod-4cpu`
34
+
* For stage hosts, leave empty.
35
+
* This is used by Monitoring Alerts that email us on prolonged high server load. We prefer the load-average metric over CPU-utilization, and unfortunately that means the alert threshold varies by CPU count (match the selected plan).
36
+
37
+
Once created, follow [Puppet § Provisioning new nodes](./puppet.md).
0 commit comments