Merge branch 'master' into fix-dar-453-remove-trace

pull/5697/head
Jason Stirnaman 2024-12-04 09:13:08 -06:00 committed by GitHub
commit 0648cd3f14
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 29 additions and 18 deletions

View File

@ -78,14 +78,19 @@ The filenames reflect the UTC timestamp of when the backup was created, for exam
Backups can be full, metastore only, or incremental, and they are incremental by default:
- **Full backup**: Creates a copy of the metastore and shard data.
- **Incremental backup**: Creates a copy of the metastore and shard data that have changed since the last incremental backup. If there are no existing incremental backups, the system automatically performs a complete backup.
- **Incremental backup**: Creates a copy of the metastore and shard data that have changed since the last backup (the most recent backup file in the specified directory).
If no backups exist in the directory, then the system automatically performs a full backup.
- **Metastore only backup**: Creates a copy of the metastore data only.
Restoring different types of backups requires different syntax.
To prevent issues with [restore](#restore-utility), keep full backups, metastore only backups, and incremental backups in separate directories.
>**Note:** The backup utility copies all data through the meta node that is used to
execute the backup. As a result, performance of a backup and restore is typically limited by the network IO of the meta node. Increasing the resources available to this meta node (such as resizing the EC2 instance) can significantly improve backup and restore performance.
> [!Note]
> #### Backup and restore performance
>
> The backup utility copies all data through the meta node that is used to execute the backup.
> As a result, backup and restore performance is typically limited by the network IO of the meta node.
> Increasing the resources available to this meta node (such as resizing the EC2 instance) can significantly improve backup and restore performance.
#### Syntax
@ -93,7 +98,8 @@ execute the backup. As a result, performance of a backup and restore is typicall
influxd-ctl [global-options] backup [backup-options] <path-to-backup-directory>
```
> **Note:** The `influxd-ctl backup` command exits with `0` for success and `1` for failure. If the backup fails, output can be directed to a log file to troubleshoot.
If successful, the `influxd-ctl backup` command exits with `0` status;
otherwise, error (`1`) status and a message that you can use for troubleshooting.
##### Global flags
@ -105,7 +111,7 @@ for a complete list of the global `influxd-ctl` flags.
- `-db <string>`: name of the single database to back up
- `-from <TCP-address>`: the data node TCP address to prefer when backing up
- `-strategy`: select the backup strategy to apply during backup
- `incremental`: _**(Default)**_ backup only data added since the previous backup.
- `incremental`: _**(Default)**_ backup data that is new or changed since the previous backup.
- `full` perform a full backup. Same as `-full`
- `only-meta` perform a backup for meta data only: users, roles,
databases, continuous queries, retention policies. Shards are not exported.
@ -155,9 +161,12 @@ influxd-ctl backup -db myfirstdb ./myfirstdb-jandata -start 2022-01-01T012:00:00
#### Perform an incremental backup
The following example shows how to run an incremental backup stored in the current directory.
If a backup already exists in the directory, `influxd-ctl` performs an incremental backup.
If no backup is found in the directory, then `influxd-ctl` creates a full backup of all data in InfluxDB.
The incremental backup strategy (default, `-strategy=incremental`) checks for existing backup files in the specified directory.
- If a backup exists, `influxd-ctl` performs an incremental backup, saving only the data that has changed since the most recent backup file.
- If no backup exists, it creates a full backup of all data in InfluxDB.
The following example shows how to run an incremental backup stored in the current directory:
```bash
# Syntax

View File

@ -251,7 +251,7 @@ def create_authorization(device_id) -> Authorization:
write = Permission(action="write", resource=org_resource)
permissions = [read, write]
authorization = Authorization(org_id=org_id, permissions=permissions, description=desc_prefix)
request = authorization_api.create_authorization(authorization)
request = authorization_api.create_authorization(authorization=authorization)
return request
```

View File

@ -13,9 +13,9 @@ LABEL description="InfluxData Docs Test OSS install on CentOS"
LABEL "com.influxdata.docs"="https://docs.influxdata.com/influxdb/v2/install/?t=Linux"
ARG INFLUXDB_LATEST_PATCH=2.7.10
ARG TELEGRAF_LATEST_PATCH=1.31.3
ARG TELEGRAF_LATEST_PATCH=1.32.3
ARG PUBLIC_SHA=943666881a1b8d9b849b74caebf02d3465d6beb716510d86a39f6c8e8dac7515
ARG basearch=aarch64
# ARG basearch=aarch64
# Install InfluxDB keys to verify client installs.
@ -30,7 +30,7 @@ RUN curl --silent --location -O \
RUN cat <<EOF | tee /etc/yum.repos.d/influxdata.repo
[influxdata]
name = InfluxData Repository - Stable
baseurl = https://repos.influxdata.com/stable/${basearch}/main
baseurl = https://repos.influxdata.com/stable/\$basearch/main
enabled = 1
gpgcheck = 1
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-influxdata
@ -39,7 +39,8 @@ EOF
# Install InfluxDB and clients to use in tests.
# Follow the Telegraf install instructions (https://docs.influxdata.com/telegraf/v1/install/?t=curl), except for sudo (which isn't available in Docker).
RUN yum install -y influxdb2 influxdb2-cli
RUN yum install -y influxdb2 influxdb2-cli telegraf-${TELEGRAF_LATEST_PATCH} \
&& yum clean all
ENTRYPOINT ["/bin/bash"]
# Run InfluxDB in the background, wait for it to start, and then test Telegraf.

View File

@ -13,10 +13,7 @@ LABEL description="InfluxData Docs Test OSS install on Ubuntu"
LABEL "com.influxdata.docs"="https://docs.influxdata.com/influxdb/v2/install/?t=Linux"
ARG INFLUXDB_LATEST_PATCH=2.7.10
ARG TELEGRAF_LATEST_PATCH=1.31.3
ARG PUBLIC_SHA=943666881a1b8d9b849b74caebf02d3465d6beb716510d86a39f6c8e8dac7515
ARG basearch=aarch64
# Install gnupg2 and curl to verify client installs.
RUN apt-get update && apt-get install -y gnupg2 curl
@ -34,8 +31,12 @@ RUN curl --silent --location -O \
# Install InfluxDB and clients to use in tests.
# Follow the Telegraf install instructions (https://docs.influxdata.com/telegraf/v1/install/?t=curl), except for sudo (which isn't available in Docker).
RUN apt-get update && apt-get install influxdb2 influxdb2-cli telegraf
RUN apt-get update && apt-get install -y \
influxdb2 \
influxdb2-cli \
telegraf
ENTRYPOINT ["/bin/bash"]
# Run InfluxDB in the background, wait for it to start, and then test Telegraf.
CMD ["-c", "influxd > /var/log/influxd.log 2>&1 & while ! curl -s http://localhost:8086/health | grep -q '\"status\":\"pass\"'; do sleep 1; done; telegraf --config /etc/telegraf/telegraf.conf --test"]
CMD ["-c", "echo $(telegraf version) && echo $(influxd version) && echo $(influx version)", "influxd > /var/log/influxd.log 2>&1 & while ! curl -s http://localhost:8086/health | grep -q '\"status\":\"pass\"'; do sleep 1; done; telegraf --config /etc/telegraf/telegraf.conf --test"]