Blueprint-os-user-docs


 * Launchpad Entry: Design for OpenStack User Docs
 * Created: Diane Fleming
 * Contributors:

Summary
This blueprint describes a plan to create documentation for OpenStack users. What is an OpenStack user? An OpenStack user performs tasks on an existing cloud. An OpenStack user might be someone who wants to list available resources, such as images and servers, and create and manage resources. Or an OpenStack user might be a budding OpenStack developer: Someone who wants to build web applications that run on a cloud.

This documentation will provide a conceptual overview of the OpenStack cloud, and it will enable users to authenticate, boot a server, list resources, such as instances, networks, volumes, and so on, delete resources, access a console for an instance, and configure VNC, among other tasks.

This documentation will provide a clear roadmap for users to interact with OpenStack clouds by using the dashboard and client commands and then progress to using the APIs through cURL commands or open SDKs.

The planned documentation includes:

Content will be shared between the two user guides.

These documents will be partially sourced from existing documentation, and will reduce redundancy and increase usability, clarity, and consistency.

This blueprint is related to Blueprint Restructure Documentation.

Blueprint - OpenStack End User Guide
Audience: End users of OpenStack clouds who perform tasks through the Horizon dashboard or the OpenStack command-line clients. Also, developers who create applications on top of OpenStack by using the OpenStack APIs.

Roadmap: Users ramp up on cloud computing by using the Horizon dashboard and the OpenStack command-line clients. Then, they use the OpenStack APIs to create scalable applications.

Product info: Havana, 2013.1

Include common glossary? Yes

Purpose:


 * Explain OpenStack cloud concepts and describe how to use an OpenStack cloud.
 * Include command-line tools and credentials, how to use Horizon dashboard, and how to create images.

Source material:


 * Suse End User Guide
 * Rackspace-sponsored OpenStack training
 * OpenStack API Quick Start
 * Python Developer Documentation
 * Language Bindings Documentation
 * OpenStack Clients Guide
 * OpenStack Administration Guides
 * OpenStack API Specifications
 * Programming OpenStack Compute API with Shell and Python

CHAPTER 1: Overview
One-to-two paragraph description of the OpenStack cloud. Descriptions of the OpenStack projects. State the goals of the book - concepts, set-up, and tutorials.

SECTION 1: OpenStack Cloud Concepts
Describe the main concepts that a user needs to understand to use the cloud.
 * Authentication/Identity service - http://www.openstack.org/software/openstack-shared-services/
 * Images, Image service - What’s an image? What’s a snapshot? http://www.openstack.org/software/openstack-shared-services/
 * Servers - What is a virtual machine? A hypervisor? A server personality? What does it mean to boot a server? http://www.openstack.org/software/openstack-compute/. Also, http://docs.openstack.org/cli/quick-start/content/nova_client.html
 * Security groups - http://www.openstack.org/software/openstack-compute/
 * Floating IP addresses
 * Console log
 * Object and block storage - http://www.openstack.org/software/openstack-storage/ - What storage can you attach to instances? Can I attach an ISO as if I'm mounting a CD/DVD? Backend Storage Devices, Users and Tenants (Projects), Volumes Snapshots and Backups.
 * Networking - http://www.openstack.org/software/openstack-networking/

SECTION 2: How to Interact with an OpenStack Cloud
Describe ways you can interact with a cloud:

Horizon Dashboard
http://www.openstack.org/software/openstack-dashboard/

OpenStack Command-line Clients
Provide x-ref to OpenStack Command Reference. Base off of: http://docs.rackspace.com/servers/api/v2/cn-gettingstarted/content/novaclient.html

cURL Commands with Embedded API Calls
Base off of: http://docs.rackspace.com/servers/api/v2/cn-gettingstarted/content/curl.html

OpenStack APIs
Talk about ways to use the APIs – cURL? SDKs? Language bindings?

SECTION 3: Common User Tasks

 * Boot, list, and delete servers
 * List and delete images - point to new book about OpenStack Images for info about creating images
 * Load-balance xx
 * Create an isolated network
 * Access a console for an instance
 * Configure VNC
 * Create, attach, and detach a volume

SECTION 4: How to Use the Tutorials in this Guide
Base off of: http://docs.rackspace.com/servers/api/v2/cn-gettingstarted/content/ch_how_examples_work.html

Provide tutorials for various use cases. Use different methods in each tutorial so user gets an idea of what’s possible.

Run Your Wordpress Blog on Your Cloud
Method: nova client
 * 1) Install the nova client
 * 2) Set up a user
 * 3) Get images for your application servers
 * 4) Spin up server instances
 * 5) Install Wordpress and its dependencies.

Source from: http://docs.openstack.org/grizzly/openstack-compute/admin/content/running-elastic-web-app-cloud.html Provide pointers to installation information in Command Reference, and other books with more information

