summaryrefslogtreecommitdiffstats
path: root/packaging/installer/methods
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2022-01-26 18:05:15 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2022-01-26 18:05:42 +0000
commit112b5b91647c3dea45cc1c9bc364df526c8012f1 (patch)
tree450af925135ec664c4310a1eb28b69481094ee2a /packaging/installer/methods
parentReleasing debian version 1.32.1-2. (diff)
downloadnetdata-112b5b91647c3dea45cc1c9bc364df526c8012f1.tar.xz
netdata-112b5b91647c3dea45cc1c9bc364df526c8012f1.zip
Merging upstream version 1.33.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'packaging/installer/methods')
-rw-r--r--packaging/installer/methods/alpine.md40
-rw-r--r--packaging/installer/methods/cloud-providers.md6
-rw-r--r--packaging/installer/methods/kickstart-64.md116
-rw-r--r--packaging/installer/methods/kickstart.md124
-rw-r--r--packaging/installer/methods/macos.md16
-rw-r--r--packaging/installer/methods/manual.md17
-rw-r--r--packaging/installer/methods/packages.md46
-rw-r--r--packaging/installer/methods/source.md1
8 files changed, 105 insertions, 261 deletions
diff --git a/packaging/installer/methods/alpine.md b/packaging/installer/methods/alpine.md
deleted file mode 100644
index 51c4b0ccd..000000000
--- a/packaging/installer/methods/alpine.md
+++ /dev/null
@@ -1,40 +0,0 @@
-<!--
-title: "Install Netdata on Alpine 3.x"
-custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/alpine.md
--->
-
-# Install Netdata on Alpine 3.x
-
-Execute these commands to install Netdata in Alpine Linux 3.x:
-
-```sh
-# install required packages
-apk add alpine-sdk bash curl libuv-dev zlib-dev util-linux-dev libmnl-dev gcc make git autoconf automake pkgconfig python3 logrotate
-
-# if you plan to run node.js Netdata plugins
-apk add nodejs
-
-# download Netdata - the directory 'netdata' will be created
-git clone https://github.com/netdata/netdata.git --depth=100 --recursive
-cd netdata
-
-# build it, install it, start it
-./netdata-installer.sh
-
-# make Netdata start at boot and stop at shutdown
-cat > /etc/init.d/netdata << EOF
-#!/sbin/openrc-run
-
-name="netdata"
-command="/usr/sbin/$SVCNAME"
-
-depend() {
- need net localmount
- after firewall
-}
-EOF
-```
-
-If you have installed Netdata in another directory, you have to change the content of the `command` variable in that script.
-
-[![analytics](https://www.google-analytics.com/collect?v=1&aip=1&t=pageview&_s=1&ds=github&dr=https%3A%2F%2Fgithub.com%2Fnetdata%2Fnetdata&dl=https%3A%2F%2Fmy-netdata.io%2Fgithub%2Fpackaging%2Finstaller%2Fmethods%2Falpine&_u=MAC~&cid=5792dfd7-8dc4-476b-af31-da2fdb9f93d2&tid=UA-64295674-3)](<>)
diff --git a/packaging/installer/methods/cloud-providers.md b/packaging/installer/methods/cloud-providers.md
index 7b232f322..08c0ed9da 100644
--- a/packaging/installer/methods/cloud-providers.md
+++ b/packaging/installer/methods/cloud-providers.md
@@ -25,11 +25,7 @@ aims to document some of those steps for popular cloud providers.
## 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.
+we recommend the [`kickstart.sh` automatic installation script](kickstart.md).
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.
diff --git a/packaging/installer/methods/kickstart-64.md b/packaging/installer/methods/kickstart-64.md
deleted file mode 100644
index 176d63ad4..000000000
--- a/packaging/installer/methods/kickstart-64.md
+++ /dev/null
@@ -1,116 +0,0 @@
-<!--
-title: "Install Netdata with kickstart-static64.sh"
-description: "The kickstart-static64.sh script installs a pre-compiled static binary, including all dependencies required to connect to Netdata Cloud, with one command."
-custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/kickstart-64.md
--->
-
-# Install Netdata with kickstart-static64.sh
-
-![](https://registry.my-netdata.io/api/v1/badge.svg?chart=web_log_nginx.requests_per_url&options=unaligned&dimensions=kickstart64&group=sum&after=-3600&label=last+hour&units=installations&value_color=orange&precision=0) ![](https://registry.my-netdata.io/api/v1/badge.svg?chart=web_log_nginx.requests_per_url&options=unaligned&dimensions=kickstart64&group=sum&after=-86400&label=today&units=installations&precision=0)
-
-This page covers detailed instructions on using and configuring the installation script named `kickstart-static64.sh`.
-
-This method uses a pre-compiled static binary to install Netdata on any Intel/AMD 64bit Linux system and on any Linux
-distribution, even those with a broken or unsupported package manager.
-
-To install Netdata from a static binary package, including all dependencies required to connect to Netdata Cloud, and
-get _automatic nightly updates_, run the following as your normal user:
-
-```bash
-bash <(curl -Ss https://my-netdata.io/kickstart-static64.sh)
-```
-
-> This script installs Netdata at `/opt/netdata`.
-
-> See our [installation guide](/packaging/installer/README.md) for details about [automatic
-> updates](/packaging/installer/README.md#automatic-updates) or [nightly vs. stable
-> releases](/packaging/installer/README.md#nightly-vs-stable-releases).
-
-## What does `kickstart-static64.sh` do?
-
-The `kickstart.sh` script does the following after being downloaded and run:
-
-- Checks to see if there is an existing installation, and if there is updates that in preference to reinstalling.
-- Downloads the latest Netdata binary from the [binary-packages](https://github.com/netdata/binary-packages)
- repository. You can also run any of these `.run` files with [makeself](https://github.com/megastep/makeself).
-- Installs Netdata by running `./netdata-installer.sh` from the source tree, including any options you might have
- added.
-- Installs `netdata-updater.sh` to `cron.daily` to enable automatic updates, unless you added the `--no-updates`
- option.
-- Prints a message about whether the installation succeeded for failed for QA purposes.
-
-If your shell fails to handle the above one-liner, you can download and run the `kickstart-static64.sh` script manually.
-
-```sh
-# download the script with curl
-curl https://my-netdata.io/kickstart-static64.sh >/tmp/kickstart-static64.sh
-
-# or, download the script with wget
-wget -O /tmp/kickstart-static64.sh https://my-netdata.io/kickstart-static64.sh
-
-# run the downloaded script (any sh is fine, no need for bash)
-sh /tmp/kickstart-static64.sh
-```
-
-## Optional parameters to alter your installation
-
-The `kickstart-static64.sh` script passes all its parameters to `netdata-installer.sh`, which you can use to customize
-your installation. Here are a few important parameters:
-
-- `--dont-wait`: Enable automated installs by not prompting for permission to install any required packages.
-- `--dont-start-it`: Prevent the installer from starting Netdata automatically.
-- `--stable-channel`: Automatically update only on the release of new major versions.
-- `--nightly-channel`: Automatically update on every new nightly build.
-- `--disable-telemetry`: Opt-out of [anonymous statistics](/docs/anonymous-statistics.md) we use to make
- Netdata better.
-- `--no-updates`: Prevent automatic updates of any kind.
-- `--reinstall`: If an existing installation is detected, reinstall instead of attempting to update it. Note
- that this cannot be used to switch between installation types.
-- `--local-files`: Used for [offline installations](/packaging/installer/methods/offline.md). Pass four file paths:
- the Netdata tarball, the checksum file, the go.d plugin tarball, and the go.d plugin config tarball, to force
- kickstart run the process using those files. This option conflicts with the `--stable-channel` option. If you set
- this _and_ `--stable-channel`, Netdata will use the local files.
-
-### Connect node to Netdata Cloud during installation
-
-The `kickstart.sh` script accepts additional parameters to automatically [connect](/claim/README.md) your node to Netdata
-Cloud immediately after installation. Find the `token` and `rooms` strings by [signing in to Netdata
-Cloud](https://app.netdata.cloud/sign-in?cloudRoute=/spaces), then clicking on **Connect Nodes** in the [Spaces management
-area](https://learn.netdata.cloud/docs/cloud/spaces#manage-spaces).
-
-- `--claim-token`: The unique token associated with your Space in Netdata Cloud.
-- `--claim-rooms`: A comma-separated list of tokens for each War Room this node should appear in.
-- `--claim-proxy`: Should take the form of `socks5[h]://[user:pass@]host:ip` for a SOCKS5 proxy, or
- `http://[user:pass@]host:ip` for an HTTP(S) proxy.See [connecting through a
- proxy](/claim/README.md#connect-through-a-proxy) for details.
-- `--claim-url`: Defaults to `https://app.netdata.cloud`.
-
-For example:
-
-```bash
-bash <(curl -Ss https://my-netdata.io/kickstart-static64.sh) --claim-token=TOKEN --claim-rooms=ROOM1,ROOM2
-```
-
-## Verify script integrity
-
-To use `md5sum` to verify the integrity of the `kickstart-static64.sh` script you will download using the one-line
-command above, run the following:
-
-```bash
-[ "78461a3055aee03011a577a716e2dee5" = "$(curl -Ss https://my-netdata.io/kickstart-static64.sh | md5sum | cut -d ' ' -f 1)" ] && echo "OK, VALID" || echo "FAILED, INVALID"
-```
-
-If the script is valid, this command will return `OK, VALID`.
-
-## What's next?
-
-When you're finished with installation, check out our [single-node](/docs/quickstart/single-node.md) or
-[infrastructure](/docs/quickstart/infrastructure.md) monitoring quickstart guides based on your use case.
-
-Or, skip straight to [configuring the Netdata Agent](/docs/configure/nodes.md).
-
-Read through Netdata's [documentation](https://learn.netdata.cloud/docs), which is structured based on actions and
-solutions, to enable features like health monitoring, alarm notifications, long-term metrics storage, exporting to
-external databases, and more.
-
-[![analytics](https://www.google-analytics.com/collect?v=1&aip=1&t=pageview&_s=1&ds=github&dr=https%3A%2F%2Fgithub.com%2Fnetdata%2Fnetdata&dl=https%3A%2F%2Fmy-netdata.io%2Fgithub%2Fpackaging%2Finstaller%2Fmethods%2Fkickstart-64&_u=MAC~&cid=5792dfd7-8dc4-476b-af31-da2fdb9f93d2&tid=UA-64295674-3)](<>)
diff --git a/packaging/installer/methods/kickstart.md b/packaging/installer/methods/kickstart.md
index 7792989ee..bc7c4de95 100644
--- a/packaging/installer/methods/kickstart.md
+++ b/packaging/installer/methods/kickstart.md
@@ -11,62 +11,74 @@ custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/instal
This page covers detailed instructions on using and configuring the automatic one-line installation script named
`kickstart.sh`.
-This method is fully automatic on all Linux distributions and macOS environments. To install Netdata from source, including all dependencies
-required to connect to Netdata Cloud, and get _automatic nightly updates_, run the following as your normal user:
+The kickstart script works on all Linux distributions and macOS environments. By default, automatic nightly updates are enabled. If you are installing on macOS, make sure to check the [install documentation for macOS](packaging/installer/methods/macos) before continuing.
-**Linux**
+> If you are unsure whether you want nightly or stable releases, read the [installation guide](/packaging/installer/README.md#nightly-vs-stable-releases).
+> If you want to turn off [automatic updates](/packaging/installer/README.md#automatic-updates), use the `--no-updates` option. You can find more installation options below.
+
+To install Netdata, run the following as your normal user:
```bash
-bash <(curl -Ss https://my-netdata.io/kickstart.sh)
+wget -O ./kickstart.sh https://my-netdata.io/kickstart.sh && sh ./kickstart.sh
```
-**macOS**
+Or, if you have cURL but not wget (such as on macOS):
```bash
-bash <(curl -Ss https://my-netdata.io/kickstart.sh) --install /usr/local/
+curl https://my-netdata.io/kickstart.sh > /tmp/netdata-kickstart.sh && sh /tmp/netdata-kickstart.sh
```
-> See our [installation guide](/packaging/installer/README.md) for details about [automatic updates](/packaging/installer/README.md#automatic-updates) or
-> [nightly vs. stable releases](/packaging/installer/README.md#nightly-vs-stable-releases).
## What does `kickstart.sh` do?
-The `kickstart.sh` script does the following after being downloaded and run using `bash`:
+The `kickstart.sh` script does the following after being downloaded and run using `sh`:
-- Detects the Linux distribution and **installs the required system packages** for building Netdata. Unless you added
- the `--dont-wait` option, it will ask for your permission first.
-- Checks for an existing installation, and if found updates that instead of creating a new install.
-- Downloads the latest Netdata source tree to `/usr/src/netdata.git`.
-- Installs Netdata by running `./netdata-installer.sh` from the source tree, using any [optional
- parameters](#optional-parameters-to-alter-your-installation) you have specified.
-- Installs `netdata-updater.sh` to `cron.daily`, so your Netdata installation will be updated with new nightly
- versions, unless you override that with an [optional parameter](#optional-parameters-to-alter-your-installation).
-- Prints a message whether installation succeeded or failed for QA purposes.
+- Determines what platform you are running on.
+- Checks for an existing installation, and if found updates that instead of creating a new install.
+- Attempts to install Netdata using our [official native binary packages](#native-packages).
+- If there are no official native binary packages for your system (or installing that way failed), tries to install
+ using a [static build of Netdata](#static-builds) if one is available.
+- If no static build is available, installs required dependencies and then attempts to install by
+ [building Netdata locally](#local-builds) (by downloading the sources and building them directly).
+- Installs `netdata-updater.sh` to `cron.daily`, so your Netdata installation will be updated with new nightly
+ versions, unless you override that with an [optional parameter](#optional-parameters-to-alter-your-installation).
+- Prints a message whether installation succeeded or failed for QA purposes.
## Optional parameters to alter your installation
-The `kickstart.sh` script passes all its parameters to `netdata-installer.sh`, which you can use to customize your
-installation. Here are a few important parameters:
+The `kickstart.sh` script accepts a number of optional parameters to control how the installation process works:
+- `--non-interactive`: Don’t prompt for anything and assume yes whenever possible, overriding any automatic detection of an interactive run.
+- `--interactive`: Act as if running interactively, even if automatic detection indicates a run is non-interactive.
- `--dont-wait`: Synonym for `--non-interactive`
-- `--non-interactive`: Don’t prompt for anything and assume yes whenever possible.
+- `--dont-start-it`: Don’t auto-start the daemon after installing. This parameter is not gauranteed to work.
+- `--nightly-channel`: Use a nightly build instead of a stable release (this is the default).
+- `--stable-channel`: Use a stable release instead of a nightly build.
+- `--auto-update`: Enable automatic updates (this is the default).
- `--no-updates`: Disable automatic updates.
-- `--stable-channel`: Use a stable build instead of a nightly build.
+- `--disable-telemetry`: Disable anonymous statistics.
+- `--native-only`: Only install if native binary packages are available.
+- `--static-only`: Only install if a static build is available.
+- `--build-only`: Only install using a local build.
- `--reinstall`: If an existing install is found, reinstall instead of trying to update it in place.
-- `--dont-start-it`: Don’t auto-start the daemon after installing. This parameter is not guaranteed to work.
-- `--install`: Specify an alternative install prefix.
-- `--disable-cloud`: For local builds, don’t build any of the cloud code at all. For native packages and static builds,
+- `--reinstall-even-if-unsafe`: Even try to reinstall if we don't think we can do so safely (implies `--reinstall`).
+- `--disable-cloud`: For local builds, don’t build any of the cloud code at all. For native packages and static builds,
use runtime configuration to disable cloud support.
-- `--auto-update-type`: Specify how auto-updates are to be scheduled, overriding auto-detection.
-- `--disable-telemetry`: Disable anonymous statistics.
-- `--local-files`: Used for [offline installations](offline.md). Pass four file paths: the Netdata
- tarball, the checksum file, the go.d plugin tarball, and the go.d plugin config tarball, to force kickstart run the
- process using those files. This option conflicts with the `--stable-channel` option. If you set this _and_
- `--stable-channel`, Netdata will use the local files.
-- `all`: Ask for all dependencies in the dependency handling script.
-
- > Note: The `all` and `--local-files` parameters are scheduled to be removed in a forthcoming update.
-
+- `--require-cloud`: Only install if Netdata Cloud can be enabled. Overrides `--disable-cloud`.
+- `--install`: Specify an installation prefix for local builds (by default, we use a sane prefix based on the type of system).
+
+Additionally, the following environment variables may be used to further customize how the script runs (most users
+should not need to use special values for any of these):
+
+- `TMPDIR`: Used to specify where to put temporary files. On most systems, the default we select automatically
+ should be fine. The user running the script needs to both be able to write files to the temporary directory,
+ and run files from that location.
+- `ROOTCMD`: Used to specify a command to use to run another command with root privileges if needed. By default
+ we try to use sudo, doas, or pkexec (in that order of preference), but if you need special options for one of
+ those to work, or have a different tool to do the same thing on your system, you can specify it here.
+- `DO_NOT_TRACK`: If set to a value other than 0, behave as if `--disable-telemetry` was specified.
+- `NETDATA_INSTALLER_OPTIONS`: Specifies extra options to pass to the static installer or local build script.
+
### Connect node to Netdata Cloud during installation
The `kickstart.sh` script accepts additional parameters to automatically [connect](/claim/README.md) your node to Netdata
@@ -74,10 +86,10 @@ Cloud immediately after installation. Find the `token` and `rooms` strings by [s
Cloud](https://app.netdata.cloud/sign-in?cloudRoute=/spaces), then clicking on **Connect Nodes** in the [Spaces management
area](https://learn.netdata.cloud/docs/cloud/spaces#manage-spaces).
-- `--claim-token`: Specify a unique claiming token associated with your Space in Netdata Cloud to be used to connect to the node
+- `--claim-token`: Specify a unique claiming token associated with your Space in Netdata Cloud to be used to connect to the node
after the install.
- `--claim-rooms`: Specify a comma-separated list of tokens for each War Room this node should appear in.
-- `--claim-proxy`: Specify a proxy to use when connecting to the cloud in the form of
+- `--claim-proxy`: Specify a proxy to use when connecting to the cloud in the form of
`socks5[h]://[user:pass@]host:ip` for a SOCKS5 proxy, or `http://[user:pass@]host:ip` for an HTTP(S) proxy.
See [connecting through a proxy](/claim/README.md#connect-through-a-proxy) for details.
- `--claim-url`: Specify a URL to use when connecting to the cloud. Defaults to `https://app.netdata.cloud`.
@@ -85,10 +97,42 @@ area](https://learn.netdata.cloud/docs/cloud/spaces#manage-spaces).
For example:
```bash
-bash <(curl -Ss https://my-netdata.io/kickstart.sh) --claim-token=TOKEN --claim-rooms=ROOM1,ROOM2
+wget -O ./kickstart.sh https://my-netdata.io/kickstart.sh && sh ./kickstart.sh --claim-token=TOKEN --claim-rooms=ROOM1,ROOM2
```
-Please note that to run it you will either need to have root privileges or run it with the user that is running the agent, more details on the [Connect an agent without root privileges](#connect-an-agent-without-root-privileges) section.
+Please note that to run it you will either need to have root privileges or run it with the user that is running the agent, more details on the [Connect an agent without root privileges](/claim/README.md#connect-an-agent-without-root-privileges) section.
+
+### Native packages
+
+We publish official DEB/RPM packages for a number of common Linux distributions as part of our releases and nightly
+builds. These packages are available for 64-bit x86 systems. Depending on the distribution and release they may
+also be available for 32-bit x86, ARMv7, and AArch64 systems. If a native package is available, it will be used as the
+default installation method. This allows you to handle Netdata updates as part of your usual system update procedure.
+
+If you want to enforce the usage of native packages and have the installer return a failure if they are not available,
+you can do so by adding `--native-only` to the options you pass to the installer.
+
+### Static builds
+
+We publish pre-built static builds of Netdata for Linux systems. Currently, these are published for 64-bit x86, ARMv7,
+AArch64, and POWER8+ hardware. These static builds are able to operate in a mostly self-contained manner and only
+require a POSIX compliant shell and a supported init system. These static builds install under `/opt/netdata`. If
+you are on a platform which we provide static builds for but do not provide native packages for, a static build
+will be used by default for installation.
+
+If you want to enforce the usage of a static build and have the installer return a failure if one is not available,
+you can do so by adding `--static-only` to the options you pass to the installer.
+
+### Local builds
+
+For systems which do not have available native packages or static builds, we support building Netdata locally on
+the system it will be installed on. When using this approach, the installer will attempt to install any required
+dependencies for building Netdata, though this may not always work correctly.
+
+If you want to enforce the usage of a local build (perhaps because you require a custom installation prefix,
+which is not supported with native packages or static builds), you can do so by adding `--build-only` to the
+options you pass to the installer.
+
## Verify script integrity
@@ -96,7 +140,7 @@ To use `md5sum` to verify the integrity of the `kickstart.sh` script you will do
run the following:
```bash
-[ "7e8b449ca44e49b7074b5b9d6022cbcc" = "$(curl -Ss https://my-netdata.io/kickstart.sh | md5sum | cut -d ' ' -f 1)" ] && echo "OK, VALID" || echo "FAILED, INVALID"
+[ "dc50e88ee6e19f50dd395e1e5117a1fa" = "$(curl -Ss https://my-netdata.io/kickstart.sh | md5sum | cut -d ' ' -f 1)" ] && echo "OK, VALID" || echo "FAILED, INVALID"
```
If the script is valid, this command will return `OK, VALID`.
diff --git a/packaging/installer/methods/macos.md b/packaging/installer/methods/macos.md
index 48d53fd08..0ae1d9f23 100644
--- a/packaging/installer/methods/macos.md
+++ b/packaging/installer/methods/macos.md
@@ -6,31 +6,35 @@ custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/instal
# Install Netdata on macOS
Netdata works on macOS, albeit with some limitations. The number of charts displaying system metrics is limited, but you
-can use any of Netdata's [external plugins](../../../collectors/plugins.d/README.md) to monitor any services you might
+can use any of Netdata's [external plugins](/collectors/plugins.d/README.md) to monitor any services you might
have installed on your macOS system. You could also use a macOS system as the parent node in a [streaming
configuration](/streaming/README.md).
-We recommend you to **[install Netdata with the our automatic one-line installation script](#install-netdata-with-the-automatic-one-line-installation-script)**,
+We recommend you to **[install Netdata with the our automatic one-line installation script](#install-netdata-with-our-automatic-one-line-installation-script)**,
As an alternative you also have community-created and -maintained [**Homebrew
package**](#install-netdata-with-the-homebrew-package).
-- [Install Netdata via the Homebrew package](#install-netdata-with-the-homebrew-package)
-- [Install Netdata from source](#install-netdata-from-source)
+- [Install Netdata via the Homebrew package](#install-netdata-with-the-homebrew-package)
+- [Install Netdata from source](#install-netdata-from-source)
Being community-created and -maintained we don't guarantee that the features made available on our installation script will also be available or give support to it.
## Install Netdata with our automatic one-line installation script
-To install Netdata using our automatic [kickstart](/packaging/installer/#automatic-one-line-installation-script) script you will just need to run:
+To install Netdata using our automatic [kickstart](/packaging/installer/README.md#automatic-one-line-installation-script) script you will just need to run:
```bash
-bash <(curl -Ss https://my-netdata.io/kickstart.sh) --install /usr/local/
+wget -O /tmp/netdata-kickstart.sh https://my-netdata.io/kickstart.sh && sh /tmp/netdata-kickstart.sh
```
With this script, you are also able to connect your nodes directly to Netdata Cloud if you wish, see more details on [Connect an agent running in macOS](/claim/README.md#connect-an-agent-running-in-macos)
+This currently only supports building Netdata locally, and requires dependencies to be handled either via Homebrew
+or MacPorts (we preferentially use Homebrew if both are found). By default, this will install Netdata under
+`/usr/local/netdata`.
+
## Install Netdata with the Homebrew package
If you don't have [Homebrew](https://brew.sh/) installed already, begin with their installation script:
diff --git a/packaging/installer/methods/manual.md b/packaging/installer/methods/manual.md
index ae96dd954..73cedd24d 100644
--- a/packaging/installer/methods/manual.md
+++ b/packaging/installer/methods/manual.md
@@ -67,16 +67,16 @@ This is how to do it by hand:
```sh
# Debian / Ubuntu
-apt-get install zlib1g-dev uuid-dev libuv1-dev liblz4-dev libjudy-dev libssl-dev libelf-dev libmnl-dev gcc make git autoconf autoconf-archive autogen automake pkg-config curl python cmake
+apt-get install zlib1g-dev uuid-dev libuv1-dev liblz4-dev libjudy-dev libssl-dev libelf-dev libmnl-dev libprotobuf-dev protobuf-compiler gcc g++ make git autoconf autoconf-archive autogen automake pkg-config curl python cmake
# Fedora
-dnf install zlib-devel libuuid-devel libuv-devel lz4-devel Judy-devel openssl-devel elfutils-libelf-devel libmnl-devel gcc make git autoconf autoconf-archive autogen automake pkgconfig curl findutils python cmake
+dnf install zlib-devel libuuid-devel libuv-devel lz4-devel Judy-devel openssl-devel elfutils-libelf-devel libmnl-devel protobuf-devel protobuf-compiler gcc gcc-c++ make git autoconf autoconf-archive autogen automake pkgconfig curl findutils python cmake
# CentOS / Red Hat Enterprise Linux
-yum install autoconf automake curl gcc git libmnl-devel libuuid-devel openssl-devel libuv-devel lz4-devel Judy-devel elfutils-libelf-devel make nc pkgconfig python zlib-devel cmake
+yum install autoconf automake curl gcc gcc-c++ git libmnl-devel libuuid-devel openssl-devel libuv-devel lz4-devel Judy-devel elfutils-libelf-devel protobuf protobuf-devel protobuf-compiler make nc pkgconfig python zlib-devel cmake
# openSUSE
-zypper install zlib-devel libuuid-devel libuv-devel liblz4-devel judy-devel libopenssl-devel libelf-devel libmnl-devel gcc make git autoconf autoconf-archive autogen automake pkgconfig curl findutils python cmake
+zypper install zlib-devel libuuid-devel libuv-devel liblz4-devel judy-devel libopenssl-devel libelf-devel libmnl-devel protobuf-devel gcc gcc-c++ make git autoconf autoconf-archive autogen automake pkgconfig curl findutils python cmake
```
Once Netdata is compiled, to run it the following packages are required (already installed using the above commands):
@@ -124,10 +124,11 @@ Netdata DB engine can be enabled when these are installed (they are optional):
Netdata Cloud support may require the following packages to be installed:
-| package | description
-|:--------:| -----------------------
-| `cmake` | Needed at build time if you aren't using your distribution's version of libwebsockets or are building on a platform other than Linux
-| `openssl` | Needed to secure communications with the Netdata Cloud
+| package | description |
+|:---------:|--------------------------------------------------------------------------------------------------------------------------------------|
+| `cmake` | Needed at build time if you aren't using your distribution's version of libwebsockets or are building on a platform other than Linux |
+| `openssl` | Needed to secure communications with the Netdata Cloud |
+| `protobuf`| Used for the new Cloud<->Agent binary protocol
*Netdata will greatly benefit if you have the above packages installed, but it will still work without them.*
diff --git a/packaging/installer/methods/packages.md b/packaging/installer/methods/packages.md
deleted file mode 100644
index 20dbaf060..000000000
--- a/packaging/installer/methods/packages.md
+++ /dev/null
@@ -1,46 +0,0 @@
-<!--
-title: "Install Netdata with .deb/.rpm packages"
-description: "Install the Netdata Agent with Linux packages that support Ubuntu, Debian, Fedora, RHEL, CentOS, openSUSE, and more."
-custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/packages.md
--->
-
-# Install Netdata with .deb/.rpm packages
-
-Netdata provides our own flavour of binary packages for the most common operating systems that use with `.deb` and
-`.rpm` packaging formats.
-
-We provide two separate repositories, one for our stable releases and one for our nightly releases. Visit the repository
-pages and follow the quick set-up instructions to get started.
-
-1. Stable releases: Our stable production releases are hosted in the
- [netdata/netdata](https://packagecloud.io/netdata/netdata) repository on packagecloud
-2. Nightly releases: Our latest releases are hosted in the
- [netdata/netdata-edge](https://packagecloud.io/netdata/netdata-edge) repository on packagecloud
-
-## Using caching proxies with packagecloud repositories
-
-packagecloud only provides HTTPS access to repositories they host, which means in turn that Netdata's package
-repositories are only accessible via HTTPS. This is known to cause issues with some setups that use a caching proxy for
-package downloads.
-
-If you are using such a setup, there are a couple of ways to work around this:
-
-- Configure your proxy to automatically pass through HTTPS connections without caching them. This is the simplest
- solution, but means that downloads of Netdata packages will not be cached.
-- Mirror the repository locally on your proxy system, and use that mirror when installing on other systems. This
- requires more setup and more disk space on the caching host, but it lets you cache the packages locally.
-- Some specific caching proxies may have alternative configuration options to deal with these issues. Find
- such options in their documentation.
-
-## What's next?
-
-When you're finished with installation, check out our [single-node](/docs/quickstart/single-node.md) or
-[infrastructure](/docs/quickstart/infrastructure.md) monitoring quickstart guides based on your use case.
-
-Or, skip straight to [configuring the Netdata Agent](/docs/configure/nodes.md).
-
-Read through Netdata's [documentation](https://learn.netdata.cloud/docs), which is structured based on actions and
-solutions, to enable features like health monitoring, alarm notifications, long-term metrics storage, exporting to
-external databases, and more.
-
-[![analytics](https://www.google-analytics.com/collect?v=1&aip=1&t=pageview&_s=1&ds=github&dr=https%3A%2F%2Fgithub.com%2Fnetdata%2Fnetdata&dl=https%3A%2F%2Fmy-netdata.io%2Fgithub%2Fpackages%2Finstaller%2Fmethods%2Fpackages&_u=MAC~&cid=5792dfd7-8dc4-476b-af31-da2fdb9f93d2&tid=UA-64295674-3)]()
diff --git a/packaging/installer/methods/source.md b/packaging/installer/methods/source.md
index ba29a188d..5345a1a4c 100644
--- a/packaging/installer/methods/source.md
+++ b/packaging/installer/methods/source.md
@@ -38,6 +38,7 @@ Additionally, the following build time features require additional dependencies:
- A recent version of CMake
- OpenSSL 1.0.2 or newer _or_ LibreSSL 3.0.0 or newer.
- JSON-C (may be provided by the user as shown below, or by the system)
+ - protobuf (Google Protocol Buffers) and protoc compiler
## Preparing the source tree