Jump to content

Portal:Toolforge/Nodes

From Wikitech


Overview

The list of Toolforge nodes. This page provides information about what kind of nodes exists in the cluster, what every node does and a prospective list of canary server for common operations like testing new stuff.

Complete list of nodes

The source of trust for this information is at https://openstack-browser.toolforge.org/project/tools

Take this list as an example, and refer to the source of trust for actual/current data.

Purpose of nodes

Explanation of what each type of node is.

Bastion nodes

Servers meant to allow access to the clusters for users using SSH. You can submit your grid jobs from here.

They are not meant to run any actual workload. There are usually like 3 of them.

Nodes are like: tools-bastion-12.tools.eqiad1.wikimedia.cloud

Kubernetes nodes

Nodes that run Kubernetes and hold the k8s workloads (pods).

There should be like 10 or 20 of them.

  • Nodes are like: tools-k8s-worker-27.tools.eqiad1.wikimedia.cloud
  • Control plane nodes are like: tools-k8s-control-1.tools.eqiad1.wikimedia.cloud
  • etcd nodes are like: tools-k8s-etcd-8.tools.eqiad1.wikimedia.cloud

Web nodes

Nodes that act as frontend web hosts for tools in Toolforge.

There should be like 5 of them.

  • General web proxy nodes: tools-proxy-04.tools.eqiad1.wikimedia.cloud
  • Static content nodes: tools-static-14.tools.eqiad1.wikimedia.cloud

Docker registry and harbor

These nodes are meant distribute docker containers.

There should be like 3 or them.

  • Docker registry nodes are like: tools-docker-registry-01.tools.eqiad1.wikimedia.cloud
  • Harbor nodes are like: tools-harbor-01.tools.eqiad1.wikimedia.cloud

Elasticsearch nodes

Elasticsearch cluster for use by tools. All indices are available for read-only access inside Toolforge. Writing requires a username and password.

There should be 3 nodes.

  • Nodes are like: tools-elastic-1.tools.eqiad1.wikimedia.cloud

checker nodes

  • Checker nodes are like: tools-checker-03.tools.eqiad1.wikimedia.cloud

misc nodes

Some misc nodes.

  • Tools puppetmaster: tools-puppetmaster-02.tools.eqiad1.wikimedia.cloud
  • Cumin, control of the whole cluster using Cumin: tools-cumin-1.tools.eqiad1.wikimedia.cloud, mostly replaced by cloudcumin1001.eqaid.wmnet.
  • SMTP email for the cluster: tools-mail.tools.eqiad1.wikimedia.cloud
  • DEB package builder: tools-package-builder-01.tools.eqiad1.wikimedia.cloud
  • Prometheus deployment nodes: tools-prometheus-03.tools.eqiad1.wikimedia.cloud
  • Redis nodes: tools-redis-1001.tools.eqiad1.wikimedia.cloud
  • Misc services nodes (aptly and others): tools-services-01.tools.eqiad1.wikimedia.cloud

Canary nodes

A pre-elected list of one node of each type you can use to test stuff before deploying changes to the whole cluster.

Depending on the test or task you are doing, you may need to craft a different list:

  • Different OS (Ubuntu trusty, Debian Jessie, Debian stretch)
  • By Linux kernel version
  • By different workload, usage or general load
  • Attending to other criteria

In Toolforge clushmaster, there should be a list ready to use with clush: toolforge_canary_list.txt

It can be used like this:

user@tools-clushmaster-01:~$ clush --hostfile /etc/clustershell/toolforge_canary_list.txt "command"
[...]

See also