Add InMotion cloud to nodepool

This adds the new inmotion cloud to nodepool. We will upload images then
use a max server count of 8. There is potential to grow this number if
we can run an executor in this cloud that can hit node private addresses
or if we can get IPv6.

Depends-On: https://review.opendev.org/c/opendev/system-config/+/787425
Change-Id: I3d0d79bb13aebbaacc55c2b57d264f5832eb3951
This commit is contained in:
Clark Boylan 2021-04-21 10:54:41 -07:00
parent b37c937a26
commit 48515a5fcc
4 changed files with 287 additions and 0 deletions

View File

@ -27,3 +27,4 @@ create OVH 'ovh-*' nodepool-ovh.yaml
create Vexxhost 'vexxhost-*' nodepool-vexxhost.yaml
create Airship-Citycloud 'airship-*' nodepool-airship-citycloud.yaml
create OSUOSL 'osuosl-*' nodepool-osuosl.yaml
create InMotion 'inmotion-*' nodepool-inmotion.yaml

View File

@ -0,0 +1,197 @@
#
# NOTE: EDIT THE TEMPLATE FILE AND RUN create-nodepool.sh
#
dashboard:
title: 'Nodepool: InMotion'
templating:
- name: region
includeAll: true
multi: true
query: stats.gauges.nodepool.provider.inmotion-*
refresh: 1
type: query
rows:
- title: Description
height: 150px
panels:
- title: Description
content: |
InMotion Nodepool Status
==========================
This dashboard monitors the status of the nodepool environment for InMotion.
**This dashboard is managed by [Grafyaml](https://docs.openstack.org/infra/system-config/grafyaml.html).**
If you would like to make changes to this dashboard, please see the template in the `grafana` directory in
[project-config](https://opendev.org/openstack/project-config/src/branch/master/grafana/nodepool.template).
type: text
- title: Nodes
showTitle: true
height: 150px
panels:
- title: Building
span: 3
sparkline:
full: true
show: true
targets:
- target: sumSeries(stats.gauges.nodepool.provider.$region.nodes.building)
type: singlestat
valueName: current
- title: Ready
span: 3
sparkline:
full: true
show: true
targets:
- target: sumSeries(stats.gauges.nodepool.provider.$region.nodes.ready)
type: singlestat
valueName: current
- title: In Use
span: 3
sparkline:
full: true
show: true
targets:
- target: sumSeries(stats.gauges.nodepool.provider.$region.nodes.in-use)
type: singlestat
valueName: current
- title: Deleting
span: 3
sparkline:
full: true
show: true
targets:
- target: sumSeries(stats.gauges.nodepool.provider.$region.nodes.deleting)
type: singlestat
valueName: current
- title: Test Nodes
height: 400px
panels:
- title: Test Node History - $region
type: graph
span: 12
stack: true
repeat: region
minSpan: 4
tooltip:
value_type: individual
yaxes:
- label: "nodes"
- show: false
targets:
- target: alias(sumSeries(stats.gauges.nodepool.provider.$region.nodes.building), 'Building')
- target: alias(sumSeries(stats.gauges.nodepool.provider.$region.nodes.ready), 'Available')
- target: alias(sumSeries(stats.gauges.nodepool.provider.$region.nodes.in-use), 'In Use')
- target: alias(sumSeries(stats.gauges.nodepool.provider.$region.nodes.used), 'Used')
- target: alias(sumSeries(stats.gauges.nodepool.provider.$region.nodes.deleting), 'Deleting')
- target: alias(sumSeries(stats.gauges.nodepool.provider.$region.max_servers), 'Max')
seriesOverrides:
- alias: Max
stack: False
- title: Node Launches
showTitle: true
height: 250px
panels:
- title: Ready Node Launch Attempts
type: graph
span: 4
lines: false
bars: true
nullPointMode: null as zero
yaxes:
- label: "events / min"
- show: false
targets:
- target: aliasSub(summarize(stats_counts.nodepool.launch.provider.$region.ready, '1m'), '.*stats_counts.nodepool.launch.provider.(.*).ready.*', '\1')
- title: Time to Ready
type: graph
span: 4
lines: false
bars: true
nullPointMode: null as zero
yaxes:
- label: "time"
format: ms
- show: false
targets:
- target: aliasByNode(stats.timers.nodepool.launch.provider.$region.ready.mean, 5)
- title: Error Node Launch Attempts
type: graph
span: 4
lines: false
bars: true
nullPointMode: null as zero
yaxes:
- label: "events / min"
- show: false
targets:
- target: alias(smartSummarize(sumSeries(stats_counts.nodepool.launch.provider.$region.error.*), '1m'), "All Errors")
- title: API Operations
showTitle: true
height: 250px
panels:
- title: Create Server
type: graph
lines: true
nullPointMode: connected
span: 4
yaxes:
- format: ms
label: Time
- show: false
targets:
- target: aliasByNode(stats.timers.nodepool.task.$region.ComputePostServers.mean, 4)
- title: Get Server
type: graph
span: 4
lines: true
nullPointMode: connected
span: 4
yaxes:
- format: ms
label: Time
- show: false
targets:
- target: aliasByNode(stats.timers.nodepool.task.$region.ComputePostServers.mean, 4)
- title: Delete Server
type: graph
span: 4
lines: true
nullPointMode: connected
span: 4
yaxes:
- format: ms
label: Time
- show: false
targets:
- target: aliasByNode(stats.timers.nodepool.task.$region.ComputePostServers.mean, 4)
- title: List Servers
type: graph
lines: true
nullPointMode: connected
span: 4
yaxes:
- format: ms
label: Time
- show: false
targets:
- target: aliasByNode(stats.timers.nodepool.task.$region.ComputePostServers.mean, 4)
- title: Get Limits
type: graph
lines: true
nullPointMode: connected
span: 4
yaxes:
- format: ms
label: Time
- show: false
targets:
- target: aliasByNode(stats.timers.nodepool.task.$region.ComputePostServers.mean, 4)

View File

@ -284,6 +284,89 @@ providers:
diskimage: ubuntu-bionic
key-name: infra-root-keys-2020-05-13
providers:
- name: inmotion-iad3
region-name: 'iad3'
cloud: inmotion
boot-timeout: 120
launch-timeout: 300
rate: 0.01
diskimages: *provider_diskimages
pools:
- name: main
max-servers: 8
labels:
- name: centos-7
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: centos-7
key-name: infra-root-keys-2020-05-13
- name: centos-8
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: centos-8
key-name: infra-root-keys-2020-05-13
- name: centos-8-stream
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: centos-8-stream
key-name: infra-root-keys-2020-05-13
- name: debian-bullseye
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: debian-bullseye
key-name: infra-root-keys-2020-05-13
- name: debian-buster
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: debian-buster
key-name: infra-root-keys-2020-05-13
- name: debian-stretch
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: debian-stretch
key-name: infra-root-keys-2020-05-13
- name: fedora-32
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: fedora-32
key-name: infra-root-keys-2020-05-13
- name: gentoo-17-0-systemd
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: gentoo-17-0-systemd
key-name: infra-root-keys-2020-05-13
- name: opensuse-15
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: opensuse-15
key-name: infra-root-keys-2020-05-13
- name: opensuse-tumbleweed
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: opensuse-tumbleweed
key-name: infra-root-keys-2020-05-13
- name: ubuntu-bionic
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: ubuntu-bionic
key-name: infra-root-keys-2020-05-13
- name: ubuntu-bionic-limestone-debug
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: ubuntu-bionic
key-name: infra-root-keys-2020-05-13
- name: ubuntu-focal
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: ubuntu-focal
key-name: infra-root-keys-2020-05-13
- name: ubuntu-xenial
min-ram: 8000
flavor-name: 'opendev-zuul'
diskimage: ubuntu-xenial
key-name: infra-root-keys-2020-05-13
diskimages:
- name: centos-7
- name: centos-8

View File

@ -98,6 +98,12 @@ providers:
rate: 0.25
diskimages: *provider_diskimages
- name: inmotion-iad3
region-name: 'iad3'
cloud: inmotion
rate: 0.25
diskimages: *provider_diskimages
diskimages:
- name: base
abstract: True