@cryptotaxi247 / netdata-1 / commits / a3164eace

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.