vexxhost.rst 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. =============================
  2. Getting Started with VEXXHOST
  3. =============================
  4. `VEXXHOST <https://vexxhost.com/>`_ is a cloud computing host which provides
  5. `Canadian cloud computing <https://vexxhost.com//cloud-computing>`_ services
  6. which are based in Monteral and use the libcloud OpenStack driver. VEXXHOST
  7. currently runs the Havana release of OpenStack. When provisioning new
  8. instances, they automatically get a public IP and private IP address.
  9. Therefore, you do not need to assign a floating IP to access your instance
  10. after it's booted.
  11. Cloud Provider Configuration
  12. ============================
  13. To use the `openstack` driver for the VEXXHOST public cloud, you will need to
  14. set up the cloud provider configuration file as in the example below:
  15. ``/etc/salt/cloud.providers.d/vexxhost.conf``:
  16. In order to use the VEXXHOST public cloud, you will need to setup a cloud
  17. provider configuration file as in the example below which uses the OpenStack
  18. driver.
  19. .. code-block:: yaml
  20. my-vexxhost-config:
  21. # Set the location of the salt-master
  22. #
  23. minion:
  24. master: saltmaster.example.com
  25. # Configure VEXXHOST using the OpenStack plugin
  26. #
  27. identity_url: http://auth.api.thenebulacloud.com:5000/v2.0/tokens
  28. compute_name: nova
  29. # Set the compute region:
  30. #
  31. compute_region: na-yul-nhs1
  32. # Configure VEXXHOST authentication credentials
  33. #
  34. user: your-tenant-id
  35. password: your-api-key
  36. tenant: your-tenant-name
  37. # keys to allow connection to the instance launched
  38. #
  39. ssh_key_name: yourkey
  40. ssh_key_file: /path/to/key/yourkey.priv
  41. driver: openstack
  42. .. note::
  43. .. versionchanged:: 2015.8.0
  44. The ``provider`` parameter in cloud provider definitions was renamed to ``driver``. This
  45. change was made to avoid confusion with the ``provider`` parameter that is used in cloud profile
  46. definitions. Cloud provider definitions now use ``driver`` to refer to the Salt cloud module that
  47. provides the underlying functionality to connect to a cloud host, while cloud profiles continue
  48. to use ``provider`` to refer to provider configurations that you define.
  49. Authentication
  50. ==============
  51. All of the authentication fields that you need can be found by logging into
  52. your VEXXHOST customer center. Once you've logged in, you will need to click
  53. on "CloudConsole" and then click on "API Credentials".
  54. Cloud Profile Configuration
  55. ===========================
  56. In order to get the correct image UUID and the instance type to use in the
  57. cloud profile, you can run the following command respectively:
  58. .. code-block:: bash
  59. # salt-cloud --list-images=vexxhost-config
  60. # salt-cloud --list-sizes=vexxhost-config
  61. Once you have that, you can go ahead and create a new cloud profile. This
  62. profile will build an Ubuntu 12.04 LTS `nb.2G` instance.
  63. ``/etc/salt/cloud.profiles.d/vh_ubuntu1204_2G.conf``:
  64. .. code-block:: yaml
  65. vh_ubuntu1204_2G:
  66. provider: my-vexxhost-config
  67. image: 4051139f-750d-4d72-8ef0-074f2ccc7e5a
  68. size: nb.2G
  69. Provision an instance
  70. =====================
  71. To create an instance based on the sample profile that we created above, you
  72. can run the following `salt-cloud` command.
  73. .. code-block:: bash
  74. # salt-cloud -p vh_ubuntu1204_2G vh_instance1
  75. Typically, instances are provisioned in under 30 seconds on the VEXXHOST public
  76. cloud. After the instance provisions, it will be set up a minion and then
  77. return all the instance information once it's complete.
  78. Once the instance has been setup, you can test connectivity to it by running
  79. the following command:
  80. .. code-block:: bash
  81. # salt vh_instance1 test.version
  82. You can now continue to provision new instances and they will all automatically
  83. be set up as minions of the master you've defined in the configuration file.