summaryrefslogtreecommitdiffstats
path: root/packaging/installer/methods/offline.md
diff options
context:
space:
mode:
Diffstat (limited to 'packaging/installer/methods/offline.md')
-rw-r--r--packaging/installer/methods/offline.md84
1 files changed, 31 insertions, 53 deletions
diff --git a/packaging/installer/methods/offline.md b/packaging/installer/methods/offline.md
index 53390c71..5e92976e 100644
--- a/packaging/installer/methods/offline.md
+++ b/packaging/installer/methods/offline.md
@@ -6,75 +6,53 @@ custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/instal
# Install Netdata on offline systems
-The Netdata Agent installs on offline or air gapped systems with a few additional steps.
+Our kickstart install script provides support for installing the Netdata Agent on systems which do not have a
+usable internet connection by prefetching all of the required files so that they can be copied to the target system.
+Currently, we only support using static installs with this method. There are tentative plans to support building
+locally on offline systems as well, but there is currently no estimate of when this functionality may be implemented.
-By default, the `kickstart.sh` and `kickstart-static64.sh` download Netdata assets, like the precompiled binary and a
-few dependencies, using the system's internet connection, but the Agent installer can also use equivalent files already
-present on the local filesystem.
+Users who wish to use native packages on offline systems may be able to do so using whatever tooling their
+distribution already provides for offline package management (such as `apt-offline` on Debian or Ubuntu systems),
+but this is not officially supported.
-First, download the required files. If you're using `kickstart.sh`, you need the Netdata tarball, the checksums, the
-go.d plugin binary, and the go.d plugin configuration. If you're using `kickstart-static64.sh`, you need only the
-Netdata tarball and checksums.
+## Preparing the offline installation source
-Download the files you need to a system of yours that's connected to the internet. Use the commands below, or visit the
-[latest Netdata release page](https://github.com/netdata/netdata/releases/latest) and [latest go.d plugin release
-page](https://github.com/netdata/go.d.plugin/releases) to download the required files manually.
+The first step to installing Netdata on an offline system is to prepare the offline installation source. This can
+be as a regular user from any internet connected system that has the following tools available:
-**If you're using `kickstart.sh`**, use the following commands:
+- cURL or wget
+- sha256sum or shasum
+- A standard POSIX compliant shell
-```bash
-cd /tmp
-
-curl -s https://my-netdata.io/kickstart.sh > kickstart.sh
-
-# Netdata tarball
-curl -s https://api.github.com/repos/netdata/netdata/releases/latest | grep "browser_download_url.*tar.gz" | cut -d '"' -f 4 | wget -qi -
-
-# Netdata checksums
-curl -s https://api.github.com/repos/netdata/netdata/releases/latest | grep "browser_download_url.*txt" | cut -d '"' -f 4 | wget -qi -
+To prepare the offline installation source, simply run:
-# Netdata dependency handling script
-wget -q - https://raw.githubusercontent.com/netdata/netdata/master/packaging/installer/install-required-packages.sh
-
-# go.d plugin
-# For binaries for OS types and architectures not listed on [go.d releases](https://github.com/netdata/go.d.plugin/releases/latest), kindly open a github issue and we will do our best to serve your request
-export OS=$(uname -s | tr '[:upper:]' '[:lower:]') ARCH=$(uname -m | sed -e 's/i386/386/g' -e 's/i686/386/g' -e 's/x86_64/amd64/g' -e 's/aarch64/arm64/g' -e 's/armv64/arm64/g' -e 's/armv6l/arm/g' -e 's/armv7l/arm/g' -e 's/armv5tel/arm/g') && curl -s https://api.github.com/repos/netdata/go.d.plugin/releases/latest | grep "browser_download_url.*${OS}-${ARCH}.tar.gz" | cut -d '"' -f 4 | wget -qi -
-
-# go.d configuration
-curl -s https://api.github.com/repos/netdata/go.d.plugin/releases/latest | grep "browser_download_url.*config.tar.gz" | cut -d '"' -f 4 | wget -qi -
+```bash
+wget -O /tmp/netdata-kickstart.sh https://my-netdata.io/kickstart.sh && sh /tmp/netdata-kickstart.sh --prepare-offline-install-source ./netdata-offline
```
-**If you're using `kickstart-static64.sh`**, use the following commands:
+or
```bash
-cd /tmp
-
-curl -s https://my-netdata.io/kickstart-static64.sh > kickstart-static64.sh
-
-# Netdata static64 tarball
-curl -s https://api.github.com/repos/netdata/netdata/releases/latest | grep "browser_download_url.*gz.run" | cut -d '"' -f 4 | wget -qi -
-
-# Netdata checksums
-curl -s https://api.github.com/repos/netdata/netdata/releases/latest | grep "browser_download_url.*txt" | cut -d '"' -f 4 | wget -qi -
+curl https://my-netdata.io/kickstart.sh > /tmp/netdata-kickstart.sh && sh /tmp/netdata-kickstart.sh --prepare-offline-install-source ./netdata-offline
```
-Move downloaded files to the `/tmp` directory on the offline system in whichever way your defined policy allows (if
-any).
+> The exact name used for the directory does not matter, you can specify any other name you want in place of `./netdata-offline`.
-Now you can run either the `kickstart.sh` or `kickstart-static64.sh` scripts using the `--local-files` option. This
-option requires you to specify the location and names of the files you just downloaded.
+This will create a directory called `netdata-offline` in the current directory and place all the files required for an offline install in it.
-> When using `--local-files`, the `kickstart.sh` or `kickstart-static64.sh` scripts won't download any Netdata assets
-> from the internet. But, you may still need a connection to install dependencies using your system's package manager.
-> The scripts will warn you if your system doesn't have all the dependencies.
+If you want to use a specific release channel (nightly or stable), it _must_ be specified on this step using the
+apporpriate option for the kickstart script.
-```bash
-# kickstart.sh
-bash kickstart.sh --local-files /tmp/netdata-(version-number-here).tar.gz /tmp/sha256sums.txt /tmp/go.d.plugin-(version-number-here).(OS)-(architecture).tar.gz /tmp/config.tar.gz /tmp/install-required-packages.sh
+## Installing on the target system
-# kickstart-static64.sh
-bash kickstart-static64.sh --local-files /tmp/netdata-(version-number-here).gz.run /tmp/sha256sums.txt
-```
+Once you have prepared the offline install source, you need to copy the offline install source directory to the
+target system. This can be done in any manner you like, as long as filenames are not changed.
+
+After copying the files, simply run the `install.sh` script located in the
+offline install source directory. It accepts all the [same options as the kickstart
+script](/packaging/installer/methods/kickstart.md#optional-parameters-to-alter-your-installation) for further
+customization of the installation, though it will default to not enabling automatic updates (as they are not
+supported on offline installs).
## What's next?