diff options
author | Joel Hans <joel@netdata.cloud> | 2020-01-30 14:01:47 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-01-30 14:01:47 -0700 |
commit | a3164eacef7d86a2543eecd46c54773e54d34f80 (patch) | |
tree | 07905f1a69f151aea6c2fa484f7c9565557891d8 | |
parent | 5ecdecce05a1a0dd2317efa0b426331290f49635 (diff) |
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
-rwxr-xr-x | docs/generator/buildyaml.sh | 1 | ||||
-rw-r--r-- | docs/generator/custom/css/netdata.css | 11 | ||||
-rw-r--r-- | packaging/installer/README.md | 72 | ||||
-rw-r--r-- | packaging/installer/methods/cloud-providers.md | 122 |
4 files changed, 191 insertions, 15 deletions
diff --git a/docs/generator/buildyaml.sh b/docs/generator/buildyaml.sh index b1d3d13f63..d382233ea8 100755 --- a/docs/generator/buildyaml.sh +++ b/docs/generator/buildyaml.sh @@ -152,6 +152,7 @@ echo -ne " - 'docs/what-is-netdata.md' - 'packaging/installer/methods/kickstart.md' - 'packaging/installer/methods/kickstart-64.md' - 'packaging/docker/README.md' + - 'packaging/installer/methods/cloud-providers.md' - 'packaging/installer/methods/macos.md' - 'packaging/installer/methods/freebsd.md' - 'packaging/installer/methods/manual.md' diff --git a/docs/generator/custom/css/netdata.css b/docs/generator/custom/css/netdata.css index 63e78a2da5..7b1c2e2ef9 100644 --- a/docs/generator/custom/css/netdata.css +++ b/docs/generator/custom/css/netdata.css @@ -453,16 +453,23 @@ html [data-md-color-primary="blue-grey"] .md-nav--primary .md-nav__title--site { } } -.md-typeset .grid-item img { +.item-title { + display: flex; + flex-flow: row nowrap; + align-items: center; +} + +.md-typeset .item-title img { border: 0; display: inline; margin: 0 1rem 0 0; - max-height: 52px; + max-height: 64px; vertical-align: middle; } .grid-item h3 { margin-top: 0; + margin-bottom: 0; } .grid-item ul { diff --git a/packaging/installer/README.md b/packaging/installer/README.md index 3a419db3ac..8b6bc92174 100644 --- a/packaging/installer/README.md +++ b/packaging/installer/README.md @@ -58,75 +58,121 @@ operating systems. <div class="installer-grid"> <div class="grid-item"> - <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> + <div class="item-title"> + <img src="https://user-images.githubusercontent.com/1153921/73030393-c5eb4200-3df6-11ea-9942-436caa3ed100.png" alt="Install with .deb or .rpm packages" /> + <h3>Packages</h3> + </div> <ul> <li><a href="methods/packages/">Install with <code>.deb</code> or <code>.rpm</code> packages</a></li> </ul> </div> <div class="grid-item"> - <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> + <div class="item-title"> + <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" /> + <h3>Static binary</h3> + </div> <ul> <li><a href="methods/kickstart-64/">Install with a pre-built static binary for 64-bit systems</a></li> </ul> </div> <div class="grid-item"> - <h3><img src="https://user-images.githubusercontent.com/1153921/71905478-e36ea980-3170-11ea-94f7-950328ad1bdf.png" alt="Install Netdata on Docker" />Docker</h3> + <div class="item-title"> + <img src="https://user-images.githubusercontent.com/1153921/71905478-e36ea980-3170-11ea-94f7-950328ad1bdf.png" alt="Install Netdata on Docker" /> + <h3>Docker</h3> + </div> <ul> <li><a href="../docker/#run-netdata-with-the-docker-command">Using the <code>docker</code> command</a></li> - <li><a href="../docker/#run-netdata-with-the-docker-command">Using a `docker-compose.yml` file</a></li> + <li><a href="../docker/#run-netdata-with-the-docker-command">Using a <code>docker-compose.yml</code> file</a></li> </ul> </div> <div class="grid-item"> - <h3><img src="https://user-images.githubusercontent.com/1153921/71960868-c1236d00-31fe-11ea-859e-902d36233e38.png" alt="Install Netdata on Kubernetes" />Kubernetes</h3> + <div class="item-title"> + <img src="https://user-images.githubusercontent.com/1153921/71960868-c1236d00-31fe-11ea-859e-902d36233e38.png" alt="Install Netdata on Kubernetes" /> + <h3>Kubernetes</h3> + </div> <ul> <li><a href="https://github.com/netdata/helmchart#netdata-helm-chart-for-kubernetes-deployments">Using a Helm chart</a></li> </ul> </div> <div class="grid-item"> - <h3><img src="https://user-images.githubusercontent.com/1153921/71961672-8cb0b080-3200-11ea-84f8-9139c7434110.png" alt="Install Netdata on macOS" />macOS</h3> + <div class="item-title"> + <img src="https://user-images.githubusercontent.com/1153921/73030393-c5eb4200-3df6-11ea-9942-436caa3ed100.png" alt="Install Netdata on cloud providers (GCP/AWS/Azure)" /> + <h3>Cloud providers (GCP/AWS/Azure)</h3> + </div> + <ul> + <li><a href="methods/cloud-providers/#recommended-installation-method-for-cloud-providers">Recommended installation methods for cloud providers</a></li> + <li><a href="methods/cloud-providers/#post-installation-configuration">Post-installation configuration</a></li> + </ul> + </div> + <div class="grid-item"> + <div class="item-title"> + <img src="https://user-images.githubusercontent.com/1153921/71961672-8cb0b080-3200-11ea-84f8-9139c7434110.png" alt="Install Netdata on macOS" /> + <h3>macOS</h3> + </div> <ul> <li><a href="methods/macos/#with-homebrew">Homebrew</a></li> <li><a href="methods/macos/#from-source">Manual installation from source</a></li> </ul> </div> <div class="grid-item"> - <h3><img src="https://user-images.githubusercontent.com/1153921/71961245-a3a2d300-31ff-11ea-89bf-b90e7242d9a5.png" alt="Install Netdata on FreeBSD" />FreeBSD</h3> + <div class="item-title"> + <img src="https://user-images.githubusercontent.com/1153921/71961245-a3a2d300-31ff-11ea-89bf-b90e7242d9a5.png" alt="Install Netdata on FreeBSD" /> + <h3>FreeBSD</h3> + </div> <ul> <li><a href="methods/freebsd/">Installation on FreeBSD</a></li> </ul> </div> <div class="grid-item"> - <h3><img src="https://user-images.githubusercontent.com/1153921/73032280-f1246000-3dfb-11ea-870d-7fbddd9a6f76.png" alt="Install manually from source" />Manual</h3> + <div class="item-title"> + <img src="https://user-images.githubusercontent.com/1153921/73032280-f1246000-3dfb-11ea-870d-7fbddd9a6f76.png" alt="Install manually from source" /> + <h3>Manual</h3> + </div> <ul> <li><a href="methods/manual/">Install manually from source</a></li> </ul> </div> <div class="grid-item"> - <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> + <div class="item-title"> + <img src="https://user-images.githubusercontent.com/1153921/73032239-c89c6600-3dfb-11ea-8224-c8a9f7a50c53.png" alt="Install on offline/air-gapped systems" /> + <h3>Offline</h3> + </div> <ul> <li><a href="methods/offline/">Install on offline/air-gapped systems</a></li> </ul> </div> <div class="grid-item"> - <h3><img src="https://user-images.githubusercontent.com/1153921/71961918-13fe2400-3201-11ea-9a91-fe6f5b27df0c.png" alt="Install Netdata on PFSense" />PFSense</h3> + <div class="item-title"> + <img src="https://user-images.githubusercontent.com/1153921/71961918-13fe2400-3201-11ea-9a91-fe6f5b27df0c.png" alt="Install Netdata on PFSense" /> + <h3>PFSense</h3> + </div> <ul> <li><a href="methods/pfsense/">Installation on PFSense</a></li> </ul> </div> <div class="grid-item"> - <h3><img src="https://user-images.githubusercontent.com/1153921/71962148-853dd700-3201-11ea-9a09-16fdb39e9ee4.png" alt="Install Netdata on Synology" />Synology</h3> + <div class="item-title"> + <img src="https://user-images.githubusercontent.com/1153921/71962148-853dd700-3201-11ea-9a09-16fdb39e9ee4.png" alt="Install Netdata on Synology" /> + <h3>Synology</h3> + </div> <ul> <li><a href="methods/synology/">Installation on Synology</a></li> </ul> </div> <div class="grid-item"> - <h3><img src="https://user-images.githubusercontent.com/1153921/72070923-543dcf00-32f3-11ea-8053-d61bc96529b5.png" alt="Install Netdata on Alpine FreeNAS" />FreeNAS</h3> + <div class="item-title"> + <img src="https://user-images.githubusercontent.com/1153921/72070923-543dcf00-32f3-11ea-8053-d61bc96529b5.png" alt="Install Netdata on Alpine FreeNAS" /> + <h3>FreeNAS</h3> + </div> <ul> <li><a href="methods/freenas/">Manual installation on FreeNAS</a></li> </ul> </div> <div class="grid-item"> - <h3><img src="https://user-images.githubusercontent.com/1153921/72070921-53a53880-32f3-11ea-80f1-7d00cd8a7906.png" alt="Install Netdata on Alpine Linux" />Alpine</h3> + <div class="item-title"> + <img src="https://user-images.githubusercontent.com/1153921/72070921-53a53880-32f3-11ea-80f1-7d00cd8a7906.png" alt="Install Netdata on Alpine Linux" /> + <h3>Alpine</h3> + </div> <ul> <li><a href="methods/alpine/">Manual installation on Alpine</a></li> </ul> diff --git a/packaging/installer/methods/cloud-providers.md b/packaging/installer/methods/cloud-providers.md new file mode 100644 index 0000000000..3d83a22a35 --- /dev/null +++ b/packaging/installer/methods/cloud-providers.md @@ -0,0 +1,122 @@ +# Install Netdata on cloud providers + +Netdata is fully compatible with popular cloud providers like Google Cloud Platform (GCP), Amazon Web Services (AWS), +Azure, and others. You can install Netdata on cloud instances to monitor the apps/services running there, or use +multiple instances in a [master/slave streaming](../../../streaming/README.md) configuration. + +In some cases, using Netdata on these cloud providers requires unique installation or configuration steps. This page +aims to document some of those steps for popular cloud providers. + +> This document is a work-in-progress! If you find new issues specific to a cloud provider, or would like to help +> clarify the correct workaround, please [create an +> issue](https://github.com/netdata/netdata/issues/new?labels=feature+request%2C+needs+triage&template=feature_request.md) +> with your process and instructions on using the provider's interface to complete the workaround. + +- [Recommended installation methods for cloud providers](#recommended-installation-methods-for-cloud-providers) +- [Post-installation configuration](#post-installation-configuration) + - [Add a firewall rule to access Netdata's dashboard](#add-a-firewall-rule-to-access-netdatas-dashboard) + +## Recommended installation methods for cloud providers + +The best installation method depends on the instance's operating system, distribution, and version. For Linux instances, +we recommend either the [`kickstart.sh` automatic installation script](kickstart.md) or [.deb/.rpm +packages](packages.md). + +To see the full list of approved methods for each operating system/version we support, see our [distribution +matrix](../../DISTRIBUTIONS.md). That table will guide you to the various supported methods for your cloud instance. + +If you have issues with Netdata after installation, look to the sections below to find the issue you're experiencing, +followed by the solution for your provider. + +## Post-installation configuration + +Some cloud providers require you take additional steps to properly configure your instance or its networking to access +all of Netdata's features. + +### Add a firewall rule to access Netdata's dashboard + +If you cannot access Netdata's dashboard on your cloud instance via `http://HOST:19999`, and instead get an error page +from your browser that says, "This site can't be reached" (Chrome) or "Unable to connect" (Firefox), you may need to +configure your cloud provider's firewall. + +Cloud providers often create network-level firewalls that run separately from the instance itself. Both AWS and Google +Cloud Platform calls them Virtual Private Cloud (VPC) networks. These firewalls can apply even if you've disabled +firewalls on the instance itself. Because you can modify these firewalls only via the cloud provider's web interface, +it's easy to overlook them when trying to configure and access Netdata's dashboard. + +You can often confirm a firewall issue by querying the dashboard while connected to the instance via SSH: `curl +http://localhost:19999/api/v1/info`. If you see JSON output, Netdata is running properly. If you try the same `curl` +command from a remote system, and it fails, it's likely that a firewall is blocking your requests. + +Another option is to put Netdata behind web server, which will proxy requests through standard HTTP/HTTPS ports +(80/443), which are likely already open on your instance. We have a number of guides available: + +- [Apache](../../../docs/Running-behind-apache.md) +- [Nginx](../../../docs/Running-behind-nginx.md) +- [Caddy](../../../docs/Running-behind-caddy.md) +- [HAProxy](../../../docs/Running-behind-haproxy.md) +- [lighttpd](../../../docs/Running-behind-lighttpd.md) + +The next few sections outline how to add firewall rules to GCP, AWS, and Azure instances. + +#### Google Cloud Platform (GCP) + +To add a firewall rule, go to the [Firewall rules page](https://console.cloud.google.com/networking/firewalls/list) and +click **Create firewall rule**. + +The following configuration has previously worked for Netdata running on GCP instances +([see #7786](https://github.com/netdata/netdata/issues/7786)): + +```conf +Name: <name> +Type: Ingress +Targets: <name-tag> +Filters: 0.0.0.0/0 +Protocols/ports: 19999 +Action: allow +Priority: 1000 +``` + +Read GCP's [firewall documentation](https://cloud.google.com/vpc/docs/using-firewalls) for specific instructions on how +to create a new firewall rule. + +#### Amazon Web Services (AWS) / EC2 + +Sign in to the [AWS console](https://console.aws.amazon.com/) and navigate to the EC2 dashboard. Click on the **Security +Groups** link in the naviagtion, beneath the **Network & Security** heading. Find the Security Group your instance +belongs to, and either right-click on it or click the **Actions** button above to see a dropdown menu with **Edit +inbound rules**. + +Add a new rule with the following options: + +```conf +Type: Custom TCP +Protocol: TCP +Port Range: 19999 +Source: Anywhere +Description: Netdata +``` + +You can also choose **My IP** as the source if you prefer. + +Click **Save** to apply your new inbound firewall rule. + +#### Azure + +Sign in to the [Azure portal](https://portal.azure.com) and open the virtual machine running Netdata. Click on the +**Networking** link beneath the **Settings** header, then click on the **Add inbound security rule** button. + +Add a new rule with the following options: + +```conf +Source: Any +Source port ranges: 19999 +Destination: Any +Destination port randes: 19999 +Protocol: TCP +Action: Allow +Priority: 310 +Name: Netdata +``` + +Click **Add** to apply your new inbound security rule. |