Cloud: Difference between revisions

From Alliance Doc
Jump to navigation Jump to search
mNo edit summary
m (fix heading levels)
 
(60 intermediate revisions by 14 users not shown)
Line 2: Line 2:
<translate>
<translate>
<!--T:1-->
<!--T:1-->
The Compute Canada cloud resource or "CC-Cloud" is a pool of hardware supporting [https://en.wikipedia.org/wiki/Hardware_virtualization virtualization]. This can be thought of as [https://en.wikipedia.org/wiki/Cloud_computing#Infrastructure_as_a_service_.28IaaS.29 Infrastructure as a Service].
We offer [https://en.wikipedia.org/wiki/Cloud_computing#Infrastructure_as_a_service_.28IaaS.29 Infrastructure as a Service] that supports [https://en.wikipedia.org/wiki/Hardware_virtualization virtualization].


<!--T:2-->
<!--T:2-->
A user of the cloud will typically create or "spin up" one or more virtual machines (VMs or "instances"). He or she then logs into the VM with administrative privileges, installs any desired software, and runs the software applications needed. These applications could be as diverse as a CPU-intensive analysis of particle physics data, or a web service directed towards scholars of literature and the humanities. The advantage is that the user has complete control over the collection of installed software (the "software stack"). The disadvantage is that the user must have some degree of experience in installing software and otherwise managing a computer.
A user of the cloud will typically create or <i>spin up</i> one or more virtual machines (VMs or <i>instances</i>). He or she then logs into the VM with administrative privileges, installs any desired software, and runs the software applications needed. These applications could be as diverse as a CPU-intensive analysis of particle physics data, or a web service directed towards scholars of literature and the humanities. The advantage is that the user has complete control over the collection of installed software (the <i>software stack</i>). The disadvantage is that the user must have some degree of experience in installing software and otherwise managing a computer.


<!--T:3-->
<!--T:3-->
Virtual machines can be easily replicated. One can take a "snapshot" of a VM which can then be started again elsewhere. This makes it easy to replicate or scale up a service, and to recover from (for example) a power interruption.
Virtual machines can be easily replicated. One can take a <i>snapshot</i> of a VM which can then be started again elsewhere. This makes it easy to replicate or scale up a service, and to recover from (for example) a power interruption.


<!--T:6-->
<!--T:6-->
If you can fit your work easily into the [https://en.wikipedia.org/wiki/Supercomputer HPC] [https://en.wikipedia.org/wiki/Batch_processing batch] submission workflow and environment (see [[What is a scheduler?]]) it is preferable to work outside the cloud, as there are more [[National systems|resources available]] for HPC and software is already configured and installed for many common needs. There are also tools like [[Singularity]] to run custom software stacks inside containers within Compute Canada HPC clusters.
If you can fit your work easily into the [https://en.wikipedia.org/wiki/Supercomputer HPC] [https://en.wikipedia.org/wiki/Batch_processing batch] submission workflow and environment (see [[What is a scheduler?]]) it is preferable to work outside the cloud, as there are more [[National systems|resources available]] for HPC and software is already configured and installed for many common needs. There are also tools like [[Apptainer]] to run custom software stacks inside containers within our HPC clusters.
If your need isn't served by Singularity or HPC batch, then the cloud is your solution.
If your need isn't served by Apptainer or HPC batch, then the cloud is your solution.


=Getting a Cloud project= <!--T:10-->
==Getting a cloud project== <!--T:10-->
* If you do not have a Compute Canada account, create one with [https://www.computecanada.ca/research-portal/account-management/apply-for-an-account/ these instructions].
* Review and understand the [[Cloud shared security responsibility model|important role]] you are about to take on to [https://science.gc.ca/site/science/en/safeguarding-your-research safeguard your research] and the shared cloud infrastructure.
* If you are a primary investigator (PI) with an active cloud resource allocation (see [https://www.computecanada.ca/research-portal/accessing-resources/resource-allocation-competitions/ RAC]) you should already have a project. See the below section [[Cloud#Using the Cloud|using the cloud]] to get started. If not or you are not sure please contact [[Technical support|technical support]].
* If you do not have an account with us, create one with [https://alliancecan.ca/en/services/advanced-research-computing/account-management/apply-account these instructions].
* Otherwise go [https://docs.google.com/forms/d/e/1FAIpQLSeU_BoRk5cEz3AvVLf3e9yZJq-OvcFCQ-mg7p4AWXmUkd5rTw/viewform here] to:
* A [[Managing_your_cloud_resources_with_OpenStack#Projects|project]] is an allocation of resources for creating VMs within a cloud.
** request access to an existing project
* If you are a primary investigator (PI) with an active cloud resource allocation (see [https://alliancecan.ca/en/services/advanced-research-computing/research-portal/accessing-resources/resource-allocation-competitions RAC]) you should already have a project. See the sections below on using the cloud to get started. If not or if you are not sure please contact [[Technical support|technical support]].
** and if you are a PI you may also:
* Otherwise go to the [https://docs.google.com/forms/d/e/1FAIpQLSeU_BoRk5cEz3AvVLf3e9yZJq-OvcFCQ-mg7p4AWXmUkd5rTw/viewform Alliance cloud project and RAS request form] to
*** request a new project with our Rapid Access Service ([[Cloud_RAS_Allocations|RAS]])
** request access to an existing project (see the section below for information you will need to supply)
*** or an increase in quota of an existing project.
** and if you are a PI you may also
*** request a new project with our Rapid Access Service ([[Cloud_RAS_Allocations|RAS]]),
*** or request an increase in quota of an existing project.


<!--T:11-->
<!--T:11-->
Requests are typically processed within two business days.
* Requests are typically processed within two business days.


==Preparing your request== <!--T:12-->
===Preparing your request=== <!--T:12-->
* When requesting access to an existing project you will need to know the project name and type (compute or persistent). See the section on [[OpenStack#Projects|projects]] for guidance on how to find this information. Requests for access must be confirmed by the PI owning the project.
* When requesting access to an existing project, you will need to know the project name and which cloud it is on. See the section on [[Managing_your_cloud_resources_with_OpenStack#Projects|projects]] for guidance on how to find the project name and the section about [[Cloud#Cloud_systems|cloud systems]] for a list of our clouds. Requests for access must be confirmed by the PI owning the project.
* When requesting either a new project or an increase in quota for an existing project some justification, in the form of a few sentences, is required:
* When requesting either a new project or an increase in quota for an existing project some justification, in the form of a few sentences, is required:
**Why you need cloud resources
**why you need cloud resources,
**Why an HPC cluster is not suitable
**why an HPC cluster is not suitable,
**Your plans for efficient usage of your resources
**your plans for efficient usage of your resources,
**Your plans for maintenance and security ([[Security_considerations_when_running_a_VM|refer to this page]])
**your plans for maintenance and security ([[Security_considerations_when_running_a_VM|refer to this page]]).
*A PI may own up to 3 projects, but the sum of all project quotas must be within the [[Cloud_RAS_Allocations|RAS]] allocation limits. A PI may have both compute and persistent cloud RAS allocations.
*A PI may own up to 3 projects, but the sum of all project quotas must be within the [[Cloud_RAS_Allocations|RAS]] allocation limits. A PI may have both compute and persistent cloud RAS allocations.


= Using the Cloud = <!--T:7-->
==Creating a virtual machine on the cloud infrastructure== <!--T:13-->
* Login to one of the clouds below where you have a [[OpenStack#Projects|project]]. Authenticate using your Compute Canada (CCDB) username (not your email address).
* The [[Cloud Quick Start|cloud quick start guide]] describes how to manually create your first VM.
** [https://east.cloud.computecanada.ca East cloud]
* Review the [[Cloud_Technical_Glossary|glossary]] to learn definitions of common topics.
** [https://arbutus.cloud.computecanada.ca Arbutus]
* Consider [[Cloud_storage_options|storage options]] best suited to your use case.
** [https://graham.cloud.computecanada.ca Graham]
* See the [[Cloud troubleshooting guide|troubleshooting guide]] for steps to deal with common issues in cloud computing.
** [http://cedar.cloud.computecanada.ca Cedar]
* To create your first VM, read the [[Cloud Quick Start|cloud quick start]] guide.
* Learn how to use the [[Linux_introduction|Linux]] command line.
* Consider [[Security_considerations_when_running_a_VM|security]] issues.
* Learn more about [[OpenStack]].
* [[Configuring a data or web server|Configure a data or web server]].
* Find out about the [[OpenStack VM Setups|available pre-made cloud configurations]].
* [[Backing_up_your_VM|Back up your VMs]].
* [[Automating_VM_creation|Automatically create your VMs]].
* Some [[VM Best Practices|best practices]].
* Describe your VM infrastructure as code using [[Terraform]].
* [[Using cloud gpu|GPU Driver Installation]]


= Cloud systems = <!--T:8-->
==User responsibilities== <!--T:14-->
The details of the underlying hardware and Openstack versions are described on the [[cloud resources]] page. The [[System status]] wiki page contains information about the current cloud status and future planned maintenance and upgrade activities.
For each cloud project, you are responsible for
*[[Managing_your_cloud_resources_with_OpenStack | Creating and managing your virtual machines ]]
*[[Cloud_shared_security_responsibility_model|Securing and patching software on your VM]]
*[[Managing_your_cloud_resources_with_OpenStack#Security_groups|Defining security groups to allow access to your network]]
*[[Managing_your_Linux_VM|Creating user accounts]]
*[[VM Best Practices|Following best practices]]
*[[Security_considerations_when_running_a_VM|Considering security issues]]
*[[Backing_up_your_VM|Backing up your VMs]]


==Advanced topics== <!--T:15-->
More experienced users can
*[[Automating_VM_creation|Automatically create VMs]],
*Describe your VM infrastructure as code using [[Terraform]].
==Use cases==
More detailed instructions are available for some of the common cloud use cases, including
*[[Configuring a data or web server|Configure a data or web server]]
*[[Using cloud vGPUs|Using vGPUs (standard shared GPU allocation) in the cloud]]
*[[Using cloud gpu|Using PCI-e passthrough GPUs in the cloud]]
*[[Setting up GUI Desktop on a VM]]
*[[Using ipv6 in cloud|Using IPv6 in Arbutus cloud]]


= Support = <!--T:5-->
==Cloud systems== <!--T:8-->
For questions about the Compute Canada cloud service, contact [[Technical support|technical support]].
Your project will be on one of the following clouds:
* [https://beluga.cloud.computecanada.ca Béluga]
* [https://arbutus.cloud.computecanada.ca Arbutus]
* [https://graham.cloud.computecanada.ca Graham]
* [http://cedar.cloud.computecanada.ca Cedar]
The details of the underlying hardware and OpenStack versions are described on the [[cloud resources]] page. The [[System status]] wiki page contains information about the current cloud status and future planned maintenance and upgrade activities.
 
==Support== <!--T:5-->
For questions about our cloud service, contact [[Technical support|technical support]].


</translate>
</translate>
[[Category:CC-Cloud]]
[[Category:Cloud]]

Latest revision as of 14:37, 14 December 2023

Other languages:

We offer Infrastructure as a Service that supports virtualization.

A user of the cloud will typically create or spin up one or more virtual machines (VMs or instances). He or she then logs into the VM with administrative privileges, installs any desired software, and runs the software applications needed. These applications could be as diverse as a CPU-intensive analysis of particle physics data, or a web service directed towards scholars of literature and the humanities. The advantage is that the user has complete control over the collection of installed software (the software stack). The disadvantage is that the user must have some degree of experience in installing software and otherwise managing a computer.

Virtual machines can be easily replicated. One can take a snapshot of a VM which can then be started again elsewhere. This makes it easy to replicate or scale up a service, and to recover from (for example) a power interruption.

If you can fit your work easily into the HPC batch submission workflow and environment (see What is a scheduler?) it is preferable to work outside the cloud, as there are more resources available for HPC and software is already configured and installed for many common needs. There are also tools like Apptainer to run custom software stacks inside containers within our HPC clusters. If your need isn't served by Apptainer or HPC batch, then the cloud is your solution.

Getting a cloud project[edit]

  • Review and understand the important role you are about to take on to safeguard your research and the shared cloud infrastructure.
  • If you do not have an account with us, create one with these instructions.
  • A project is an allocation of resources for creating VMs within a cloud.
  • If you are a primary investigator (PI) with an active cloud resource allocation (see RAC) you should already have a project. See the sections below on using the cloud to get started. If not or if you are not sure please contact technical support.
  • Otherwise go to the Alliance cloud project and RAS request form to
    • request access to an existing project (see the section below for information you will need to supply)
    • and if you are a PI you may also
      • request a new project with our Rapid Access Service (RAS),
      • or request an increase in quota of an existing project.
  • Requests are typically processed within two business days.

Preparing your request[edit]

  • When requesting access to an existing project, you will need to know the project name and which cloud it is on. See the section on projects for guidance on how to find the project name and the section about cloud systems for a list of our clouds. Requests for access must be confirmed by the PI owning the project.
  • When requesting either a new project or an increase in quota for an existing project some justification, in the form of a few sentences, is required:
    • why you need cloud resources,
    • why an HPC cluster is not suitable,
    • your plans for efficient usage of your resources,
    • your plans for maintenance and security (refer to this page).
  • A PI may own up to 3 projects, but the sum of all project quotas must be within the RAS allocation limits. A PI may have both compute and persistent cloud RAS allocations.

Creating a virtual machine on the cloud infrastructure[edit]

User responsibilities[edit]

For each cloud project, you are responsible for

Advanced topics[edit]

More experienced users can

Use cases[edit]

More detailed instructions are available for some of the common cloud use cases, including

Cloud systems[edit]

Your project will be on one of the following clouds:

The details of the underlying hardware and OpenStack versions are described on the cloud resources page. The System status wiki page contains information about the current cloud status and future planned maintenance and upgrade activities.

Support[edit]

For questions about our cloud service, contact technical support.