diff options
author | Austin S. Hemmelgarn <austin@netdata.cloud> | 2022-01-18 08:30:21 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-18 08:30:21 -0500 |
commit | 486ee8a1a3d8538c01cb4e705a4304643122f59b (patch) | |
tree | c190838660cfadc4d2e19750c661dfe6b8500245 | |
parent | dbab740e52964c7f356f7fe6a3b200afcace508f (diff) |
Initial release of new kickstart script. (#11764)
* Replace existing kickstart scripts with kickstart-ng.
This change looks more complicated than it actually is due to git not
sanely recognizing the rename.
* Fix CI for new kickstart script.
* Initial revision of install documentation.
* Further documentation updates.
* Even more documentation updates.
* Fix telemetry event handling if neither curl nor wget are installed.
* Remove dependence on `pgrep` for claiming.
* Fix fatal error message handling.
* Formally outline our support policy.
* Updates to platform support doc.
* Platform support doc updates.
* Minor documentation updates.
* Remove accidentally commited file from rebase process.
* Apply suggestions from code review, part 1.
Co-authored-by: Tina Luedtke <kickoke@users.noreply.github.com>
* Made one-line installer consistent.
* Apply suggestions from code review, part 2.
* Update architecture list for static builds.
* Restructure platform support doc so that things are clearer.
Especially for cases of linking directly to the section on a specific
support category.
* Apply suggestions from code review, part 3.
Co-authored-by: Tina Luedtke <kickoke@users.noreply.github.com>
* Apply suggestions from code review, part 4
Co-authored-by: Tina Luedtke <kickoke@users.noreply.github.com>
* Further updates to platform support document.
* Further documentation updates.
* Rework update documentation.
Co-authored-by: Tina Luedtke <kickoke@users.noreply.github.com>
-rwxr-xr-x | .github/scripts/run-updater-check.sh | 2 | ||||
-rw-r--r-- | .github/workflows/build.yml | 4 | ||||
-rw-r--r-- | packaging/DISTRIBUTIONS.md | 258 | ||||
-rw-r--r-- | packaging/PLATFORM_SUPPORT.md | 175 | ||||
-rw-r--r-- | packaging/installer/README.md | 49 | ||||
-rw-r--r-- | packaging/installer/REINSTALL.md | 34 | ||||
-rw-r--r-- | packaging/installer/UPDATE.md | 69 | ||||
l---------[-rw-r--r--] | packaging/installer/kickstart-ng.sh | 1363 | ||||
l---------[-rwxr-xr-x] | packaging/installer/kickstart-static64.sh | 440 | ||||
-rwxr-xr-x | packaging/installer/kickstart.sh | 1495 | ||||
-rw-r--r-- | packaging/installer/methods/alpine.md | 40 | ||||
-rw-r--r-- | packaging/installer/methods/cloud-providers.md | 6 | ||||
-rw-r--r-- | packaging/installer/methods/kickstart-64.md | 116 | ||||
-rw-r--r-- | packaging/installer/methods/kickstart.md | 122 | ||||
-rw-r--r-- | packaging/installer/methods/macos.md | 10 | ||||
-rw-r--r-- | packaging/installer/methods/packages.md | 46 | ||||
-rwxr-xr-x | tests/installer/checksums.sh | 1 |
17 files changed, 1414 insertions, 2816 deletions
diff --git a/.github/scripts/run-updater-check.sh b/.github/scripts/run-updater-check.sh index e6969a2d13..264ed616a7 100755 --- a/.github/scripts/run-updater-check.sh +++ b/.github/scripts/run-updater-check.sh @@ -1,7 +1,7 @@ #!/bin/sh echo ">>> Installing Netdata..." -/netdata/packaging/installer/kickstart.sh --dont-wait --disable-telemetry || exit 1 +/netdata/packaging/installer/kickstart.sh --dont-wait --build-only --disable-telemetry || exit 1 echo ">>> Updating Netdata..." export NETDATA_NIGHTLIES_BASEURL="http://localhost:8080/artifacts/" # Pull the tarball from the local web server. /netdata/packaging/installer/netdata-updater.sh --not-running-from-cron --no-updater-self-update || exit 1 diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f178b993e0..ad6b3e7300 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -386,7 +386,7 @@ jobs: - name: Verify that artifacts work with installer env: NETDATA_TARBALL_BASEURL: http://localhost:8080/artifacts - run: packaging/installer/kickstart.sh --dont-start-it --disable-telemetry --dont-wait + run: packaging/installer/kickstart.sh --build-only --dont-start-it --disable-telemetry --dont-wait - name: Failure Notification uses: rtCamp/action-slack-notify@v2 env: @@ -427,7 +427,7 @@ jobs: - name: Verify that artifacts work with installer env: NETDATA_TARBALL_BASEURL: http://localhost:8080/artifacts - run: packaging/installer/kickstart-static64.sh --dont-start-it --disable-telemetry --dont-wait + run: packaging/installer/kickstart.sh --static-only --dont-start-it --disable-telemetry - name: Failure Notification uses: rtCamp/action-slack-notify@v2 env: diff --git a/packaging/DISTRIBUTIONS.md b/packaging/DISTRIBUTIONS.md deleted file mode 100644 index f1c5fcf267..0000000000 --- a/packaging/DISTRIBUTIONS.md +++ /dev/null @@ -1,258 +0,0 @@ -<!-- -title: "Netdata distribution support matrix" -custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/DISTRIBUTIONS.md ---> - -# Netdata distribution support matrix - -![](https://raw.githubusercontent.com/netdata/netdata/master/web/gui/images/packaging-beta-tag.svg?sanitize=true) - -In the following table we've listed Netdata's official supported operating systems. We detail the distributions, flavors, and the level of support Netdata is currently capable to provide. - -The following table is a work in progress. We have concluded on the list of distributions -that we currently supporting and we are working on documenting our current state so that our users -have complete visibility over the range of support. - -**Legend**: - -- **Version**: Operating system version supported -- **Family**: The family that the OS belongs to -- **CI: Smoke Testing**: Smoke testing has been implemented on our CI, to prevent broken code reaching our users -- **CI: Testing**: Testing has been implemented to prevent broken or problematic code reaching our users -- **CD**: Continuous deployment support has been fully enabled for this operating system -- **.DEB**: We provide a `.DEB` package for that particular operating system -- **.RPM**: We provide a `.RPM` package for that particular operating system -- **Installer**: Running netdata from source, using our installer, is working for this operating system -- **Kickstart**: Kickstart installation is working fine for this operating system -- **Kickstart64**: Kickstart static64 installation is working fine for this operating system -- **Community**: This operating system receives community support, such as packaging maintainers, contributors, and so on - -## AMD64 Architecture - -| Version | Family | CI: Smoke testing | CI: Testing | CD | .DEB | .RPM | Installer | Kickstart | Kickstart64 | Community | -|:---------------------------:|:--------:|:-----------------:|:-----------:|:--------:|:--------:|:--------:|:---------:|:---------:|:-----------:|:---------:| -| 14.04.6 LTS (Trusty Tahr) | Ubuntu | ✗ | ? | ✗ | ✗ | N/A | ✔ | ✔ | ✔ | ? | -| 16.04.6 LTS (Xenial Xerus) | Ubuntu | ✔ | ? | ✔ | ✔ | N/A | ✔ | ✔ | ✔ | ? | -| 18.04.2 LTS (Bionic Beaver) | Ubuntu | ✔ | ? | ✔ | ✔ | N/A | ✔ | ✔ | ✔ | ? | -| 19.10 (Eoan Ermine) Latest | Ubuntu | ✔ | ? | ✔ | ✔ | N/A | ✔ | ✔ | ✔ | ? | -| Debian 8 (Jessie) | Debian | ✔ | ? | ✔ | ✔ | N/A | ✔ | ✔ | ✔ | ? | -| Debian 9 (Stretch) | Debian | ✔ | ? | ✔ | ✔ | N/A | ✔ | ✔ | ✔ | ? | -| Debian 10 (Buster) | Debian | ✔ | ? | ✔ | ✔ | N/A | ✔ | ✔ | ✔ | ? | -| Versions 6.x | RHEL | ✗ | ? | ✗ | N/A | ✔ | ✔ | ✔ | ✔ | ? | -| Versions 7.x | RHEL | ✔ | ? | ✔ | N/A | ✔ | ✔ | ✔ | ✔ | ? | -| Versions 8.x | RHEL | ? | ? | ? | N/A | ✗ | ? | ? | ✔ | ? | -| Fedora 30 | Fedora | ✔ | ? | ✔ | N/A | ✔ | ✔ | ✔ | ✔ | ? | -| Fedora 31 | Fedora | ✔ | ? | ✔ | N/A | ✔ | ✔ | ✔ | ✔ | ? | -| CentOS 6.x | Cent OS | ✗ | ? | ✗ | N/A | ✗ | ✔ | ✔ | ✔ | ? | -| CentOS 7.x | Cent OS | ✔ | ? | ✔ | N/A | ✔ | ✔ | ✔ | ✔ | ? | -| CentOS 8.x | Cent OS | ? | ? | ? | N/A | ✗ | ? | ? | ✔ | ? | -| openSUSE Leap 15.1 | openSUSE | ✔ | ? | ✔ | N/A | ✔ | ✔ | ✔ | ✔ | ? | -| openSUSE Tumbleweed | openSUSE | ✔ | ? | ? | N/A | ✗ | ✔ | ? | ✔ | ? | -| SLES 11 | SLES | ? | ? | ? | N/A | ✗ | ? | ? | ✔ | ? | -| SLES 12 | SLES | ? | ? | ? | N/A | ✗ | ? | ? | ✔ | ? | -| SLES 15 | SLES | ? | ? | ? | N/A | ✗ | ? | ? | ✔ | ? | -| Alpine | Alpine | ✔ | ? | ✗ | N/A | N/A | ✔ | ✔ | ✔ | ? | -| Arch Linux (latest) | Arch | ✔ | ? | ✗ | N/A | ✗ | ✔ | ✔ | ✔ | ? | -| Gentoo Linux (latest) | Gentoo | ? | ? | ✗ | N/A | N/A | ✔ | ✔ | ✔ | ✔ | -| All other linux | Other | ✗ | ? | ? | ✗ | ✗ | ? | ? | ✔ | ? | - -## x86 Architecture - -| Version | Family | CI: Smoke testing | CI: Testing | CD | .DEB | .RPM | Installer | Kickstart | Kickstart64 | Community | -|:---------------------------:|:--------:|:-----------------:|:-----------:|:--------:|:--------:|:--------:|:---------:|:---------:|:-----------:|:---------:| -| 14.04.6 LTS (Trusty Tahr) | Ubuntu | ✗ | ? | ✗ | ✗ | N/A | ✔ | ✔ | ✗ | ? | -| 16.04.6 LTS (Xenial Xerus) | Ubuntu | ✗ | ? | ✔ | ✔ | N/A | ✔ | ✔ | ✗ | ? | -| 18.04.2 LTS (Bionic Beaver) | Ubuntu | ✗ | ? | ✔ | ✔ | N/A | ✔ | ✔ | ✗ | ? | -| 19.10 (Enoan Ermine) Latest | Ubuntu | ✗ | ? | ✔ | ✔ | N/A | ✔ | ✗ | ✔ | ? | -| Debian 8 (Jessie) | Debian | ✗ | ? | ✔ | ✔ | N/A | ✔ | ✔ | ✗ | ? | -| Debian 9 (Stretch) | Debian | ✗ | ? | ✔ | ✔ | N/A | ✔ | ✔ | ✗ | ? | -| Debian 10 (Buster) | Debian | ✗ | ? | ✔ | ✔ | N/A | ✔ | ✔ | ✗ | ? | -| Versions 6.x | RHEL | ✗ | ? | ✗ | N/A | ✔ | ✔ | ✔ | ✗ | ? | -| Versions 7.x | RHEL | ✗ | ? | ✔ | N/A | ✗ | ✔ | ✔ | ✗ | ? | -| Versions 8.x | RHEL | ? | ? | ? | N/A | ✗ | ? | ? | ✔ | ? | -| Fedora 30 | Fedora | ✗ | ? | ✔ | N/A | ✗ | ✔ | ✔ | ✗ | ? | -| Fedora 31 | Fedora | ✗ | ? | ✗ | N/A | ✗ | ✗ | ✗ | ✗ | ? | -| CentOS 6.x | Cent OS | ✗ | ? | ✗ | N/A | ✗ | ✔ | ✔ | ✗ | ? | -| CentOS 7.x | Cent OS | ✗ | ? | ✔ | N/A | ✗ | ✔ | ✔ | ✗ | ? | -| CentOS 8.x | Cent OS | ? | ? | ? | N/A | ✗ | ? | ? | ✔ | ? | -| openSUSE Leap 15.1 | openSUSE | ✗ | ? | ✔ | N/A | ✗ | ✔ | ✔ | ✗ | ? | -| openSUSE Tumbleweed | openSUSE | ✗ | ? | ? | N/A | ✗ | ✔ | ? | ✗ | ? | -| SLES 11 | SLES | ? | ? | ? | N/A | ✗ | ? | ? | ✗ | ? | -| SLES 12 | SLES | ? | ? | ? | N/A | ✗ | ? | ? | ✗ | ? | -| SLES 15 | SLES | ? | ? | ? | N/A | ✗ | ? | ? | ✗ | ? | -| Alpine | Alpine | ✗ | ? | ✗ | N/A | N/A | ✔ | ✔ | ✗ | ? | -| Arch Linux (latest) | Arch | ✗ | ? | ✗ | N/A | ✗ | ✔ | ✔ | ✗ | ? | -| Gentoo Linux (latest) | Gentoo | ? | ? | ✗ | N/A | N/A | ✔ | ✔ | ✔ | ✔ | -| All other linux | Other | ✗ | ? | ? | ✗ | ✗ | ? | ? | ✗ | ? | - -## Supported functionalities across different distribution channels - -On the following section we try to depict what functionalities are available, across the different distribution channels. -There are various limitations and problems we try to attend as we evolve and grow. Through this report we want to provide some clarity as to what is available and in what way. Of course we strive to deliver our full solution through all channels, but that may not be feasible yet for some cases. - -**Legend**: - -- **Auto-detect**: Depends on the programs package dependencies. If the required dependencies are covered during compile time, capability is enabled -- **YES**: This flag implies that the functionality is available for that distribution channel -- **NO**: Not available at the moment for that distribution channel at this time, but may be a work-in-progress effort from the Netdata team. -- **At Runtime**: The given module or functionality is available and only requires configuration after install to enable it - -### Core functionality - -#### Core - -This is the base netdata capability, that includes basic monitoring, embedded web server, and so on. - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|YES|YES|YES|YES|YES|YES|YES| - -- **Flags/instructions to enable**: None -- **Flags to disable from source**: None -- **What packages required for auto-detect?**: `install-required-packages.sh netdata` - -#### DB Engine - -This is the brand new database engine capability of netdata. It is a mandatory facility required by netdata. Given it's special needs and dependencies though, it remains an optional facility so that users can enjoy netdata even when they cannot cover the dependencies or the H/W requirements. - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|Auto-detect|Auto-detect|YES|YES|YES|YES|YES| - -- **Flags/instructions to enable**: None -- **Flags to disable from source**: `--disable-dbengine` -- **What packages required for auto-detect?**: `openssl`, `libuv1`, `lz4`, `Judy` - -#### Encryption Support (HTTPS) - -This is Netdata's TLS capability that incorporates encryption on the web server and the APIs between parent and child -nodes. Also a mandatory facility for Netdata, but remains optional for users who are limited or not interested in tight -security - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|Auto-detect|Auto-detect|YES|YES|YES|YES|YES| - -- **Flags/instructions to enable**: None -- **Flags to disable from source**: --disable-https -- **What packages required for auto-detect?**: `openssl` - -### Libraries/optimizations - -#### JSON-C Support - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|Auto-detect|Auto-detect|Auto-detect|Auto-detect|NO|YES|YES| - -- **Flags/instructions to enable**: None -- **Flags to disable from source**: --disable-jsonc -- **What packages required for auto-detect?**: `json-c` - -#### Link time optimizations - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|Auto-detect|Auto-detect|Auto-detect|Auto-detect|Auto-detect|Auto-detect|Auto-detect| - -- **Flags/instructions to enable**: None -- **Flags to disable from source**: --disable-lto -- **What packages required for auto-detect?**: No package dependency, depends on GCC version - -### External plugins, built with netdata build tools - -#### FREEIPMI - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|Auto-detect|Auto-detect|Auto-detect|Auto-detect|YES|YES|YES| - -- **Flags/instructions to enable**: None -- **Flags to disable from source**: --disable-plugin-freeipmi -- **What packages required for auto-detect?**: `freeipmi-dev (or -devel)` - -#### NFACCT - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|Auto-detect|Auto-detect|Auto-detect|Auto-detect|NO|YES|YES| - -- **Flags/instructions to enable**: None -- **Flags to disable from source**: --disable-plugin-nfacct -- **What packages required for auto-detect?**: `libmnl-dev`, `libnetfilter_acct-dev` - -#### Xenstat - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|Auto-detect|Auto-detect|Auto-detect|Auto-detect|NO|NO|NO| - -- **Flags/instructions to enable**: None -- **Flags to disable from source**: --disable-plugin-xenstat -- **What packages required for auto-detect?**: `xen-dom0-libs-devel or xen-devel`, `yajl-dev or yajl-devel` - Note: for cent-OS based systems you will need `centos-release-xen` repository to get xen-devel - -#### CUPS - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|Auto-detect|Auto-detect|Auto-detect|Auto-detect|NO|YES|YES| - -- **Flags/instructions to enable**: None -- **Flags to disable from source**: --disable-plugin-cups -- **What packages required for auto-detect?**: `cups-devel >= 1.7` - -#### FPING - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|At Runtime|At Runtime|At Runtime|At Runtime|At Runtime|At Runtime|At Runtime| - -- **Flags/instructions to enable**: ${INSTALL_PATH}/netdata/plugins.d/fping.plugin install -- **Flags to disable from source**: None -- just dont install -- **What packages required for auto-detect?**: None - only fping installed to start it up - -#### IOPING - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|At Runtime|At Runtime|At Runtime|At Runtime|At Runtime|At Runtime|At Runtime| - -- **Flags/instructions to enable**: ${INSTALL_PATH}/netdata/plugins.d/ioping.plugin install -- **Flags to disable from source**: None -- just dont install -- **What packages required for auto-detect?**: None - only ioping installed to start it up - -#### PERF - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|At Runtime|At Runtime|At Runtime|At Runtime|At Runtime|At Runtime|At Runtime| - -- **Flags/instructions to enable**: Inside netdata.conf, section `[Plugins]`, set `"perf = yes"` -- **Flags to disable from source**: --disable-perf -- **What packages required for auto-detect?**: None - -### Backends - -#### Prometheus remote write - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|Auto-detect|Auto-detect|Auto-detect|Auto-detect|NO|YES|YES| - -- **Flags/instructions to enable**: None -- **Flags to disable from source**: --disable-backend-prometheus-remote-write -- **What packages required for auto-detect?**: `snappy-devel`, `protobuf`, `protobuf-compiler` - -#### AWS Kinesis - -|make/make install|netdata-installer.sh|kickstart.sh|kickstart-static64.sh|Docker image|RPM packaging|DEB packaging| -|:---------------:|:------------------:|:----------:|:-------------------:|:----------:|:-----------:|:-----------:| -|Auto-detect|Auto-detect|Auto-detect|Auto-detect|NO|NO|NO| - -- **Flags/instructions to enable**: [Instructions for AWS - Kinesis](https://learn.netdata.cloud/docs/agent/backends/aws_kinesis) -- **Flags to disable from source**: --disable-backend-kinesis -- **What packages required for auto-detect?**: `AWS SDK for C++`, `libcurl`, `libssl`, `libcrypto` - -[![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%2Fdocs%2Fpackaging%2FDISTRIBUTIONS&_u=MAC~&cid=5792dfd7-8dc4-476b-af31-da2fdb9f93d2&tid=UA-64295674-3)](<>) diff --git a/packaging/PLATFORM_SUPPORT.md b/packaging/PLATFORM_SUPPORT.md new file mode 100644 index 0000000000..6b9f198859 --- /dev/null +++ b/packaging/PLATFORM_SUPPORT.md @@ -0,0 +1,175 @@ +<!-- +title: "Netdata platform support policy" +custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/PLATFORM_SUPPORT.md +--> + +# Netdata platform support policy + +Netdata defines three tiers of official support: + +- [Core](#core) +- [Intermediate](#intermediate) +- [Community](#community) + +Each tier defines different guarantees for platforms in that tier, described below in the section about that tier. + +Additionally, we define two categories for special cases that we do not support: + +- [Third-party supported platforms](#third-party-supported-platforms) +- [Previously supported platforms](#previously-supported-platforms) + +These two categories are explained further below. + +Any platforms not listed in any of these categories may or may not work. + +The following table shows a general outline of the various support tiers and categories. + +| | Bug Support | Guaranteed Configurations | CI Coverage | Native Packages | Static Build Support | +| - | ----------- | ------------------------- | ----------- | --------------- | -------------------- | +| Core | High priority | Everything but rare edge cases | Full | Yes, if we can provide them | Full | +| Intermediate | Normal priority | Common cases | Partial (CI mostly equivalent to **Core**, but possibly with some gaps, and not required to pass) | Possibly | Full | +| Community | Best Effort | Default only | None | No | Best Effort | +| Third-party Supported | Users directed to platform maintainers | None | None | No | Best Effort | +| Previously Supported | Users asked to upgrade | None | None | Yes, but only already published versions | Best Effort | + +- ‘Bug Support’: How we handle of platform-specific bugs. +- ‘Guaranteed Configurations’: Which runtime configurations for the agent we try to guarantee will work with minimal effort from users. +- ‘CI Coverage’: What level of coverage we provide for the platform in CI. +- ‘Native Packages’: Whether we provide native packages for the system package manager for the platform. +- ‘Static Build Support’: How well our static builds are expected to work on the platform. + +## Currently supported platforms + +### Core + +Platforms in the core support tier are our top priority. They are covered rigorously in our CI, usually +include official binary packages, and any platform-specific bugs receive a high priority. From the perspective +of our developers, platforms in the core support tier _must_ work, with almost no exceptions. Our [static +builds](#static-builds) are expected to work on these platforms if available. Source-based installs are expected +to work on these platforms with minimal user effort. + +| Platform | Version | Official Native Packages | Notes | +| -------- | ------- | ------------------------ | ----- | +| Alpine Linux | 3.15 | No | The latest release of Alpine Linux is guaranteed to remain at **Core** tier due to usage for our Docker images | +| CentOS | 7.x | x86\_64 | | +| CentOS | 8.x | x86\_64, AArch64 | Includes Rocky Linux 8.x support, which will be our primary platform long-term for RHEL compatiblitiy | +| Docker | 19.03 or newer | x86\_64, i386, ARMv7, AArch64, POWER8+ | See our [Docker documentation](/packaging/docker/README.md) for more info on using Netdata on Docker | +| Debian | 11.x | x86\_64, i386, ARMv7, AArch64 | | +| Debian | 10.x | x86\_64, i386, ARMv7, AArch64 | | +| Debian | 9.x | x86\_64, i386, ARMv7, AArch64 | | +| Fedora | 35 | x86\_64, ARMv7, AArch64 | | +| Fedora | 34 | x86\_64, ARMv7, AArch64 | | +| openSUSE | Leap 15.3 | x86\_64, AArch64 | | +| Oracle Linux | 8.x | x86\_64, AArch64 | | +| Red Hat Enterprise Linux | 7.x | x86\_64 | | +| Red Hat Enterprise Linux | 8.x | x86\_64, AArch64 | | +| Ubuntu | 21.10 | x86\_64, i386, ARMv7, AArch64 | | +| Ubuntu | 20.04 | x86\_64, i386, ARMv7, AArch64 | | +| Ubuntu | 18.04 | x86\_64, i386, ARMv7, AArch64 | | + +### Intermediate + +Platforms in the intermediate support tier are those which Netdata wants to support, but cannot justify core level +support for. They are also covered in CI, but not as rigorously as the core tier. They may or may not include +official binary packages, and any platform-specific bugs receive a normal priority. Generally, we will add new +platforms that we officially support ourselves to the intermediate tier. Our [static builds](#static-builds) are +expected to work on these platforms if available. Source-based installs are expected to work on these platforms +with minimal user effort. + +| Platform | Version | Official Native Packages | Notes | +| -------- | ------- | ------------------------ | ----- | +| Alpine Linux | 3.14 | No | | +| Alpine Linux | 3.13 | No | | +| Alpine Linux | 3.12 | No | | +| Arch Linux | Latest | No | We officially recommend the community packages available for Arch Linux | +| Manjaro Linux | Latest | No | We officially recommend the community packages available for Arch Linux | + +### Community + +Platforms in the community support tier are those which are primarily supported by community contributors. They may +receive some support from Netdata, but are only a best-effort affair. When a community member makes a contribution +to add support for a new platform, that platform generally will start in this tier. Our [static builds](#static-builds) +are expected to work on these platforms if available. Source-based installs are usually expected to work on these +platforms, but may require some extra effort from users. + +| Platform | Version | Official Native Packages | Notes | +| -------- | ------- | ------------------------ | ----- | +| Alpine Linux | Edge | No | | +| Clear Linux | Latest | No | | +| Debian | Sid | No | | +| Fedora | Rawhide | No | | +| FreeBSD | 13-STABLE | No | Netdata is included in the FreeBSD Ports Tree, and this is the recommended installation method on FreeBSD | +| FreeBSD | 12-STABLE | No | Netdata is included in the FreeBSD Ports Tree, and this is the recommended installation method on FreeBSD | +| Gentoo | Latest | No | | +| macOS | 12 | No | Planned for **Core** tier support. Currently only works for Intel-based hardware. Requires Homebrew for dependencies | +| macOS | 11 | No | Planned for **Core** tier support. Currently only works for Intel-based hardware. Requires Homebrew for dependencies. | +| macOS | 10.15 | No | Planned for **Core** tier support. Requires Homebrew for dependencies. | +| openSUSE | Tumbleweed | No | | + +## Third-party supported platforms + +Some platform maintainers actively support Netdata on their platforms even though we do not provide official +support. Third-party supported platforms may work, but the experience of using Netdata on such platforms is not +something we can guarantee. When you use an externally supported platform and report a bug, we will either ask +you to reproduce the issue on a supported platform or submit a support request directly to the platform maintainers. + +Currently, we know of the following platforms having some degree of third-party support for Netdata: + +- NixOS: Netdata’s official installation methods do not support NixOS, but the NixOS maintainers provide their + own Netdata packages for their platform. +- Rockstor: Rockstor provides support for a Netdata add-on for their NAS platform. The Rockstor community and + developers are the primary source for support on their platform. + +## Previously supported platforms + +As platforms become end of life upstream, Netdata will stop officially supporting them. We will not actively break +things on these platforms, but we will also not make any effort to ensure that things keep working on them either. +If you report a bug on a previously supported platforms, we will ask you to reproduce the issue on a currently +supported platform. If the issue is not reproducible, it will be closed. + +We consider a platform to be end of life when the upstream maintainers of that platform stop providing official +support for it themselves, or when that platform transitions into an ‘extended security maintenance’ period. +Platforms that meet these criteria will be immediately transitioned to the **Previously Supported** category, +with no prior warning from Netdata and no deprecation notice, unlike those being dropped for technical reasons, +as our end of support should already coincide with the end of the normal support lifecycle for that platform. + +On occasion, we may also drop support for a platform due to technical limitations. In such cases, this will be +announced in the release notes of the next stable release with a deprecation notice. The platform will be supported +for _that release_, and will be removed from nightlies some time before the next release after that one. + +This is a list of platforms that we have supported in the recent past but no longer officially support: + +| Platform | Version | Notes | +| -------- | ------- | ----- | +| Alpine Linux | 3.11 | EOL as of 2021-11-01 | +| Alpine Linux | 3.10 | EOL as of 2021-05-01 | +| Fedora | 33 | EOL as of 2021-11-30 | +| Fedora | 32 | EOL as of 2021-05-25 | +| FreeBSD | 11-STABLE | EOL as of 2021-10-30 | +| openSUSE | Leap 15.2 | EOL as of 2021-12-01 | +| openSUSE | Leap 15.1 | EOL as of 2021-01-31 | +| Ubuntu | 21.04 | EOL as of 2022-01-01 | +| Ubuntu | 20.10 | EOL as of 2021-07-22 | +| Ubuntu | 16.04 | EOL as of 2021-04-02 | + +## Static builds + +The Netdata team provides static builds of Netdata for Linux systems with a selection of common CPU +architectures. These static builds are largely self-contained, only requiring a a POSIX-compliant shell on the target +system to provide their basic functionality. Static builds are built in an Alpine Linux environment using musl. This +means that they generally do not support non-local username mappings or exotic name resolution configurations. + +We currently provide static builds for the following CPU architectures: + +- 32-bit x86 +- 64-bit x86 +- ARMv7 +- AArch64 +- POWER8+ + +## Platform-specific support considerations + +### IPMI + +Our IPMI collector is based on FreeIPMI. Due to upstream limitations in FreeIPMI, we are unable to support our +IPMI collector on POWER-based hardware. diff --git a/packaging/installer/README.md b/packaging/installer/README.md index 206dc08fe8..7c08e10983 100644 --- a/packaging/installer/README.md +++ b/packaging/installer/README.md @@ -11,9 +11,7 @@ Netdata is a monitoring agent designed to run on all your systems: physical and IoT/edge devices. Netdata runs on Linux, FreeBSD, macOS, Kubernetes, Docker, and all their derivatives. The best way to install Netdata is with our [**automatic one-line installation -script**](#automatic-one-line-installation-script), which works with all Linux distributions and macOS environments, or our [**.deb/rpm -packages**](/packaging/installer/methods/packages.md), which seamlessly install with your distribution's package -manager. +script**](#automatic-one-line-installation-script), which works with all Linux distributions and most macOS environments. If you want to install Netdata with Docker, on a Kubernetes cluster, or a different operating system, see [Have a different operating system, or want to try another @@ -36,24 +34,18 @@ _actively_ contributing to Netdata's future. This method is fully automatic on all Linux distributions, including Ubuntu, Debian, Fedora, CentOS, and others, as well as on mac OS 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: - -**Linux** +To install Netdata, 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.sh) +wget -O /tmp/netdata-kickstart.sh https://my-netdata.io/kickstart.sh && sh /tmp/netdata-kickstart.sh ``` -**macOS** - -```bash -bash <(curl -Ss https://my-netdata.io/kickstart.sh) --install /usr/local/ -``` +This script will preferentially use native DEB/RPM packages if we provide them for your platform. To see more information about this installation script, including how to disable automatic updates, get nightly vs. stable releases, or disable anonymous statistics, see the [`kickstart.sh` method -page](/packaging/installer/methods/kickstart.md). +page](/packaging/installer/methods/kickstart.md). Scroll down for details ab |