deployment server
Appearance
(Redirected from Deployment.eqiad.wmnet)
| deployment server | |
| Location: | codfw |
| Cluster: | Miscellaneous codfw |
| Node name: | deploy2002.codfw.wmnet (fingerprint) |
| Usage: | Miscellaneous
|
| Status | |
|---|---|
| Overall: | |
| Icinga?: | host status services status |
| Hardware | |
| Software | |
The Deployment server is from where we deploy software using Scap and Scap3.
For MySQL queries or maintenance scripts, use the maintenance server instead.
Service
As of September 2024 the deployment servers are:
deploy1003, passive/sparedeploy2002, currently active primary
For fingerprints, see Help:SSH Fingerprints.
Connecting
Connect to deployment server over ssh by proxying through a bastion (e.g. bast1003.wikimedia.org). As with other hosts, ensure you have ProxyJump configured in .ssh/config (see Production shell access). Then connect as follows:
user@laptop:~$ ssh deployment.eqiad.wmnet
Note: The service alias deployment.eqiad.wmnet always points to the currently active deployment, even when Codfw is primary. To access a host directly, use a fully-qualified hostname like deploy0000.example.wmnet.
Runbooks
Create a deployment server in Cloud VPS
- create a new cloud VPS instance of size m1.small (or m1.medium if you will be deploying many scap3 projects)
- in Horizon apply the puppet 'role::deployment_server' on the instance
- Create and attach an extra storage volume on
/srvto hold the software you are going to deploy - in the operations/puppet repo in ./hieradata/labs/yourproject/common.yaml or in Horizon add Hiera key/value pairs:
has_lvs: false
has_tls: false
mcrouter::has_ssl: false
mcrouter::port: 11213
mcrouter::shards:
wancache:
eqiad:
shard01:
host: deployment-memc04
port: 11211
shard02:
host: deployment-memc05
port: 11211
shard03:
host: deployment-memc08
port: 11211
profile::kubernetes::deployment_server::git_group: wikidev
profile::kubernetes::deployment_server::git_owner: trebuchet
profile::mediawiki::apc_shm_size: 128M
profile::mediawiki::deployment::server::rsync_host: deploy1001.devtools.eqiad1.wikimedia.cloud
profile::mediawiki::php::enable_fpm: true
profile::mediawiki::php::php_version: '7.2'
profile::rsyslog::kafka_shipper::kafka_brokers: []
profile::services_proxy::ensure: absent
profile::services_proxy::services:
dummy:
hostname: dummy.example.net
localport: 9999
port: 9999
scheme: https
timeout: 600
redis::shards:
sessions:
eqiad:
shard01:
host: 172.16.5.76
port: 6379
shard02:
host: 172.16.5.17
port: 6379
shard03:
host: 172.16.5.12
port: 6379
shard04:
host: 172.16.5.2
port: 6379
scap::dsh::groups:
librenms:
hosts:
- deployment-netbox.deployment-prep.eqiad1.wikimedia.cloud
mediawiki-api-canaries:
hosts: []
mediawiki-appserver-canaries:
hosts:
- deployment-mediawiki-07.deployment-prep.eqiad1.wikimedia.cloud
mediawiki-installation:
hosts:
- deployment-jobrunner03.deployment-prep.eqiad1.wikimedia.cloud
- deployment-mediawiki-09.deployment-prep.eqiad1.wikimedia.cloud
- deployment-mediawiki-07.deployment-prep.eqiad1.wikimedia.cloud
- deployment-snapshot01.deployment-prep.eqiad1.wikimedia.cloud
- deployment-deploy01.deployment-prep.eqiad1.wikimedia.cloud
- deployment-deploy02.deployment-prep.eqiad1.wikimedia.cloud
- deployment-mwmaint01.deployment-prep.eqiad1.wikimedia.cloud
- deployment-mediawiki-parsoid10.deployment-prep.eqiad1.wikimedia.cloud
restbase-betacluster:
hosts:
- deployment-restbase01.deployment-prep.eqiad1.wikimedia.cloud
- deployment-restbase02.deployment-prep.eqiad1.wikimedia.cloud
webperf:
hosts:
- deployment-webperf11.deployment-prep.eqiad1.wikimedia.cloud
scap::sources:
gerrit/gerrit:
repository: operations/software/gerrit
gervert/deploy:
repository: operations/software/gerrit/tools/gervert/deploy
phabricator/deployment:
repository: phabricator/deployment
- adjust the deployment::server::rsync_host value to a host in your project
- adjust scap::sources to contain the scap3 projects you will be deploying
- run puppet (a couple times)
- run sudo -u trebuchet /usr/bin/scap deploy --init inside each of the repos under /srv/deployment/, so for example in /srv/deployment/gerrit/gerrit and so on but NOT in /srv/deployment/ directly.
- run git init in /srv/deployment
- run puppet again
History
- Eqiad: fenari (2010), tin (2013), deploy1001 (2018).
- Codfw: mira (2015), naos (2017), deploy2001.