命令行界面编辑

现在,大多数常见的客户端配置设置都可以在命令行中使用。

虽然配置文件和命令行参数可以一起使用,但请务必注意,命令行选项将覆盖相同设置的基于文件的配置。

最基本的命令行参数如下

curator [--config CONFIG.YML] [--dry-run] ACTION_FILE.YML

方括号表示可选元素。

如果未提供 --configCONFIG.YML,Curator 将在 ~/.curator/curator.yml 中查找配置文件。 ~ 是执行 Curator 的用户的主目录。在 Unix 系统中,这可能是 /home/username/.curator/curator.yml,而在 Windows 系统中,它可能是 C:\Users\username\.curator\curator.yml

如果包含 --dry-run,Curator 将尽可能模拟 ACTION_FILE.YML 中的操作,而不会实际进行任何更改。结果将显示在日志文件中,如果未指定日志文件,则显示在 STDOUT/命令行中。

ACTION_FILE.YML 是一个 YAML 操作文件

对于其他客户端配置选项,命令行帮助始终触手可及

curator --help

帮助输出如下所示

$ curator --help
Usage: curator [OPTIONS] ACTION_FILE

  Curator for Elasticsearch indices

  The default $HOME/.curator/curator.yml configuration file (--config) can be used but is not needed.

  Command-line settings will always override YAML configuration settings.

  Some less-frequently used client configuration options are now hidden. To see the full list, run:

      curator_cli -h

Options:
  --config PATH                   Path to configuration file.
  --hosts TEXT                    Elasticsearch URL to connect to.
  --cloud_id TEXT                 Elastic Cloud instance id
  --api_token TEXT                The base64 encoded API Key token
  --id TEXT                       API Key "id" value
  --api_key TEXT                  API Key "api_key" value
  --username TEXT                 Elasticsearch username
  --password TEXT                 Elasticsearch password
  --request_timeout FLOAT         Request timeout in seconds
  --verify_certs / --no-verify_certs
                                  Verify SSL/TLS certificate(s)  [default: verify_certs]
  --ca_certs TEXT                 Path to CA certificate file or directory
  --client_cert TEXT              Path to client certificate file
  --client_key TEXT               Path to client key file
  --dry-run                       Do not perform any changes.
  --loglevel [DEBUG|INFO|WARNING|ERROR|CRITICAL]
                                  Log level
  --logfile TEXT                  Log file
  --logformat [default|ecs]       Log output format
  -v, --version                   Show the version and exit.
  -h, --help                      Show this message and exit.

  Learn more at https://elastic.ac.cn/guide/en/elasticsearch/client/curator/8.0/command-line.html

您可以在配置文件中使用 环境变量

从 Docker 运行 Curator编辑

使用 Docker 从命令行运行 Curator 只需要几个额外的步骤。

如果您希望使用它们,基于 Docker 的 Curator 要求您为您的配置和/或日志文件映射一个卷。如果您忽略了将配置目录映射到 /.curator,则尝试读取 YAML 配置文件将不起作用。

它看起来像这样

docker run [-t] --rm --name myimagename \
  -v /PATH/TO/MY/CONFIGS:/.curator      \
  untergeek/curator:mytag               \
--config /.curator/config.yml /.curator/actionfile.yml

在测试时,添加 -t 标志将分配一个伪终端,允许您查看否则会被隐藏的终端输出。

文件 config.ymlactionfile.yml 都应该在运行时之前存在于路径 /PATH/TO/MY/CONFIGS 中。

命令中的 --rm 表示容器(而不是镜像)将在完成执行后被删除。您肯定希望这样做,因为没有理由为每次运行都创建容器。最终的清理工作将令人不快。