github.com/rvaralda/deis@v1.4.1/docs/installing_deis/rackspace.rst (about) 1 :title: Installing Deis on Rackspace 2 :description: How to provision a multi-node Deis cluster on Rackspace 3 4 .. _deis_on_rackspace: 5 6 Rackspace 7 ========= 8 9 We'll mostly be following the `CoreOS on Rackspace`_ guide. You'll need to have a sane python 10 environment with ``pip`` already installed (``sudo easy_install pip``). 11 12 Please :ref:`get the source <get_the_source>` and refer to the scripts in `contrib/rackspace`_ 13 while following this documentation. 14 15 16 Install supernova 17 ----------------- 18 19 .. code-block:: console 20 21 $ sudo pip install keyring 22 $ sudo pip install rackspace-novaclient 23 $ sudo pip install supernova 24 25 26 Configure supernova 27 ------------------- 28 29 Edit ``~/.supernova`` to match the following: 30 31 .. code-block:: console 32 33 [production] 34 OS_AUTH_URL = https://identity.api.rackspacecloud.com/v2.0/ 35 OS_USERNAME = {rackspace_username} 36 OS_PASSWORD = {rackspace_api_key} 37 OS_TENANT_NAME = {rackspace_account_id} 38 OS_REGION_NAME = DFW (or ORD or another region) 39 OS_AUTH_SYSTEM = rackspace 40 41 Your account ID is displayed in the upper right-hand corner of the cloud control panel UI, and your 42 API key can be found on the Account Settings page. 43 44 45 Generate SSH Key 46 ---------------- 47 48 .. include:: ../_includes/_generate-ssh-key.rst 49 50 51 Set up your keys 52 ---------------- 53 54 Tell supernova about the key pair and give it an identifiable name: 55 56 .. code-block:: console 57 58 $ supernova production keypair-add --pub-key ~/.ssh/deis.pub deis-key 59 60 61 Generate a New Discovery URL 62 ---------------------------- 63 64 .. include:: ../_includes/_generate-discovery-url.rst 65 66 67 Choose number of instances 68 -------------------------- 69 70 By default, the provision script will provision 3 servers. You can override this by setting `DEIS_NUM_INSTANCES`: 71 72 .. code-block:: console 73 74 $ DEIS_NUM_INSTANCES=5 ./provision-rackspace-cluster.sh deis-key 75 76 Note that for scheduling to work properly, clusters must consist of at least 3 nodes and always have an odd number of members. 77 For more information, see `etcd disaster recovery`_. 78 79 Deis clusters of less than 3 nodes are unsupported. 80 81 Run the Provision Script 82 ------------------------ 83 84 Run the Rackspace provision script to spawn a new CoreOS cluster. You'll need to provide the name 85 of the key pair you just added. Optionally, you can also specify a flavor name, as well as the supernova environment to use. The environment will default to `production`, and the flavor to `performance1-2`. 86 87 .. code-block:: console 88 89 $ cd contrib/rackspace 90 $ ./provision-rackspace-cluster.sh 91 Usage: provision-rackspace-cluster.sh <key pair name> [flavor] [environment] 92 $ ./provision-rackspace-cluster.sh deis-key 93 94 .. note:: 95 96 The provision script will by default provision ``performance1-2`` servers. Choosing a smaller 97 server size is not recommended. Please refer to :ref:`system-requirements` for resource 98 considerations when choosing a server size to run Deis. 99 100 Configure DNS 101 ------------- 102 103 See :ref:`configure-dns` for more information on properly setting up your DNS records with Deis. 104 105 106 Configure Load Balancer 107 ----------------------- 108 109 You'll need to create two load balancers on Rackspace to handle your cluster: 110 111 .. code-block:: console 112 113 Load Balancer 1 114 Port 80 115 Protocol HTTP 116 Health Monitoring - 117 Monitor Type HTTP 118 HTTP Path /health-check 119 120 Load Balancer 2 121 Virtual IP Shared VIP on Another Load Balancer (select Load Balancer 1) 122 Port 2222 123 Protocol TCP 124 125 Install Deis Platform 126 --------------------- 127 128 Now that you've finished provisioning a cluster, please refer to :ref:`install_deis_platform` to 129 start installing the platform. 130 131 132 .. _`contrib/rackspace`: https://github.com/deis/deis/tree/master/contrib/rackspace 133 .. _`CoreOS on Rackspace`: https://coreos.com/docs/running-coreos/cloud-providers/rackspace/ 134 .. _`etcd disaster recovery`: https://github.com/coreos/etcd/blob/master/Documentation/admin_guide.md#disaster-recovery 135 .. _Rackspace: https://github.com/deis/deis/tree/master/contrib/rackspace#readme 136 .. _`contrib/rackspace`: https://github.com/deis/deis/tree/master/contrib/rackspace