Skip to content

Provider Jetstream

scott45 edited this page Jun 17, 2024 · 34 revisions

Background

Jetstream2 is an NSF-funded grant providing cloud-based computing using OpenStack that is led by Indiana University’s Pervasive Technology Institute. Cloud services are hosted at IU (Indiana University in Indianapolis, Indiana USA).

Costs

No costs.

Usage

OpenMRS is the benefit of a gracious donation of a Jetstream2 allocation from the Jetstream2 team.

Access

Access requires that you have an IU XSEDE account, have been added to the OpenMRS Jetstream project through that portal (by Burke), and you have established working credentials at the TACC Portal. See below for details on these steps.

  • Burke (Principal Investigator for Jetstream account)
  • Cintia (cinitadr)
  • Ian (ibacher)
  • Pascal (psbrandt)
  • Rafał (rafal)
  • Ray Ma (omrsray)
  • Scott (scott)

Enrolling in Jetstream2

(Note: these instructions have been carried forward from XSEDE → Jestream → Jetstream2 and may be out of date)

If you have spoken with the infra team and we have agreed that you need Jetstream access, begin by signing up for an ACCESS-CI (XSEDE) User Portal account. In order to be granted Jetstream access (the ability to spin up VMs), you need to have one of these accounts. Browse to the XSEDE User Portal account creation page, enter your information (tips for specific fields below), and submit.

  • Organization: OpenMRS
  • Department:
  • Degree field of study:
  • Position: Other User
  • Email: use your @openmrs.org email address

Please let Burke know once you have an XSEDE Portal account (i.e., can successfully log in on the user login page), so he can add you to the project team.

Once your account at XSEDE has been added to the project, you will need to make another account at TACC, since TACC passwords are used for API access. Go to the TACC Portal password reset page, enter your username from XSEDE, and you should get an email at your @openmrs.org address guiding you through establishing credential to the TACC Portal. Confirm that you can successfully log in with "TACC Credentials" (your username and the password you just configured for the TACC portal) at https://portal.tacc.utexas.edu/ before continuing.

Once you have TACC credentials, you can use Jetstream's OpenStack API. Refer to the next section of this document on API usage.

In order to provision new machines, you need to import the provision ssh key (conf/provisioning/ssh/terraform-api.key.pub) in Jetstream (https://js2.jetstream-cloud.org/project/key_pairs) with the specific name "TG-ASC170002-terraform-key" under Projects → Compute → Key Pairs → Import Public Key.

Support

The Jetstream team provides 24/7 support of cloud services. Use https://portal.xsede.org, identifying yourself as a member of the OpenMRS team (Project TG-ASC170002).

Working with Jetstream resources

  • Within Jetstream, all server names should be in the form ${OS_PROJECT_NAME}-servername by Jetstream convention. For OpenMRS, we have used city names from Cameroon, Kenya, then Ethiopia for most of our server names.

Terraform

To create permanent machines, follow instructions in https://github.com/openmrs/openmrs-contrib-itsm-terraform

CLI

Follow Provider Jetstream - CLI

Jetstream API

Follow Provider Jetstream - API

VM Sizes

Sizes from the Jetstream wiki

When creating new servers, default to Small size unless there are specific requirements for a different size.

SUSPENDED instances will be charged 0.75 SUs per vCPU_core-hour (75%). STOPPED instances will be charged 0.50 SUs per vCPU_core-hour (50%). SHELVED isntances will not consume SUs as a shelved instance is removed from the hypervisor and placed into storage, freeing the resource for other users.

Troubleshooting

Jetstream status wiki page and Status.io page should show any status updates.

Jetstream support can be reached via Matrix (e.g., using Element client via web browser)

DNS issues

Occasionally, we have seen DNS issues at Jetstream. A temporary workaround can be applied to use Cloudflare's public DNS. DNS changes should be done on each of the servers:

  • adaba (Crowd)
  • mojo (JIRA)
  • mota (Wiki)
  • worabe (Bamboo)
  • yu (Bamboo agent)
  • xiao (Bamboo agent)
  • xindi (Bamboo agent)
  1. sudo resolvectl dns ens3 1.1.1.1
  2. Restart affected services

When Jestream DNS issues are fixed, changes can be reverted by:

  1. sudo resolvectl revert ens3
  2. Restart affected services

Resources

Clone this wiki locally