Atom feed of this document
 

 Deployment Tool for OpenStack using Puppet (dodai-deploy)

The dodai-deploy is a software management tool. It supports the following softwares.

  • OpenStack Folsom(Compute, Glance, Swift, Keystone). Compute includes Nova, Horizon, Cinder and Quantum.

  • hadoop 0.22.0

  • sun grid engine 6.2u5

 Features

  • Manage installation, uninstallation and testing of a software.

  • Support deployment on multiple machines.

  • Support target machines in different network segments.

  • Provide web UI to facilitate user operations.

  • Provide REST API to make it possible to integrate it with other tools.

  • Support parallel installation of software components.

 OSes supported

Table 17.1. OSes supported

ubuntu 12.04

OpenStack Folsom (Compute, Glance, Swift, Keystone)

:)

hadoop 0.22.0

:)

:)

:)

sun grid engine 6.2u5

:)

:)

:)

 Glossary

  • dodai-deploy server - The server in which services of dodai-deploy is started.

  • Node - The machine that is the target of installation.

  • Nova, Glance, Swift etc.

  • Proposal - The set of the kinds of configurations which describe how to install a software. The configurations include "Node config", "Config item", "Software config", "Component config".

  • Node config - A configuration that describes which component to be installed on a node.

  • Config item - A variable which can be used in the content of software config and component config.

  • Software config - A configuration that describes the content of a configuration file for all components.

  • Component config - A configuration that describes the content of a configuration file for only one component.

 Installation

The $home in the following sections is the path of the home directory of the dodai-deploy.

  1. Download dodai-deploy.

    Execute the following commands on the dodai-deploy server and all the nodes.

    $ sudo apt-get install git -y
    $ git clone https://github.com/nii-cloud/dodai-deploy.git
    $ cd dodai-deploy
                            
  2. Set up the dodai-deploy server.

    Execute the following commands on dodai-deploy server to install necessary softwares and modify their settings.

    $ sudo $home/setup-env/setup.sh server
                
  3. Set up nodes.

    Execute the following commands on all the nodes to install necessary softwares and modify their settings.

    $ sudo $home/setup-env/setup.sh -s $server node
                    

    The $server in the above command is the fully qualified domain name (fqdn) of the dodai-deploy server. You can confirm the fqdn with the following command.

    $ sudo hostname -f
                    

    After nodes were set up, the system time of nodes should be synchronized with dodai-deploy server.

  4. Set up storage device for Swift.

    You must set up a storage device before swift is installed. You should execute the commands for a physical device or for a loopback device on all nodes in which swift storage server is to be installed.

    • For a physical device, use the following command.

      $ sudo $home/setup-env/setup-storage-for-swift.sh physical $storage_path $storage_dev
                                          

      For example,

      $ sudo $home/setup-env/setup-storage-for-swift.sh physical /srv/node sdb1
                                          
    • For a loopback device, use the following command.

      $ sudo $home/setup-env/setup-storage-for-swift.sh loopback $storage_path $storage_dev $size
                                          

      For example,

      $ sudo $home/setup-env/setup-storage-for-swift.sh loopback /srv/node sdb1 4
                                          

  5. Create volume group for nova-volume.

    You must create a volume group before nova-volume is installed. You should execute the commands for a physical device or for a loopback device on the node in which nova-volume is to be installed.

    • For a physical device, use the following command.

      $ sudo $home/setup-env/create-volume-group.sh physical $volume_group_name $device_path
                                          

      For example,

      $ sudo $home/setup-env/create-volume-group.sh physical nova-volumes /dev/sdb1
                                          
    • For a loopback device, use the following command.

      $ sudo $home/setup-env/create-volume-group.sh loopback $volume_group_name $file_path $size
                                          

      For example,

      $ sudo $home/setup-env/create-volume-group.sh loopback nova-volumes /root/volume.data 4
                                          

  6. Start servers.

    Execute the following command on the dodai-deploy server to start the web server and job server.

    $ sudo $home/script/start-servers production
                    

    You can stop the web server and job server with the following command.

    $ sudo $home/script/stop-servers
                    

 Using web UI

You can find step-by-step guidance at http://$dodai_deploy_server:3000/.

 Using REST APIs

An API simulator can be found at http://$dodai_deploy_server:3000/rest_apis/index.html. You can get the list of REST APIs with it. You can also execute APIs by simply filling in parameters and clicking the "Execute" button.

 Notes

  1. SSH login nova instance after test of nova

    An instance will be started during the test of nova. After the test, you can login the instance by executing the following commands.

    For openstack nova folsom,

    $ sudo -i
    $ cd /var/lib/nova
    $ . novarc
    $ euca-describe-instances
    $ ssh -i mykey.priv 10.0.0.3
                        
  2. Glance should be installed before using nova, because nova depends on glance in default settings.

    In /etc/nova/nova.conf the value of setting image_service is nova.image.glance.GlanceImageService.

  3. Change Linux's setting net.ipv4.ip_forward to 1 in the machine where nova-network will be installed before nova installation with the following command.

    $ sudo sysctl -w net.ipv4.ip_forward=1
                        

    You can recover the setting with the following command.

    $ sudo sysctl -w net.ipv4.ip_forward=0
                        
Log a bug against this page


loading table of contents...