Projects and Quota: Difference between revisions

From bwCloud-OS
Jump to navigation Jump to search
No edit summary
No edit summary
 
(62 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<span id="In-a-Nutshell"></span>
<span id="In-a-Nutshell"></span>
{{InANutshell|
{{InANutshell|
<li>Each bwCloud-OS project has predefined '''quotas''' for vCPU, RAM, storage, and networks. Quota increases can be requested via the  [https://bw-support.scc.kit.edu/ bwSupportPortal]</li>
<li>'''(Group-)Projects''' allow shared access to resources. Project members  can manage instances collaboratively. A designated '''project owner''' is required to manage the project and act as the main contact.</li>
<li>'''Group projects''' allow shared access to resources. Members  can manage instances collaboratively. Quotas can be assigned in multiple regions. A designated '''project owner''' is required to manage membership and act as the main contact. </li>
<li>Each bwCloud-OS project has predefined '''quotas''' for vCPU, RAM, storage, networks, etc. Quota increases can be requested via the  [https://bw-support.scc.kit.edu/ bwSupportPortal].</li>
<li>Quotas can be assigned to a project in multiple [[Registration#Regions|regions]].</li>
<li>Instances cannot be moved between projects directly. Use snapshots and '''volume transfer''' instead, as described
<li>Instances cannot be moved between projects directly. Use snapshots and '''volume transfer''' instead, as described
  [[#Instance-Transfer|here]].</li>
  [[#Instance-Transfer|here]].</li>}}
}}




__TOC__
__TOC__
= (Group) Projects =
'''➡️ More information in the guide about [[Guide: Project and Quota|Project and Quota]].'''


= Projects =
== In which situations is a new (group) project useful? ==
 
<span id="Group-Project"></span>
== How can I switch between projects? ==
<span id="Project-Selection"></span>
 
A user can be a member of multiple projects. Each project’s quota is tied to a specific bwCloud-OS region.
 
To switch between projects and regions, use the '''project/region selector''' button located at the '''top left of the [https://portal.bw-cloud.org/auth/login/?next=/ Dashboard]'''. This allows you to choose the target project and corresponding region for your current session.[[File:Select project region.png|center|thumb|551x551px]]
 
 
== Can I move an instance to another project? ==
<span id="Instance-Transfer"></span>
Instances cannot be directly moved between projects. However, you can use the following workaround, provided the target project has sufficient available quota:
 
'''In the Source Project:'''
# Create a '''snapshot''' of the instance. The snapshot will appear under '''Images'''.
# From the snapshot, create a '''volume'''. The volume will appear under '''Volumes'''.
# Create a '''transfer''' for the volume and record the '''Transfer ID''' and '''Authorization Key'''.
'''In the Target Project:'''
# Go to '''Volumes''' and select '''Accept Transfer'''.
# Enter the recorded '''Transfer ID''' and '''Authorization Key'''. The volume will now appear under '''Volumes'''.
# Convert or upload the volume to an '''image'''. ''This process may take some time''.
# Launch a new instance from the image in the target project.


=Group Projects =
Projects allow multiple users to share and jointly manage resources within a single bwCloud-OS project. This is particularly useful for:
 
== In which situations is a group project useful? ==
<span id="Group-Project"></span>
Group projects allow multiple users to share and jointly manage resources within a single bwCloud-OS project. This is particularly useful for:


* '''Collaborative administration''' of servers with a '''long-term or operational''' purpose
* '''Collaborative administration''' of servers with a '''long-term or operational''' purpose
* '''Teaching or training scenarios''', where students or participants need to work together
* '''Teaching or training scenarios''' where students or participants need to collaborate
* Projects that involve users from '''multiple bwCloud-OS [[Registration#Regions|regions]]'''
* Projects that involve users from '''multiple bwCloud-OS [[Registration#Regions|regions]]'''


Such collaboration is also supported through the use of '''access tokens''' ([[Programmatic Access and Automation#Application Credentials|Application Credentials]]).
Such collaboration is also supported through the use of '''access tokens''' ([[Programmatic Access and Automation#Application Credentials|Application Credentials]]).


* '''Note:''' If the only goal is to allow multiple users to connect to the same virtual machine, you can simply add their '''SSH public keys''' to the <code>~/.ssh/authorized_keys</code> file on the VM. In that case, a group project is '''not required'''.
'''📌''' '''Note:''' If the only goal is to allow multiple users to connect to the same virtual machine, you can simply add their '''SSH public keys''' to the <code>~/.ssh/authorized_keys</code> file on the VM. In that case, a new project is '''not required'''.


== What does resource administration look like in a group project? ==
== What does resource administration look like in a project? ==
<span id="Group-Project-Administration"></span>
<span id="Group-Project-Administration"></span>


OpenStack uses a very simple role and rights model:
OpenStack uses a basic role and rights model:


* There is the role of '''“Administrator”''', which is reserved exclusively for members of the '''bwCloud-OS operations team'''.
* There is the role of '''“'''Administrator'''”''', which is reserved exclusively for members of the bwCloud-OS operations team.
* All regular users — including those in group projects — have the same '''standard user permissions'''.
* All regular users have the same standard user permissions.
 
This means that a group project functions the same as a personal project, with one key difference: '''multiple users''' are assigned to the same project.


As a result:
As a result:


* Every group member can '''see all shared resources''' (instances, images, security groups, etc.).
* Every project member can '''see all shared resources''' (instances, images, security groups, etc.).
* All members can '''create, modify, or delete''' resources.
* All members can '''create, modify, or delete''' resources.
* There are '''no internal role distinctions''' within a project — all members have '''equal rights'''.
* There are '''no internal role distinctions''' within a project — all members have '''equal rights'''.


== How can I request a group project? ==
== How can I request a new (group) project? ==
<span id="Group-Project-Application"></span>
 
To create a group project, you need to submit a [https://bw-support.scc.kit.edu/ support ticket] with specific information about your request. Please note:
=== Gen2: ===
To create a new project, you need to submit a [https://bw-support.scc.kit.edu/ ticket] with specific information about your request. Please note:


* Only users who are already '''registered in bwCloud-OS''' can be added as '''project members'''.
* Only users who are already '''registered in bwCloud-OS''' can be added as '''project members'''.
* The project must have a designated owner. Please review the [[Projects and Quota#Group-Project-Owner|role]] of the '''project owner''', who is responsible for managing the project and its quota usage.
* The project must have a designated owner. Please review the [[Projects and Quota#Group-Project-Owner|role]] of the '''project owner''', who is responsible for managing the project and its quota usage.
* The project name should be no longer than 16 characters.


Please use the following '''template''' when submitting your request:
Please use the following '''template''' when submitting your request:
<pre>
<pre>SUBJECT:        NEW_PROJECT
SUBJECT:        NEW_PROJECT
MOTIVATION:    TEXT
REGION:        NAME
REGION:        NAME
MOTIVATION:     TEXT
PROJECT_NAME:   NAME
OWNER_UUID:    UUID
OWNER_UUID:    UUID
PROJECT_NAME:  NAME (maximum 16 characters)
MEMBER_UUIDS:  UUID, UUID, ...
MEMBER_UUIDS:  UUID, UUID, ...
NUMBER_VM:      INTEGER
NUMBER_VM:      INTEGER
Line 84: Line 60:
STORAGE_GB:    INTEGER
STORAGE_GB:    INTEGER
SPECIAL_QUOTA:  TEXT
SPECIAL_QUOTA:  TEXT
CUT_OFF_DATE:  dd.mm.yyyy
CUT_OFF_DATE:  dd.mm.yyyy</pre>'''📌''' '''Note:''' Members of the '''University of Stuttgart''' are subject to '''special rules''', which are explained in detail [[Custom Rules|here]].
</pre>
 
=== '''Gen3:''' ===
To create a new project, you need to submit a [https://bw-support.scc.kit.edu/ ticket] with specific information about your request. Please note:
* Only users who are already '''registered in bwCloud-OS''' can be [[Projects and Quota#Can project members be changed?|added as '''project members''']].
* For granting [[Guide: Project and Quota|project quota]] you need a respective [[Entitlement & Eligibility#How can I find out which entitlements I am owning?|eligibility]].
* [[Entitlement & Eligibility#How can I find out which entitlements I am owning?|Check for holding the eligibility]].
* The owner of the eligibility will become the project owner.
 
Please use the following '''template''' when submitting your request:
<pre>SUBJECT:        "Request new project"
MOTIVATION:    TEXT
REGION:        NAME
MEMBER_UUIDS:  UUID, UUID, ...
QUOTA_FLAVOR:  NAME
SPECIAL_QUOTA:  TEXT
CUT_OFF_DATE:  dd.mm.yyyy</pre>


== Why is it necessary to specify a group project owner? ==
== Why is it necessary to specify a project owner? ==
<span id="Group-Project-Owner"></span>
<span id="Group-Project-Owner"></span>


The person designated as the '''project owner''' is needed for several important reasons:
The person designated as the '''project owner''' is needed for several important reasons:


# '''Billing and accountability'''   If cost allocation is introduced in the future, any billing or formal communication related to the group project will be directed to the project owner's institution or department. (Note: The owner can be changed later if needed.)
# '''Billing and accountability''':  [[Guide: Charging|Cost allocation]] is introduced with bwCloud-OS (Gen3). Any billing or formal communication related to the project will be directed to the project owner's institution.
# '''Primary contact for the bwCloud-OS team'''   The project owner acts as the main contact person for the bwCloud-OS team — for operational issues, incidents, and support inquiries.
# '''Primary contact for the bwCloud-OS team''': The project owner acts as the main contact person for the bwCloud-OS team — for operational issues, incidents, and support inquiries.
# '''User and membership management'''   The owner is responsible for managing group membership. We can only accept requests to add or remove members from the owner (or a designated replacement), since all group members have the same technical permissions and we otherwise cannot verify authority.
# '''User and membership management''': The owner is responsible for managing project membership. We can only accept requests to add or remove members from the owner (or a designated replacement), since all project members have the same technical permissions. Otherwise, we cannot verify who has the authority to manage membership.
The project owner is always a member of the project.


== Can the project owner be a functional or shared account? ==
== Can the project owner be a functional or shared account? ==
Line 101: Line 93:
No. All accounts and identifiers used in bwCloud-OS — including those for '''project owners''' and '''project members''' — must be assigned to '''individual, identifiable persons'''.
No. All accounts and identifiers used in bwCloud-OS — including those for '''project owners''' and '''project members''' — must be assigned to '''individual, identifiable persons'''.


Group projects are '''not an exception''' to this rule. The same identity and accountability requirements apply as for personal projects.
== How can I change the eligibility and ownership of a project? ==


== Can group members be changed? ==
=== Gen2 ===
If you currently own the project, you can request this via a [https://bw-support.scc.kit.edu/ ticket]. The new owner needs to respond within the ticket as well.
 
=== Gen3 ===
To request the change of the [[Entitlement & Eligibility#How can I find out which entitlements I am owning?|eligibility]] assigned to the project, please provide the following information in a [https://bw-support.scc.kit.edu/ Ticket]. Please note:
 
* [[Entitlement & Eligibility#How can I find out which entitlements I am owning?|Check for holding the new eligibility]].
* The owner of the new eligibility will be the (new) owner of the project.
* If you currently own the project and are holding additional [[Guide: Entitlement & Eligibility|eligibility]], you can request this. If a second user is holding the new eligibility, the second user needs to respond within the ticket as well.
 
Please use the following '''template''' when submitting your request:<pre>
SUBJECT:        "Change eligibility"
MOTIVATION:    TEXT
OWNER_UUID:    UUID
PROJECT_UUID:  UUID
QUOTA_FLAVOR:  NAME
SPECIAL_QUOTA:  TEXT
CUT_OFF_DATE:  dd.mm.yyyy
</pre>The [[Guide: Project and Quota#Example project and eligibility 1|Project-Eligibiity link]] will be updated afterward.
 
== Can project members be changed? ==
<span id="Group-Project-Member-Change"></span>
<span id="Group-Project-Member-Change"></span>


Yes, members of a group project can be '''added or removed''' at any time.
Yes, members of a project can be '''added or removed''' at any time. '''Only the''' '''project owner''' is authorized to request changes to the project membership.
 
'''Only the''' '''project owner''' is authorized to request changes to the group membership.


To request member changes, please submit a [https://bw-support.scc.kit.edu/ support ticket] ticket and provide the following information using this template:<pre>
To request member changes, please submit a [https://bw-support.scc.kit.edu/ support ticket] and provide the following information using this '''template''':<pre>
SUBJECT:        MEMBER_PROJECT
SUBJECT:        MEMBER_PROJECT
NEW_OWNER:      UUID
NEW_OWNER:      UUID
Line 118: Line 128:
</pre>
</pre>


== How can I switch between projects? ==
<span id="Project-Selection"></span>
A user can be a member of multiple projects, and projects can have quotas in multiple bwCloud-OS [[Registration#Regions|regions]].
To switch between projects and regions, use the project/region selector button located at the top left of the '''[https://portal.bw-cloud.org/ Dashboard]'''. This allows you to choose the target project and corresponding region for your current session.
[[File:Project selection.png|center|thumb|551x551px]]
== Can I move an instance to another project? ==
<span id="Instance-Transfer"></span>
Instances cannot be directly moved between projects. However, you can use the following workaround, provided the target project has sufficient available quota:
'''In the Source Project:'''
# Create a '''snapshot''' of the instance. The snapshot will appear under '''Images'''.
# From the snapshot, create a '''volume'''. The volume will appear under '''Volumes'''.
# Create a '''transfer''' for the volume and record the '''Transfer ID''' and '''Authorization Key'''.
'''In the Target Project:'''
# Go to '''Volumes''' and select '''Accept Transfer'''.
# Enter the recorded '''Transfer ID''' and '''Authorization Key'''. The volume will now appear under '''Volumes'''.
# Convert or upload the volume to an '''image'''. The image will appear under '''Images'''''. This process may take some time''.
# Launch a new instance from the image in the target project.


= Project Quota =
= Project Quota =
Quota defines the resource limits allocated to a project, such as vCPUs, RAM, networks, and storage. Quotas differ depending on the type of project:
'''➡️ More information in the guide about [[Guide: Project and Quota|Project and Quota]].'''
 
* '''Private User Projects''' receive initial quotas based on the region and the user's assigned entitlements.
* '''Group Projects''' allow multiple users to share and flexibly manage the allocated quotas collectively.


== How can I request additional quota? ==
== How can I request an additional quota? ==
<span id="Quota-Increase-Application"></span>


To request additional quota, please provide the following information and submit your request via the [https://bw-support.scc.kit.edu/ Support Portal] using the following template:
=== '''Gen2:''' ===
To request additional quota, please provide the following information and submit your request via the [https://bw-support.scc.kit.edu/ Support Portal] using the following '''template''':


<pre>
<pre>
Line 134: Line 163:
MOTIVATION:    TEXT
MOTIVATION:    TEXT
USER_UUID:      UUID
USER_UUID:      UUID
PROJECT_UUID:  UUID (or ask for a new one)
PROJECT_UUID:  UUID  
NUMBER_VM::    INTEGER
NUMBER_VM:     INTEGER
RAM_GB:        INTEGER
RAM_GB:        INTEGER
VCPU:          INTEGER
VCPU:          INTEGER
Line 141: Line 170:
SPECIAL_QUOTA:  TEXT
SPECIAL_QUOTA:  TEXT
CUT_OFF_DATE:  dd.mm.yyyy
CUT_OFF_DATE:  dd.mm.yyyy
</pre>
</pre>📌 '''Note:''' The values you provide must represent the '''total desired quota''' for your project '''after''' the increase, '''not''' the additional amount to be added on top of your current quota.
 
=== Notes ===


* The values you provide must represent the '''total desired quota''' for your project '''after''' the increase, '''not''' the additional amount to be added on top of your current quota.
=== Gen3: ===
To request additional quota please request the [[Projects and Quota#How can I change the eligibility and ownership of a project?|change of the eligibility]]. Please note:


* Users from the '''University of Stuttgart''' are subject to '''special rules''', which are explained in detail [[Stuttgart university quota|here]].
* For the [[Guide: Project and Quota|project quota]] you need a respective [[Entitlement & Eligibility#How can I find out which entitlements I am owning?|eligibility]].

Latest revision as of 16:20, 2 February 2026

In a Nutshell
  • (Group-)Projects allow shared access to resources. Project members can manage instances collaboratively. A designated project owner is required to manage the project and act as the main contact.
  • Each bwCloud-OS project has predefined quotas for vCPU, RAM, storage, networks, etc. Quota increases can be requested via the bwSupportPortal.
  • Quotas can be assigned to a project in multiple regions.
  • Instances cannot be moved between projects directly. Use snapshots and volume transfer instead, as described here.


(Group) Projects

➡️ More information in the guide about Project and Quota.

In which situations is a new (group) project useful?

Projects allow multiple users to share and jointly manage resources within a single bwCloud-OS project. This is particularly useful for:

  • Collaborative administration of servers with a long-term or operational purpose
  • Teaching or training scenarios where students or participants need to collaborate
  • Projects that involve users from multiple bwCloud-OS regions

Such collaboration is also supported through the use of access tokens (Application Credentials).

📌 Note: If the only goal is to allow multiple users to connect to the same virtual machine, you can simply add their SSH public keys to the ~/.ssh/authorized_keys file on the VM. In that case, a new project is not required.

What does resource administration look like in a project?

OpenStack uses a basic role and rights model:

  • There is the role of Administrator, which is reserved exclusively for members of the bwCloud-OS operations team.
  • All regular users have the same standard user permissions.

As a result:

  • Every project member can see all shared resources (instances, images, security groups, etc.).
  • All members can create, modify, or delete resources.
  • There are no internal role distinctions within a project — all members have equal rights.

How can I request a new (group) project?

Gen2:

To create a new project, you need to submit a ticket with specific information about your request. Please note:

  • Only users who are already registered in bwCloud-OS can be added as project members.
  • The project must have a designated owner. Please review the role of the project owner, who is responsible for managing the project and its quota usage.
  • The project name should be no longer than 16 characters.

Please use the following template when submitting your request:

SUBJECT:        NEW_PROJECT
MOTIVATION:     TEXT
REGION:         NAME
PROJECT_NAME:   NAME 
OWNER_UUID:     UUID
MEMBER_UUIDS:   UUID, UUID, ...
NUMBER_VM:      INTEGER
RAM_GB:         INTEGER
VCPU:           INTEGER
STORAGE_GB:     INTEGER
SPECIAL_QUOTA:  TEXT
CUT_OFF_DATE:   dd.mm.yyyy

📌 Note: Members of the University of Stuttgart are subject to special rules, which are explained in detail here.

Gen3:

To create a new project, you need to submit a ticket with specific information about your request. Please note:

Please use the following template when submitting your request:

SUBJECT:        "Request new project"
MOTIVATION:     TEXT
REGION:         NAME
MEMBER_UUIDS:   UUID, UUID, ...
QUOTA_FLAVOR:   NAME
SPECIAL_QUOTA:  TEXT
CUT_OFF_DATE:   dd.mm.yyyy

Why is it necessary to specify a project owner?

The person designated as the project owner is needed for several important reasons:

  1. Billing and accountability: Cost allocation is introduced with bwCloud-OS (Gen3). Any billing or formal communication related to the project will be directed to the project owner's institution.
  2. Primary contact for the bwCloud-OS team: The project owner acts as the main contact person for the bwCloud-OS team — for operational issues, incidents, and support inquiries.
  3. User and membership management: The owner is responsible for managing project membership. We can only accept requests to add or remove members from the owner (or a designated replacement), since all project members have the same technical permissions. Otherwise, we cannot verify who has the authority to manage membership.

The project owner is always a member of the project.

Can the project owner be a functional or shared account?

No. All accounts and identifiers used in bwCloud-OS — including those for project owners and project members — must be assigned to individual, identifiable persons.

How can I change the eligibility and ownership of a project?

Gen2

If you currently own the project, you can request this via a ticket. The new owner needs to respond within the ticket as well.

Gen3

To request the change of the eligibility assigned to the project, please provide the following information in a Ticket. Please note:

  • Check for holding the new eligibility.
  • The owner of the new eligibility will be the (new) owner of the project.
  • If you currently own the project and are holding additional eligibility, you can request this. If a second user is holding the new eligibility, the second user needs to respond within the ticket as well.

Please use the following template when submitting your request:

SUBJECT:        "Change eligibility"
MOTIVATION:     TEXT
OWNER_UUID:     UUID
PROJECT_UUID:   UUID 
QUOTA_FLAVOR:   NAME
SPECIAL_QUOTA:  TEXT
CUT_OFF_DATE:   dd.mm.yyyy

The Project-Eligibiity link will be updated afterward.

Can project members be changed?

Yes, members of a project can be added or removed at any time. Only the project owner is authorized to request changes to the project membership.

To request member changes, please submit a support ticket and provide the following information using this template:

SUBJECT:         MEMBER_PROJECT
NEW_OWNER:       UUID
PROJECT:         UUID
MEMBERS_ADD:     UUID, UUID, ...
MEMBERS_REMOVE:  UUID, UUID, ...

How can I switch between projects?

A user can be a member of multiple projects, and projects can have quotas in multiple bwCloud-OS regions.

To switch between projects and regions, use the project/region selector button located at the top left of the Dashboard. This allows you to choose the target project and corresponding region for your current session.

Can I move an instance to another project?

Instances cannot be directly moved between projects. However, you can use the following workaround, provided the target project has sufficient available quota:

In the Source Project:

  1. Create a snapshot of the instance. The snapshot will appear under Images.
  2. From the snapshot, create a volume. The volume will appear under Volumes.
  3. Create a transfer for the volume and record the Transfer ID and Authorization Key.

In the Target Project:

  1. Go to Volumes and select Accept Transfer.
  2. Enter the recorded Transfer ID and Authorization Key. The volume will now appear under Volumes.
  3. Convert or upload the volume to an image. The image will appear under Images. This process may take some time.
  4. Launch a new instance from the image in the target project.

Project Quota

➡️ More information in the guide about Project and Quota.

How can I request an additional quota?

Gen2:

To request additional quota, please provide the following information and submit your request via the Support Portal using the following template:

SUBJECT:        NEW_QUOTA
MOTIVATION:     TEXT
USER_UUID:      UUID
PROJECT_UUID:   UUID 
NUMBER_VM:      INTEGER
RAM_GB:         INTEGER
VCPU:           INTEGER
STORAGE_GB:     INTEGER
SPECIAL_QUOTA:  TEXT
CUT_OFF_DATE:   dd.mm.yyyy

📌 Note: The values you provide must represent the total desired quota for your project after the increase, not the additional amount to be added on top of your current quota.

Gen3:

To request additional quota please request the change of the eligibility. Please note: