Skip to content

Commit 584fc6b

Browse files
author
Matthew Fisher
committed
Merge pull request #2361 from bacongobbler/import-do-docs
docs(contrib): refer to digitalocean guide
2 parents 62ff6d5 + 5b5deac commit 584fc6b

1 file changed

Lines changed: 1 addition & 104 deletions

File tree

contrib/digitalocean/README.md

Lines changed: 1 addition & 104 deletions
Original file line numberDiff line numberDiff line change
@@ -1,106 +1,3 @@
11
# Provision a Deis Cluster on DigitalOcean
22

3-
## Discovery URL
4-
5-
Create a user-data file with a new discovery URL this way:
6-
7-
```console
8-
$ make discovery-url
9-
```
10-
11-
Or copy [`contrib/coreos/user-data.example`](../coreos/user-data.example) to `contrib/coreos/user-data` and follow the directions in the `etcd:` section to add a unique discovery URL.
12-
13-
## Install docl and authorize:
14-
The docl gem consumes the DigitalOcean API.
15-
```console
16-
$ gem install docl
17-
```
18-
19-
Before you can authorize you need to [create a Personal Access Token](https://www.digitalocean.com/community/tutorials/how-to-use-the-digitalocean-api-v2). Make sure you create a read & write token.
20-
Copy paste the token (make sure you also save it somewhere encrypted) before you continue to the next step.
21-
22-
```console
23-
$ docl authorize
24-
```
25-
26-
## Upload keys
27-
Choose an SSH keypair to use for Deis and import it to DigitalOcean:
28-
```console
29-
$ docl upload_key deis ~/.ssh/deis.pub
30-
```
31-
This will print the ID of the uploaded key. Copy and paste the ID, you will need it in a later step.
32-
33-
In case you forget the ID of the public key you can retrieve it later with the following command:
34-
```console
35-
$ docl keys
36-
```
37-
38-
## Choose number of instances
39-
By default, the script will provision 3 servers. You can override this by setting `DEIS_NUM_INSTANCES`:
40-
```console
41-
$ export DEIS_NUM_INSTANCES=5
42-
```
43-
44-
Note that for scheduling to work properly, clusters must consist of at least 3 nodes and always have an odd number of members.
45-
For more information, see [optimal etcd cluster size](https://github.com/coreos/etcd/blob/master/Documentation/optimal-cluster-size.md).
46-
47-
Deis clusters of less than 3 nodes are unsupported.
48-
49-
## Deploy cluster
50-
Run the provision script:
51-
```console
52-
$ ./provision-do-cluster.sh <REGION_ID> <SSH_ID> <SIZE>
53-
```
54-
55-
Not all regions allow private networks. Choose one which does (at the time of this writing, NY 2 & 3,
56-
Amsterdam 2 & 3, Singapore 1 or London 1) - check the web UI for the current private network support.
57-
58-
You can enumerate all of the supported regions with:
59-
60-
```console
61-
$ docl regions --private_networking --metadata
62-
```
63-
64-
Deis controller nodes will need at least 2 GB to even start all
65-
the services. Add the memory requirements of deployed applications and choose an adequate
66-
droplet size. The default is 8 GB. Specify the size with NGB, where N is 2, 4, 8, 16, 32 or 64.
67-
68-
This will print the IP addresses of the initialized machines.
69-
70-
## Configure Deis
71-
Set the default domain used to anchor your applications:
72-
73-
```console
74-
$ deisctl config platform set domain=mycluster.local
75-
```
76-
77-
For this to work, you'll need to configure DNS records so you can access applications hosted on Deis. See [Configuring DNS](http://docs.deis.io/en/latest/managing_deis/configure-dns/#dns-records) for details.
78-
79-
If you want to allow `deis run` for one-off admin commands, you must provide an SSH private key that allows Deis to gather container logs on CoreOS hosts:
80-
81-
```console
82-
$ deisctl config platform set sshPrivateKey=<path-to-private-key>
83-
```
84-
85-
## Initialize the cluster
86-
set DEISCTL_TUNNEL to one of the IPs of the virtual machines (these are printed on the console in a previous step). You can also login to the web interface of DigitalOcean to see the Public IP addresses.
87-
88-
```console
89-
$ export DEISCTL_TUNNEL=23.253.219.94
90-
$ deisctl install platform && deisctl start platform
91-
```
92-
Deisctl will deploy Deis and make sure the services are started properly. Grab a coffee.
93-
94-
### Use Deis!
95-
After that, register with Deis!
96-
```console
97-
$ deis register http://deis.example.org
98-
username: deis
99-
password:
100-
password (confirm):
101-
email: info@opdemand.com
102-
```
103-
104-
## Hack on Deis
105-
106-
See [Hacking on Deis](http://docs.deis.io/en/latest/contributing/hacking/).
3+
Please refer to the instructions at http://docs.deis.io/en/latest/installing_deis/digitalocean/.

0 commit comments

Comments
 (0)