Add doc with post-install instructions for GCP (#7912)
* Finish draft of cloud page * Fixes to text, add page to nav * Fixes to structure to accomodate new grid item * Add AWS and Azure info * Add proxy details
Joel Hans committed
Jan 30, 2020 at 14:01 UTC
a3164eacef7d86a2543eecd46c54773e54d34f80
4 files changed
+191
-15
docs/generator/buildyaml.sh
+1
@@ -152,6 +152,7 @@ echo -ne " - 'docs/what-is-netdata.md'
152
- 'packaging/installer/methods/kickstart.md'
153
- 'packaging/installer/methods/kickstart-64.md'
154
- 'packaging/docker/README.md'
155
+ - 'packaging/installer/methods/cloud-providers.md'
156
- 'packaging/installer/methods/macos.md'
157
- 'packaging/installer/methods/freebsd.md'
158
- 'packaging/installer/methods/manual.md'
docs/generator/custom/css/netdata.css
+9
-2
@@ -453,16 +453,23 @@ html [data-md-color-primary="blue-grey"] .md-nav--primary .md-nav__title--site {
453
}
454
}
455
456
-.md-typeset .grid-item img {
456
+.item-title {
457
+ display: flex;
458
+ flex-flow: row nowrap;
459
+ align-items: center;
460
+}
461
+
462
+.md-typeset .item-title img {
463
border: 0;
464
display: inline;
465
margin: 0 1rem 0 0;
460
- max-height: 52px;
466
+ max-height: 64px;
467
vertical-align: middle;
468
}
469
470
.grid-item h3 {
471
margin-top: 0;
472
+ margin-bottom: 0;
473
}
474
475
.grid-item ul {
packaging/installer/README.md
+59
-13
@@ -58,75 +58,121 @@ operating systems.
58
59
<div class="installer-grid">
60
<div class="grid-item">
61
- <h3><img src="https://user-images.githubusercontent.com/1153921/73030393-c5eb4200-3df6-11ea-9942-436caa3ed100.png" alt="Install with .deb or .rpm packages" />Packages</h3>
61
+ <div class="item-title">
62
+ <img src="https://user-images.githubusercontent.com/1153921/73030393-c5eb4200-3df6-11ea-9942-436caa3ed100.png" alt="Install with .deb or .rpm packages" />
63
+ <h3>Packages</h3>
64
+ </div>
65
<ul>
66
<li><a href="methods/packages/">Install with <code>.deb</code> or <code>.rpm</code> packages</a></li>
67
</ul>
68
</div>
69
<div class="grid-item">
67
- <h3><img src="https://user-images.githubusercontent.com/1153921/73030303-94727680-3df6-11ea-963e-6f2cb0ce762c.png" alt="Install with a pre-built static binary for 64-bit systems" />Static binary</h3>
70
+ <div class="item-title">
71
+ <img src="https://user-images.githubusercontent.com/1153921/73030303-94727680-3df6-11ea-963e-6f2cb0ce762c.png" alt="Install with a pre-built static binary for 64-bit systems" />
72
+ <h3>Static binary</h3>
73
+ </div>
74
<ul>
75
<li><a href="methods/kickstart-64/">Install with a pre-built static binary for 64-bit systems</a></li>
76
</ul>
77
</div>
78
<div class="grid-item">
73
- <h3><img src="https://user-images.githubusercontent.com/1153921/71905478-e36ea980-3170-11ea-94f7-950328ad1bdf.png" alt="Install Netdata on Docker" />Docker</h3>
79
+ <div class="item-title">
80
+ <img src="https://user-images.githubusercontent.com/1153921/71905478-e36ea980-3170-11ea-94f7-950328ad1bdf.png" alt="Install Netdata on Docker" />
81
+ <h3>Docker</h3>
82
+ </div>
83
<ul>
84
<li><a href="../docker/#run-netdata-with-the-docker-command">Using the <code>docker</code> command</a></li>
76
- <li><a href="../docker/#run-netdata-with-the-docker-command">Using a `docker-compose.yml` file</a></li>
85
+ <li><a href="../docker/#run-netdata-with-the-docker-command">Using a <code>docker-compose.yml</code> file</a></li>
86
</ul>
87
</div>
88
<div class="grid-item">
80
- <h3><img src="https://user-images.githubusercontent.com/1153921/71960868-c1236d00-31fe-11ea-859e-902d36233e38.png" alt="Install Netdata on Kubernetes" />Kubernetes</h3>
89
+ <div class="item-title">
90
+ <img src="https://user-images.githubusercontent.com/1153921/71960868-c1236d00-31fe-11ea-859e-902d36233e38.png" alt="Install Netdata on Kubernetes" />
91
+ <h3>Kubernetes</h3>
92
+ </div>
93
<ul>
94
<li><a href="https://github.com/netdata/helmchart#netdata-helm-chart-for-kubernetes-deployments">Using a Helm chart</a></li>
95
</ul>
96
</div>
97
<div class="grid-item">
86
- <h3><img src="https://user-images.githubusercontent.com/1153921/71961672-8cb0b080-3200-11ea-84f8-9139c7434110.png" alt="Install Netdata on macOS" />macOS</h3>
98
+ <div class="item-title">
99
+ <img src="https://user-images.githubusercontent.com/1153921/73030393-c5eb4200-3df6-11ea-9942-436caa3ed100.png" alt="Install Netdata on cloud providers (GCP/AWS/Azure)" />
100
+ <h3>Cloud providers (GCP/AWS/Azure)</h3>
101
+ </div>
102
+ <ul>
103
+ <li><a href="methods/cloud-providers/#recommended-installation-method-for-cloud-providers">Recommended installation methods for cloud providers</a></li>
104
+ <li><a href="methods/cloud-providers/#post-installation-configuration">Post-installation configuration</a></li>
105
+ </ul>
106
+ </div>
107
+ <div class="grid-item">
108
+ <div class="item-title">
109
+ <img src="https://user-images.githubusercontent.com/1153921/71961672-8cb0b080-3200-11ea-84f8-9139c7434110.png" alt="Install Netdata on macOS" />
110
+ <h3>macOS</h3>
111
+ </div>
112
<ul>
113
<li><a href="methods/macos/#with-homebrew">Homebrew</a></li>
114
<li><a href="methods/macos/#from-source">Manual installation from source</a></li>
115
</ul>
116
</div>
117
<div class="grid-item">
93
- <h3><img src="https://user-images.githubusercontent.com/1153921/71961245-a3a2d300-31ff-11ea-89bf-b90e7242d9a5.png" alt="Install Netdata on FreeBSD" />FreeBSD</h3>
118
+ <div class="item-title">
119
+ <img src="https://user-images.githubusercontent.com/1153921/71961245-a3a2d300-31ff-11ea-89bf-b90e7242d9a5.png" alt="Install Netdata on FreeBSD" />
120
+ <h3>FreeBSD</h3>
121
+ </div>
122
<ul>
123
<li><a href="methods/freebsd/">Installation on FreeBSD</a></li>
124
</ul>
125
</div>
126
<div class="grid-item">
99
- <h3><img src="https://user-images.githubusercontent.com/1153921/73032280-f1246000-3dfb-11ea-870d-7fbddd9a6f76.png" alt="Install manually from source" />Manual</h3>
127
+ <div class="item-title">
128
+ <img src="https://user-images.githubusercontent.com/1153921/73032280-f1246000-3dfb-11ea-870d-7fbddd9a6f76.png" alt="Install manually from source" />
129
+ <h3>Manual</h3>
130
+ </div>
131
<ul>
132
<li><a href="methods/manual/">Install manually from source</a></li>
133
</ul>
134
</div>
135
<div class="grid-item">
105
- <h3><img src="https://user-images.githubusercontent.com/1153921/73032239-c89c6600-3dfb-11ea-8224-c8a9f7a50c53.png" alt="Install on offline/air-gapped systems" />Offline</h3>
136
+ <div class="item-title">
137
+ <img src="https://user-images.githubusercontent.com/1153921/73032239-c89c6600-3dfb-11ea-8224-c8a9f7a50c53.png" alt="Install on offline/air-gapped systems" />
138
+ <h3>Offline</h3>
139
+ </div>
140
<ul>
141
<li><a href="methods/offline/">Install on offline/air-gapped systems</a></li>
142
</ul>
143
</div>
144
<div class="grid-item">
111
- <h3><img src="https://user-images.githubusercontent.com/1153921/71961918-13fe2400-3201-11ea-9a91-fe6f5b27df0c.png" alt="Install Netdata on PFSense" />PFSense</h3>
145
+ <div class="item-title">
146
+ <img src="https://user-images.githubusercontent.com/1153921/71961918-13fe2400-3201-11ea-9a91-fe6f5b27df0c.png" alt="Install Netdata on PFSense" />
147
+ <h3>PFSense</h3>
148
+ </div>
149
<ul>
150
<li><a href="methods/pfsense/">Installation on PFSense</a></li>
151
</ul>
152
</div>
153
<div class="grid-item">
117
- <h3><img src="https://user-images.githubusercontent.com/1153921/71962148-853dd700-3201-11ea-9a09-16fdb39e9ee4.png" alt="Install Netdata on Synology" />Synology</h3>
154
+ <div class="item-title">
155
+ <img src="https://user-images.githubusercontent.com/1153921/71962148-853dd700-3201-11ea-9a09-16fdb39e9ee4.png" alt="Install Netdata on Synology" />
156
+ <h3>Synology</h3>
157
+ </div>
158
<ul>
159
<li><a href="methods/synology/">Installation on Synology</a></li>
160
</ul>
161
</div>
162
<div class="grid-item">
123
- <h3><img src="https://user-images.githubusercontent.com/1153921/72070923-543dcf00-32f3-11ea-8053-d61bc96529b5.png" alt="Install Netdata on Alpine FreeNAS" />FreeNAS</h3>
163
+ <div class="item-title">
164
+ <img src="https://user-images.githubusercontent.com/1153921/72070923-543dcf00-32f3-11ea-8053-d61bc96529b5.png" alt="Install Netdata on Alpine FreeNAS" />
165
+ <h3>FreeNAS</h3>
166
+ </div>
167
<ul>
168
<li><a href="methods/freenas/">Manual installation on FreeNAS</a></li>
169
</ul>
170
</div>
171
<div class="grid-item">
129
- <h3><img src="https://user-images.githubusercontent.com/1153921/72070921-53a53880-32f3-11ea-80f1-7d00cd8a7906.png" alt="Install Netdata on Alpine Linux" />Alpine</h3>
172
+ <div class="item-title">
173
+ <img src="https://user-images.githubusercontent.com/1153921/72070921-53a53880-32f3-11ea-80f1-7d00cd8a7906.png" alt="Install Netdata on Alpine Linux" />
174
+ <h3>Alpine</h3>
175
+ </div>
176
<ul>
177
<li><a href="methods/alpine/">Manual installation on Alpine</a></li>
178
</ul>
packaging/installer/methods/cloud-providers.md
new
+122
@@ -0,0 +1,122 @@
1
+# Install Netdata on cloud providers
2
+
3
+Netdata is fully compatible with popular cloud providers like Google Cloud Platform (GCP), Amazon Web Services (AWS),
4
+Azure, and others. You can install Netdata on cloud instances to monitor the apps/services running there, or use
5
+multiple instances in a [master/slave streaming](../../../streaming/README.md) configuration.
6
+
7
+In some cases, using Netdata on these cloud providers requires unique installation or configuration steps. This page
8
+aims to document some of those steps for popular cloud providers.
9
+
10
+> This document is a work-in-progress! If you find new issues specific to a cloud provider, or would like to help
11
+> clarify the correct workaround, please [create an
12
+> issue](https://github.com/netdata/netdata/issues/new?labels=feature+request%2C+needs+triage&template=feature_request.md)
13
+> with your process and instructions on using the provider's interface to complete the workaround.
14
+
15
+- [Recommended installation methods for cloud providers](#recommended-installation-methods-for-cloud-providers)
16
+- [Post-installation configuration](#post-installation-configuration)
17
+ - [Add a firewall rule to access Netdata's dashboard](#add-a-firewall-rule-to-access-netdatas-dashboard)
18
+
19
+## Recommended installation methods for cloud providers
20
+
21
+The best installation method depends on the instance's operating system, distribution, and version. For Linux instances,
22
+we recommend either the [`kickstart.sh` automatic installation script](kickstart.md) or [.deb/.rpm
23
+packages](packages.md).
24
+
25
+To see the full list of approved methods for each operating system/version we support, see our [distribution
26
+matrix](../../DISTRIBUTIONS.md). That table will guide you to the various supported methods for your cloud instance.
27
+
28
+If you have issues with Netdata after installation, look to the sections below to find the issue you're experiencing,
29
+followed by the solution for your provider.
30
+
31
+## Post-installation configuration
32
+
33
+Some cloud providers require you take additional steps to properly configure your instance or its networking to access
34
+all of Netdata's features.
35
+
36
+### Add a firewall rule to access Netdata's dashboard
37
+
38
+If you cannot access Netdata's dashboard on your cloud instance via `http://HOST:19999`, and instead get an error page
39
+from your browser that says, "This site can't be reached" (Chrome) or "Unable to connect" (Firefox), you may need to
40
+configure your cloud provider's firewall.
41
+
42
+Cloud providers often create network-level firewalls that run separately from the instance itself. Both AWS and Google
43
+Cloud Platform calls them Virtual Private Cloud (VPC) networks. These firewalls can apply even if you've disabled
44
+firewalls on the instance itself. Because you can modify these firewalls only via the cloud provider's web interface,
45
+it's easy to overlook them when trying to configure and access Netdata's dashboard.
46
+
47
+You can often confirm a firewall issue by querying the dashboard while connected to the instance via SSH: `curl
48
+http://localhost:19999/api/v1/info`. If you see JSON output, Netdata is running properly. If you try the same `curl`
49
+command from a remote system, and it fails, it's likely that a firewall is blocking your requests.
50
+
51
+Another option is to put Netdata behind web server, which will proxy requests through standard HTTP/HTTPS ports
52
+(80/443), which are likely already open on your instance. We have a number of guides available:
53
+
54
+- [Apache](../../../docs/Running-behind-apache.md)
55
+- [Nginx](../../../docs/Running-behind-nginx.md)
56
+- [Caddy](../../../docs/Running-behind-caddy.md)
57
+- [HAProxy](../../../docs/Running-behind-haproxy.md)
58
+- [lighttpd](../../../docs/Running-behind-lighttpd.md)
59
+
60
+The next few sections outline how to add firewall rules to GCP, AWS, and Azure instances.
61
+
62
+#### Google Cloud Platform (GCP)
63
+
64
+To add a firewall rule, go to the [Firewall rules page](https://console.cloud.google.com/networking/firewalls/list) and
65
+click **Create firewall rule**.
66
+
67
+The following configuration has previously worked for Netdata running on GCP instances
68
+([see #7786](https://github.com/netdata/netdata/issues/7786)):
69
+
70
+```conf
71
+Name: <name>
72
+Type: Ingress
73
+Targets: <name-tag>
74
+Filters: 0.0.0.0/0
75
+Protocols/ports: 19999
76
+Action: allow
77
+Priority: 1000
78
+```
79
+
80
+Read GCP's [firewall documentation](https://cloud.google.com/vpc/docs/using-firewalls) for specific instructions on how
81
+to create a new firewall rule.
82
+
83
+#### Amazon Web Services (AWS) / EC2
84
+
85
+Sign in to the [AWS console](https://console.aws.amazon.com/) and navigate to the EC2 dashboard. Click on the **Security
86
+Groups** link in the naviagtion, beneath the **Network & Security** heading. Find the Security Group your instance
87
+belongs to, and either right-click on it or click the **Actions** button above to see a dropdown menu with **Edit
88
+inbound rules**.
89
+
90
+Add a new rule with the following options:
91
+
92
+```conf
93
+Type: Custom TCP
94
+Protocol: TCP
95
+Port Range: 19999
96
+Source: Anywhere
97
+Description: Netdata
98
+```
99
+
100
+You can also choose **My IP** as the source if you prefer.
101
+
102
+Click **Save** to apply your new inbound firewall rule.
103
+
104
+#### Azure
105
+
106
+Sign in to the [Azure portal](https://portal.azure.com) and open the virtual machine running Netdata. Click on the
107
+**Networking** link beneath the **Settings** header, then click on the **Add inbound security rule** button.
108
+
109
+Add a new rule with the following options:
110
+
111
+```conf
112
+Source: Any
113
+Source port ranges: 19999
114
+Destination: Any
115
+Destination port randes: 19999
116
+Protocol: TCP
117
+Action: Allow
118
+Priority: 310
119
+Name: Netdata
120
+```
121
+
122
+Click **Add** to apply your new inbound security rule.