summaryrefslogtreecommitdiffstats
path: root/packaging/installer/UPDATE.md
diff options
context:
space:
mode:
Diffstat (limited to 'packaging/installer/UPDATE.md')
-rw-r--r--packaging/installer/UPDATE.md104
1 files changed, 79 insertions, 25 deletions
diff --git a/packaging/installer/UPDATE.md b/packaging/installer/UPDATE.md
index 8230d00c..009e970f 100644
--- a/packaging/installer/UPDATE.md
+++ b/packaging/installer/UPDATE.md
@@ -6,8 +6,9 @@ custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/instal
# Update the Netdata Agent
-By default, the Netdata Agent automatically updates with the latest nightly version. If you opted out of automatic
-updates, you need to update your Netdata Agent to the latest nightly or stable version.
+By default, the Netdata Agent automatically updates with the latest nightly or stable version depending on which
+you installed. If you opted out of automatic updates, you need to update your Netdata Agent to the latest nightly
+or stable version. You can also [enable or disable automatic updates on an existing install](#control-automatic-updates).
> 💡 Looking to reinstall the Netdata Agent to enable a feature, update an Agent that cannot update automatically, or
> troubleshoot an error during the installation process? See our [reinstallation doc](/packaging/installer/REINSTALL.md)
@@ -16,32 +17,43 @@ updates, you need to update your Netdata Agent to the latest nightly or stable v
Before you update the Netdata Agent, check to see if your Netdata Agent is already up-to-date by clicking on the update
icon in the local Agent dashboard's top navigation. This modal informs you whether your Agent needs an update or not.
-![Opening the Agent's Update modal](https://user-images.githubusercontent.com/1153921/99738428-add06780-2a87-11eb-8268-0e17b689eb3f.gif)
+The exact update method to use depends on the install type:
+
+- Installs with an install type of 'custom' usually indicate installing a third-party package through the system
+ package manager. To update these installs, you should update the package just like you would any other package
+ on your system.
+- Installs with an install type starting with `binpkg` or ending with `build` or `static` can be updated using
+ our [regular update method](#updates-for-most-systems).
+- Installs with an install type of 'oci' were created from our official Docker images, and should be updated
+ using our [Docker](#docker) update procedure.
+- macOS users should check [our update instructions for macOS](#macos).
+- Manually built installs should check [our update instructions for manual builds](#manual-installation-from-git).
## Determine which installation method you used
-If you are not sure where your Netdata config directory is, see the [configuration doc](/docs/configure/nodes.md). In
-most installations, this is `/etc/netdata`.
+Starting with netdata v1.33.0, you can use Netdata itself to determine the installation type by running:
+
+```bash
+netdata -W buildinfo | grep 'Install type:'
+```
+
+If you are using an older version of Netdata, or the above command produces no output, you can run our one-line
+installation script in dry-run mode to attempt to determine what method to use to update by running the following
+command:
-Use `cd` to navigate to the Netdata config directory, then use `ls -a` to look for a file called `.install-type`.
+```bash
+wget -O /tmp/netdata-kickstart.sh https://my-netdata.io/kickstart.sh && sh /tmp/netdata-kickstart.sh --dry-run
+```
-- If the `.install-type` file doex not exist, look for a file in the same directory called `.environment`.
- - If the `.environment` file does not exist, you probably installed Netdata using your system package manager
- and should update it the same way you would run updates on the system itself.
- - If the `.environment` file does exist, then our [regular update method](#updates-for-most-systems) should
- work correctly.
-- If the `.install-type` file does exist, check it’s contents with `cat .install-type`.
- - If the `INSTALL_TYPE` key has a value of `custom`, you probably installed Netdata using your system
- package manager and should update it the same way you would run updates on the system itself.
- - If the `INSTALL_TYPE` key has a value of `oci`, the install is from a Docker image.
- - Otherwise, the install should work with our [regular update method](#updates-for-most-systems).
+Note that if you installed Netdata using an installation prefix, you will need to add an `--install` option
+specifying that prefix to make sure it finds the existing install.
-Next, use the appropriate method to update the Netdata Agent:
+If you see a line starting with `--- Would attempt to update existing installation by running the updater script
+located at:`, then our [regular update method](#updates-for-most-systems) will work for you.
-- [Updates for most systems](#updates-for-most-systems)
-- [Docker](#docker)
-- [macOS](#macos)
-- [Manual installation from Git](#manual-installation-from-git)
+Otherwise, it should either indicate that the installation type is not supported (which probably means you either
+have a `custom` instal or built Netdata manually) or indicate that it would create a new install (which means that
+you either used a non-standard install path, or that you don’t actually have Netdata installed).
## Updates for most systems
@@ -56,9 +68,21 @@ that prefix to this command to make sure it finds Netdata.
wget -O /tmp/netdata-kickstart.sh https://my-netdata.io/kickstart.sh && sh /tmp/netdata-kickstart.sh
```
-> ❗ If the above command fails, you can [reinstall
-> Netdata](/packaging/installer/REINSTALL.md#one-line-installer-script-kickstartsh) to get the latest version. This also
-> preserves your [configuration](/docs/configure/nodes.md) in `netdata.conf` or other files.
+### Issues with older binpkg installs
+
+The above command is known not to work with binpkg type installs for stable releases with a version number of
+v1.33.1 or earlier, and nightly builds with a version number of v1.33.1-93 or earlier. If you have such a system,
+the above command will report that it found an existing install, and then issue a warning about not being able to
+find the updater script.
+
+On such installs, you can update Netdata using your distribution package manager.
+
+### If the kickstart script does not work
+
+If the above command fails, you can [reinstall
+Netdata](/packaging/installer/REINSTALL.md#one-line-installer-script-kickstartsh) to get the latest version. This
+also preserves your [configuration](/docs/configure/nodes.md) in `netdata.conf` or other files just like updating
+normally would, though you will need to specify any installation options you used originally again.
## Docker
@@ -95,6 +119,9 @@ Homebrew downloads the latest Netdata via the
[formulae](https://github.com/Homebrew/homebrew-core/blob/master/Formula/netdata.rb), ensures all dependencies are met,
and updates Netdata via reinstallation.
+If you instead installed Netdata using our one-line installation script, you can use our [regular update
+instructions](#updates-for-most-systems) to update Netdata.
+
## Manual installation from Git
If you installed [Netdata manually from Git](/packaging/installer/methods/manual.md), you can run that installer again
@@ -117,4 +144,31 @@ sudo ./netdata-installer.sh
> ⚠️ If you installed Netdata with any optional parameters, such as `--no-updates` to disable automatic updates, and
> want to retain those settings, you need to set them again during this process.
-[![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%2Finstaller%2FUPDATE&_u=MAC~&cid=5792dfd7-8dc4-476b-af31-da2fdb9f93d2&tid=UA-64295674-3)](<>)
+## Control automatic updates
+
+Starting with Netdata v1.34.0, you can easily enable or disable automatic updates on an existing installation
+using the updater script.
+
+For most installs on Linux, you can enable auto-updates with:
+
+```bash
+/usr/libexec/netdata/netdata-updater.sh --enable-auto-updates
+```
+
+and disable them with:
+
+```bash
+/usr/libexec/netdata/netdata-updater.sh --disable-auto-updates
+```
+
+For static installs, instead use:
+
+```bash
+/opt/netdata/usr/libexec/netdata/netdata-updater.sh --enable-auto-updates
+```
+
+and:
+
+```bash
+/opt/netdata/usr/libexec/netdata/netdata-updater.sh --disable-auto-updates
+```