Table Of Contents

Previous topic

Managing Users

Next topic

Managing Instances

This Page

Psst... hey. You're reading the latest content, but it might be out of sync with code. You can read Nova 2011.1 docs or all OpenStack docs too.

Managing Projects

Projects are isolated resource containers forming the principal organizational structure within Nova. They consist of a separate vlan, volumes, instances, images, keys, and users.

Although the original ec2 api only supports users, nova adds the concept of projects. A user can specify which project he or she wishes to use by appending :project_id to his or her access key. If no project is specified in the api request, nova will attempt to use a project with the same id as the user.

The api will return NotAuthorized if a normal user attempts to make requests for a project that he or she is not a member of. Note that admins or users with special admin roles skip this check and can make requests for any project.

To create a project, use the project create command of nova-manage. The syntax is nova-manage project create projectname manager_id [description] You must specify a projectname and a manager_id. For example::
nova-manage project create john_project john “This is a sample project”
You can add and remove users from projects with project add and project remove::
nova-manage project add john_project john nova-manage project remove john_project john

Project Commands

Admins and Project Managers can use the ‘nova-manage project’ command to manage project resources:

  • project add: Adds user to project
    • arguments: project user
  • project create: Creates a new project
    • arguments: name project_manager [description]
  • project delete: Deletes an existing project
    • arguments: project_id
  • project environment: Exports environment variables to an sourcable file
    • arguments: project_id user_id [filename=’novarc]
  • project list: lists all projects
    • arguments: none
  • project remove: Removes user from project
    • arguments: project user
  • project scrub: Deletes data associated with project
    • arguments: project
  • project zipfile: Exports credentials for project to a zip file
    • arguments: project_id user_id [filename=’nova.zip]

Setting Quotas

Nova utilizes a quota system at the project level to control resource consumption across available hardware resources. Current quota controls are available to limit the:

  • Number of volumes which may be created
  • Total size of all volumes within a project as measured in GB
  • Number of instances which may be launched
  • Number of processor cores which may be allocated
  • Publicly accessible IP addresses

Use the following command to set quotas for a project * project quota: Set or display quotas for project

  • arguments: project_id [key] [value]