Store Large Photos or Videos in Your Cloud
Method: swift client and Cyberduck application


 * 1) Install swift client
 * 2) Set up secure access to OpenStack Object Storage
 * 3) Install and configuration Cyberduck to connect to OpenStack Object Storage
 * 4) Copy files to the cloud

Source from: http://docs.openstack.org/grizzly/openstack-object-storage/admin/content/storing-large-photos-or-videos-on-the-cloud.html

Create and Attach a Volume to Your Instance
Method: cinder and nova clients Use case? http://docs.openstack.org/grizzly/openstack-block-storage/admin/content/block_storage_overview.html#managing-volumes

Create an Isolated Network
Method: nova and quantum clients Use case? http://docs.openstack.org/grizzly/openstack-network/admin/content/basic_operations.html

APPENDIX A. OpenStack Command Reference
Purpose


 * Describe command-line clients and their subcommands and required and optional parameters.
 * Write scripts to auto-generate command and command parameters from the code.
 * Use conditional tags to generate two versions of this book: One with admin commands, and one without.

Source material


 * OpenStack Clients Guide

Outcome

Now auto-generated from code: https://review.openstack.org/#/c/69942/

Blueprint - OpenStack Admin User Guide
Audience: Admin users of OpenStack clouds who perform tasks through the Horizon dashboard or the OpenStack command-line clients. Also, developers who create applications on top of OpenStack by using the OpenStack APIs.

Product info: Havana, 2013.1

Include common glossary? Yes

Purpose:


 * Explain admin tasks you can perform on an OpenStack cloud.
 * Include command-line tools and credentials, how to use Horizon dashboard, and how to create images.
 * Include Cloud application architecture diagram.

Source material:


 * Suse User Guide for Admins
 * Rackspace-sponsored OpenStack training
 * OpenStack API Quick Start
 * Python Developer Documentation
 * Language Bindings Documentation
 * OpenStack Clients Guide
 * OpenStack Administration Guides
 * OpenStack API Specifications
 * Programming OpenStack Compute API with Shell and Python
 * Chapter from Summer Long about quotas/neutron quotas

CHAPTER 1: Overview
One-to-two paragraph description of the OpenStack cloud. Descriptions of the OpenStack projects. Architecture diagram with few sentences of explanation. State the goals of the book - concepts, set-up, and tutorials.

SECTION 1: OpenStack Cloud Concepts
Describe the main concepts that a user needs to understand to use the cloud.
 * Authentication/Identity service - http://www.openstack.org/software/openstack-shared-services/
 * Images, Image service - What’s an image? What’s a snapshot? http://www.openstack.org/software/openstack-shared-services/
 * Servers - What is a virtual machine? A hypervisor? A server personality? What does it mean to boot a server? http://www.openstack.org/software/openstack-compute/. Also, http://docs.openstack.org/cli/quick-start/content/nova_client.html
 * Security groups - http://www.openstack.org/software/openstack-compute/
 * Floating IP addresses
 * Console log
 * Object and block storage - http://www.openstack.org/software/openstack-storage/ - What storage can you attach to instances? Can I attach an ISO as if I'm mounting a CD/DVD? Backend Storage Devices, Users and Tenants (Projects), Volumes Snapshots and Backups.
 * Networking - http://www.openstack.org/software/openstack-networking/

SECTION 2: How to Interact with an OpenStack Cloud
Describe ways you can interact with a cloud:

Horizon Dashboard
http://www.openstack.org/software/openstack-dashboard/

Add brief description of each option (since quite a few of these, Aggregates and Hypervisors, won't be in the tutorials).

OpenStack Command-line Clients
Provide x-ref to OpenStack Command Reference. Base off of: http://docs.rackspace.com/servers/api/v2/cn-gettingstarted/content/novaclient.html

cURL Commands with Embedded API Calls
Base off of: http://docs.rackspace.com/servers/api/v2/cn-gettingstarted/content/curl.html

OpenStack APIs
Talk about ways to use the APIs – cURL? SDKs? Language bindings?

SECTION 3: Common Admin User Tasks

 * OpenStack RC File
 * Managing Projects and Users (including groups, domains, and roles)
 * Managing Images
 * Managing Flavors
 * Setting Quotas (including new Neutron quotas).
 * Migrating Servers
 * Managing Networks and Routers (even if we can't include howTos in this version, this task should probably be acknowledged)

SECTION 4: How to Use the Tutorials in this Guide
Base off of: http://docs.rackspace.com/servers/api/v2/cn-gettingstarted/content/ch_how_examples_work.html

Provide tutorials for various use cases. Use different methods in each tutorial so user gets an idea of what’s possible.

APPENDIX A. OpenStack Command Reference
Purpose
 * Admin commands only
 * Describe command-line clients and their subcommands and required and optional parameters.
 * Write scripts to auto-generate command and command parameters from the code.
 * Use conditional tags to generate two versions of this book: One with admin commands, and one without.

Outcome

Now auto-generated from code: https://review.openstack.org/#/c/69942/

Source material


 * OpenStack Clients Guide