Elasticsearch启停

目录

启动 Elasticsearch

存档包 ( .tar.gz)

macOS Gatekeeper 警告

存档包 ( .zip)

Debian 软件包

Docker 镜像

MSI 包

RPM 包

停止 Elasticsearch

致命错误停止

向集群添加节点 

全集群重启和滚动重启

全集群重启

滚动重启

设置 X-Pack

配置 X-Pack Java 客户端

在 7.0.0 中已弃用。

X-Pack 的引导程序检查

加密敏感数据检查

PKI 领域检查

角色映射检查

SSL/TLS 检查

令牌 SSL 检查


启动 Elasticsearch

启动 Elasticsearch 的方法因安装方式而异。

存档包 ( .tar.gz)

如果使用.tar.gz包安装了 Elasticsearch ,可以从命令行启动 Elasticsearch。

从命令行运行ElasticSearch

Elasticsearch 可以从命令行启动,如下所示:

./bin/elasticsearch

默认情况下,Elasticsearch 在前台运行,将其日志打印到标准输出 ( stdout),可以通过按Ctrl-C停止。

NOTE

所有与 Elasticsearch 一起打包的脚本都需要一个支持数组的 Bash 版本。默认 Bash 在/bin/bash. 因此,在此路径上Bash 应该直接或通过符号链接可用。

重要

macOS Gatekeeper 警告

Apple 推出更严格的公证要求影响了 7.6.2 Elasticsearch 相关组件的公证。如果 macOS Catalina 在第一次运行 Elasticsearch 时显示一个中断它的对话框,需要采取措施以允许它运行。

要防止 Gatekeeper 检查 Elasticsearch 文件,请在下载的.tar.gz存档或解压缩到的目录上运行以下命令:

xattr -d -r com.apple.quarantine <archive-or-directory>

例如,如果.tar.gz文件被解压到默认的elasticsearch-7.6.2目录,则命令为:

xattr -d -r com.apple.quarantine elasticsearch-7.6.2

另外,也可以同时为jdk.appcontroller.app增加安全覆盖,按照您的Mac安全打开的应用程序如何打开尚未公证或者是从一个身份不明的开发者的应用程序的部分的说明进行处理。

作为守护进程运行

要将 Elasticsearch 作为守护进程运行,请在命令行中指定-d,并使用以下-p选项将进程 ID 记录在文件中:

./bin/elasticsearch -d -p pid

可在$ES_HOME/logs/目录中找到日志消息。

要关闭 Elasticsearch,可终止pid文件中记录的进程 ID :

pkill -F pid
NOTE

RPMDebian 包中提供的启动脚本负责启动和停止 Elasticsearch 进程

 

存档包 ( .zip)

如果使用.zip软件包在 Windows 上安装 Elasticsearch ,可以从命令行启动 Elasticsearch。如果希望 Elasticsearch 在启动时自动启动而无需任何用户交互,可将 Elasticsearch 作为服务安装

从命令行运行 Elasticsearch

Elasticsearch 可以从命令行启动,如下所示:

.\bin\elasticsearch.bat

默认情况下,Elasticsearch 在前台运行,将其日志打印到STDOUT,并且可以通过按Ctrl-C停止。

Debian 软件包

Elasticsearch 安装后不会自动启动。如何启动和停止 Elasticsearch 取决于系统是使用 SysV init还是 systemd(由较新的发行版使用)。通过运行以下命令来判断正在使用哪个:

ps -p 1

使用 SysV init运行 Elasticsearch 

使用update-rc.d命令配置Elasticsearch在系统启动时自动启动:

sudo update-rc.d elasticsearch defaults 95 10

可以使用以下service命令启动和停止 Elasticsearch :

sudo -i service elasticsearch start
sudo -i service elasticsearch stop

如果 Elasticsearch 由于任何原因无法启动,会将失败的原因打印到 STDOUT。日志文件在/var/log/elasticsearch/.目录中

systemd运行 Elasticsearch 

要将 Elasticsearch 配置为在系统启动时自动启动,请运行以下命令:

sudo /bin/systemctl daemon-reload
sudo /bin/systemctl enable elasticsearch.service

Elasticsearch 可以按如下方式启动和停止:

sudo systemctl start elasticsearch.service
sudo systemctl stop elasticsearch.service

这些命令不提供有关 Elasticsearch 是否成功启动的反馈。具体信息将写入位于/var/log/elasticsearch/.目录的日志文件中。

默认情况下,systemd下Elasticsearch 服务不会在日志中记录信息 。要启用journalctl日志记录,必须从elasticsearch.service文件的ExecStart命令行中删除--quiet选项。

systemd启用了日志记录,日志信息便可使用journalctl的命令:

跟踪日志:

sudo journalctl -f

要列出 elasticsearch 服务的日志条目:

sudo journalctl --unit elasticsearch

要从给定时间开始列出 elasticsearch 服务的日志条目:

sudo journalctl --unit elasticsearch --since  "2016-10-30 18:17:16"

检查man journalctlhttps://www.freedesktop.org/software/systemd/man/journalctl.html以获取更多命令行选项。

Docker 镜像

如果安装了 Docker 镜像,则可以从命令行启动 Elasticsearch。根据使用的是开发模式还是生产模式,有不同的方法。请参阅Docker 运行

MSI 包

如果使用.msi软件包在 Windows 上安装 Elasticsearch ,可以从命令行启动 Elasticsearch。如果希望它在启动时自动启动而无需任何用户交互, 请将 Elasticsearch 安装为 Windows 服务

从命令行运行 Elasticsearch

安装后,如果没有安装为服务并配置为安装完成时启动,Elasticsearch 可以从命令行启动,如下:

.\bin\elasticsearch.exe

命令行终端将显示类似于以下内容的输出:

弹性搜索 exe

默认情况下,Elasticsearch 在前台运行,将其日志打印到STDOUT,并记录在LOGSDIRECTORY目录的<cluster name>.log文件中,可以通过按Ctrl-C停止。

RPM 包

Elasticsearch 安装后不会自动启动。如何启动和停止 Elasticsearch 取决于系统是使用 SysV init还是 systemd(由较新的发行版使用)。您可以通过运行以下命令来判断正在使用哪个:

ps -p 1

使用 SysV init运行 Elasticsearch 

使用chkconfig命令配置Elasticsearch在系统启动时自动启动:

sudo chkconfig --add elasticsearch

可以使用以下service命令启动和停止 Elasticsearch :

sudo -i service elasticsearch start
sudo -i service elasticsearch stop

如果 Elasticsearch 由于任何原因无法启动,会将失败的原因打印到 STDOUT。日志文件在/var/log/elasticsearch/.目录中。

systemd运行 Elasticsearch 

要将 Elasticsearch 配置为在系统启动时自动启动,请运行以下命令:

sudo /bin/systemctl daemon-reload
sudo /bin/systemctl enable elasticsearch.service

Elasticsearch 可以按如下方式启动和停止:

sudo systemctl start elasticsearch.service
sudo systemctl stop elasticsearch.service

这些命令不提供有关 Elasticsearch 是否成功启动的反馈。此信息将写入/var/log/elasticsearch/.目录中。

默认情况下,systemd下Elasticsearch 服务不会在日志中记录信息 。要启用journalctl日志记录,必须从elasticsearch.service文件的ExecStart命令行中删除--quiet选项。

systemd启用了日志记录,日志信息使用可用journalctl的命令:

跟踪日志:

sudo journalctl -f

列出 elasticsearch 服务的日志条目:

sudo journalctl --unit elasticsearch

要从给定时间开始列出 elasticsearch 服务的日志条目:

sudo journalctl --unit elasticsearch --since  "2016-10-30 18:17:16"

检查man journalctlhttps://www.freedesktop.org/software/systemd/man/journalctl.html以获取更多命令行选项。

停止 Elasticsearch

Elasticsearch 的有序关闭确保 Elasticsearch 有机会清理和关闭未完成的资源。例如,以有序方式关闭的节点将从集群中移除自身,将 translogs 同步到磁盘,并执行其他相关的清理活动。可以通过正确停止 Elasticsearch 来帮助确保有序关闭。

如果将 Elasticsearch 作为服务运行,则可以通过安装提供的服务管理功能停止 Elasticsearch。

如果直接运行 Elasticsearch或在控制台中运行 Elasticsearch,可以通过发送 control-C 来停止 Elasticsearch,或者POSIX 系统上发送SIGTERM到Elasticsearch 进程。可以通过各种工具(例如psjps)获取要发送信号的 PID :

$ jps | grep Elasticsearch
14542 Elasticsearch

从 Elasticsearch 启动日志获取PID:

[2016-07-07 12:26:18,908][INFO ][node                     ] [I8hydUG] version[5.0.0-alpha4], pid[15399], build[3f5b994/2016-06-27T16:23:46.861Z], OS[Mac OS X/10.11.5/x86_64], JVM[Oracle Corporation/Java HotSpot(TM) 64-Bit Server VM/1.8.0_92/25.92-b14]

或者通过在启动时指定写入 PID 文件的位置 ( -p <path>):

$ ./bin/elasticsearch -p /tmp/elasticsearch-pid -d
$ cat /tmp/elasticsearch-pid && echo
15516
$ kill -SIGTERM 15516

致命错误停止

在 Elasticsearch 虚拟机的生命周期中,可能会出现某些致命错误,使虚拟机处于可疑状态。此类致命错误包括内存不足错误、虚拟机内部错误和严重 I/O 错误。

当 Elasticsearch 检测到虚拟机遇到此类致命错误时,Elasticsearch 会尝试记录该错误,然后将暂停虚拟机。当 Elasticsearch 执行此类关闭时,它不会像上面描述的那样有序关闭。Elasticsearch 进程还将返回一个特殊的状态代码,指示错误的性质。

JVM 内部错误

128

内存不足错误

127

堆栈溢出错误

126

未知虚拟机错误

125

严重的 I/O 错误

124

未知的致命错误

1

向集群添加节点 

当启动 Elasticsearch 实例时,实际是在启动一个node。Elasticsearch集群 是一组具有相同cluster.name属性的节点。当节点加入或离开集群时,集群会自动重新组织自身以在可用节点之间均匀分布数据。

如果正在运行 Elasticsearch 的单个实例,则拥有一个包含一个节点的集群。所有主分片都驻留在单个节点上。无法分配副本分片,因此集群状态保持为黄色。集群功能齐全,但在发生故障时存在数据丢失的风险。

具有一个节点和三个主分片的集群

可以向集群添加节点以提高其容量和可靠性。默认情况下,一个节点既是数据节点,又有资格被选为控制集群的主节点。还可以为特定目的配置新节点,例如处理fetch请求。有关更多信息,请参阅 节点

当向集群添加更多节点时,它会自动分配副本分片。当所有主分片和副本分片都处于活动状态时,集群状态变为绿色。

一个包含三个节点的集群

 

可以在本地机器上运行多个节点,以试验由多个节点组成的 Elasticsearch 集群的行为方式。要将节点添加到本地计算机上运行的集群:

  1. 设置一个新的 Elasticsearch 实例。
  2. 使用elasticsearch.yml中的cluster.name设置指定集群的名称。例如,要将节点添加到logging-prod集群,请将行cluster.name: "logging-prod"添加到elasticsearch.yml
  3. 启动 Elasticsearch。节点自动发现并加入指定的集群。

要将节点添加到在多台机器上运行的集群,还必须设置discovery.seed_hosts以便新节点可以发现其集群的其余部分。

有关发现和分片分配的更多信息,请参阅 发现和集群形成以及分片分配和集群级路由

全集群重启和滚动重启

在某些情况下,可能希望执行全集群重启或滚动重启。在全集群重启的情况下 ,关闭并重新启动集群中的所有节点,而在滚动重启的情况下 ,一次只关闭一个节点,因此服务不会中断。

全集群重启

  1. 禁用分片分配。

    当关闭一个节点时,分配过程会等待 index.unassigned.node_left.delayed_timeout(默认情况下,一分钟),然后才开始将该节点上的分片复制到集群中的其他节点,这可能涉及大量 I/O。由于节点即将重新启动,因此不需要此 I/O。可以通过在关闭节点之前禁用分配副本来避免时钟竞争 :

    PUT _cluster/settings
    {
      "persistent": {
        "cluster.routing.allocation.enable": "primaries"
      }
    }
  2. 停止索引并执行同步刷新。

    执行同步刷新加速分片恢复。

    POST _flush/synced

    执行同步刷新时,请检查响应以确保没有失败。由于挂起的索引操作而失败的同步刷新操作列在响应正文中,尽管请求本身仍返回 200 OK 状态。如果失败,请重新发出请求。

    请注意,同步刷新已在7.x版本标记为过期的,将在 8.0 中删除此功能。在 Elasticsearch 7.6 或更高版本上,刷新与同步刷新具有相同的效果。

  3. 暂时停止与活动机器学习作业和数据馈送相关的任务。(可选的)

    机器学习功能需要白金许可证或更高版本。有关elasticsearch许可级别的更多信息,请参阅订阅页面

    关闭集群时,有两种选择来处理机器学习作业和数据馈送:

    • 使用set upgrade mode API暂时停止与机器学习作业和数据馈送相关的任务,并防止打开新作业 :

      POST _ml/set_upgrade_mode?enabled=true

      当禁用升级模式时,作业将恢复到自动保存的最后一个模型状态。此选项避免了在关闭期间管理活动作业的开销,并且比显式停止数据馈送和关闭作业更快。

    • 停止所有数据馈送并关闭所有作业。此选项保存关闭时的模型状态。在集群重新启动后重新打开作业时,它们使用完全相同的模型。但是,保存最新模型状态比使用升级模式需要更长的时间,尤其是当有大量作业或具有大型模型状态的作业时。
  4. 关闭所有节点。

    • 如果使用systemd运行 Elasticsearch :

      sudo systemctl stop elasticsearch.service
    • 如果使用 SysV init运行 Elasticsearch :

      sudo -i service elasticsearch stop
    • 如果将 Elasticsearch 作为守护进程运行:

      kill $(cat pid)
  5. 执行任何需要的更改。
  6. 重启节点。

    如果有专用的主节点,请先启动它们并等待它们形成集群并选择一个主节点,然后再继续处理数据节点。可以通过查看日志来检查进度。

    一旦有足够多的符合主节点条件的节点相互发现,它们就会形成一个集群并选举一个主节点。此时,可以使用cat healthcat nodes API 来监视加入集群的节点:

    GET _cat/health
    
    GET _cat/nodes

    status列返回通过_cat/health获取的每个节点在集群中的健康状态:redyellow,或green

  7. 等待所有节点加入集群并报告黄色状态。

    当一个节点加入集群时,它开始恢复本地存储的所有主分片。该_cat/healthAPI最初将报告statusred,表明并非所有的主分片已被分配。

    一旦一个节点恢复了它的本地分片,集群status就会切换到 yellow,表明所有的主分片都已经恢复,但不是所有的副本分片都被分配了。这是意料之中的,因为尚未重新启用分配。延迟分配副本直到所有节点都yellow后,主节点才将副本分配给已经具有本地分片副本的节点。

  8. 重新启用分配。

    当所有节点都加入集群并恢复了它们的主分片后,通过恢复cluster.routing.allocation.enable到默认值来重新启用分配:

    PUT _cluster/settings
    {
      "persistent": {
        "cluster.routing.allocation.enable": null
      }
    }

    重新启用分配后,集群开始将副本分片分配给数据节点。此时恢复索引和搜索是安全的,但是如果可以等到所有主分片和副本分片成功分配并且所有节点的状态都为 green,集群将恢复得更快。

    可以使用_cat/health和 _cat/recoveryAPI监控进度:

    GET _cat/health
    
    GET _cat/recovery
  9. 重新启动机器学习作业。(可选的)

    如果暂时停止了与机器学习作业关联的任务,请使用 set upgrade mode API将它们返回到活动状态:

    POST _ml/set_upgrade_mode?enabled=false

    如果在停止节点之前关闭了所有机器学习作业,请打开作业并从 Kibana 启动数据馈送,或者使用打开的作业启动数据馈送API。

滚动重启

  1. 禁用分片分配。

    当关闭一个节点时,分配过程会等待 index.unassigned.node_left.delayed_timeout(默认情况下,一分钟),然后才开始将该节点上的分片复制到集群中的其他节点,这可能涉及大量 I/O。由于节点即将重新启动,因此此 I/O不是必须的。可以通过在关闭节点之前禁用副本分配来避免时钟竞争 :

    PUT _cluster/settings
    {
      "persistent": {
        "cluster.routing.allocation.enable": "primaries"
      }
    }
  2. 停止索引并执行同步刷新。

    执行同步刷新可加速分片恢复。

    POST _flush/synced

    执行同步刷新时,请检查响应以确保没有失败。由于挂起的索引操作而失败的同步刷新操作列在响应正文中,尽管请求本身仍返回 200 OK 状态。如果失败,请重新发出请求。

    请注意,同步刷新已在7.x版本标记为过期的,将在 8.0 中删除此功能。在 Elasticsearch 7.6 或更高版本上,刷新与同步刷新具有相同的效果。

  3. 暂时停止与活动机器学习作业和数据馈送相关的任务。(可选的)

    机器学习功能需要白金许可证或更高版本。有关ElasticSearch许可级别的更多信息,请参阅订阅页面

    关闭集群时,有两种选择来处理机器学习作业和数据馈送:

    • 使用set upgrade mode API暂时停止与机器学习作业和数据馈送相关的任务,并防止打开新作业 :

      POST _ml/set_upgrade_mode?enabled=true

      当禁用升级模式时,作业将恢复到自动保存的最后一个模型状态。此选项避免了在关闭期间管理活动作业的开销,并且比显式停止数据馈送和关闭作业更快。

    • 停止所有数据馈送并关闭所有作业。此选项保存关闭时的模型状态。在集群重新启动后重新打开作业时,它们使用完全相同的模型。但是,保存最新模型状态比使用升级模式需要更长的时间,尤其是当有大量作业或具有大型模型状态的作业时。
    • 如果执行滚动重启,还可以让机器学习作业继续运行。当关闭机器学习节点时,其作业会自动移动到另一个节点并恢复模型状态。此选项使作业能够在关闭期间继续运行,但会增加集群的负载。
  4. 在滚动重启的情况下关闭单个节点。

    • systemd运行 Elasticsearch:

      sudo systemctl stop elasticsearch.service
    • SysV init运行 Elasticsearch :

      sudo -i service elasticsearch stop
    • Elasticsearch 作为守护进程运行:

      kill $(cat pid)
  5. 执行任何需要的更改。
  6. 重新启动更改的节点。

    启动节点并通过检查日志文件或提交_cat/nodes请求来确认它加入集群:

    GET _cat/nodes
  7. 重新启用分片分配。

    节点加入集群后,删除 cluster.routing.allocation.enable设置以启用分片分配并开始使用节点:

    PUT _cluster/settings
    {
      "persistent": {
        "cluster.routing.allocation.enable": null
      }
    }
  8. 在滚动重启的情况下重复。

    当节点恢复并且集群稳定后,对每个需要更改的节点重复这些步骤。

  9. 重新启动机器学习作业。(可选的)

    如果暂时停止了与机器学习作业关联的任务,请使用 set upgrade mode API将它们返回到活动状态:

    POST _ml/set_upgrade_mode?enabled=false

    如果在停止节点之前关闭了所有机器学习作业,请打开作业并从 Kibana 启动数据馈送,或者使用打开的作业启动数据馈送API。

设置 X-Pack

X-Pack 是一个 Elastic Stack 扩展,提供安全、警报、监控、报告、机器学习和许多其他功能。默认情况下,当安装 Elasticsearch 时,会安装 X-Pack。

如果想试用 X-Pack 的所有功能,可以30 天试用。在试用期结束时,可以购买订阅以继续使用 X-Pack 组件的全部功能。有关更多信息,请参阅 https://www.elastic.co/subscriptions

配置 X-Pack Java 客户端

警告

在 7.0.0 中已弃用。

TransportClientJava的高级REST客户端中已标记为不推荐使用,将在Elasticsearch 8.0中删除。该迁移指南描述了所有需要迁移的步骤

如果要将 Java传输客户端与安装了 X-Pack 的集群一起使用,则必须下载并配置 X-Pack 传输客户端。

  1. 将 X-Pack 传输 JAR 文件添加到CLASSPATH。可以下载 X-Pack 发行版并手动提取 JAR 文件,也可以从 Elasticsearch Maven 存储库中获取。与任何依赖项一样,还需要其传递依赖项。下载离线使用时,请参考你的版本的 X-Pack POM 文件
  2. 如果您使用 Maven,则需要在项目pom.xml文件中添加 X-Pack JAR 文件作为依赖项:

    <project ...>
         <repositories>
         <!-- add the elasticsearch repo -->
          <repository>
             <id>elasticsearch-releases</id>
             <url>https://artifacts.elastic.co/maven</url>
             <releases>
              <enabled>true</enabled>
             </releases>
             <snapshots>
                <enabled>false</enabled>
             </snapshots>
          </repository>
          ...
       </repositories>
       ...
    
       <dependencies>
          <!-- add the x-pack jar as a dependency -->
          <dependency>
             <groupId>org.elasticsearch.client</groupId>
             <artifactId>x-pack-transport</artifactId>
                  <version>{version}</version>
          </dependency>
          ...
       </dependencies>
       ...
    
    </project>
  3. 如果您使用 Gradle,则需要将 X-Pack JAR 文件作为依赖项添加到build.gradle文件中:

    repositories {
      /* ... Any other repositories ... */
    
      // Add the Elasticsearch Maven Repository
      maven {
        name "elastic"
        url "https://artifacts.elastic.co/maven"
      }
    }
    
    dependencies {
      compile "org.elasticsearch.client:x-pack-transport:{version}"
    
      /* ... */
    }
  4. 如果在公司内使用诸如Nexus OSS之类的存储库管理器,则需要按照以下屏幕截图添加存储库:

    在 Nexus 中添加弹性仓库

    然后在项目的pom.xml中,添加以下存储库和依赖项定义:

    <dependencies>
        <dependency>
            <groupId>org.elasticsearch.client</groupId>
            <artifactId>x-pack-transport</artifactId>
            <version>{version}</version>
        </dependency>
    </dependencies>
    
    <repositories>
        <repository>
            <id>local-nexus</id>
            <name>Elastic Local Nexus</name>
            <url>http://0.0.0.0:8081/repository/elasticsearch/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
      </repositories>
  5. 如果使用 Elastic Stack 安全功能,则有更多配置步骤。请参阅Java 客户端和安全性

 

X-Pack 的引导程序检查

除了Elasticsearch 引导程序检查之外,还有特定于 X-Pack 功能的检查。

加密敏感数据检查

如果使用 Watcher 并选择加密敏感数据(通过设置 xpack.watcher.encrypt_sensitive_datatrue),还必须在安全设置存储中放置一个密钥。

要通过此引导程序检查,必须在集群中的每个节点上设置xpack.watcher.encryption_key。有关更多信息,请参阅在 Watcher 中加密敏感数据

PKI 领域检查

如果使用 Elasticsearch 安全功能和公钥基础设施 (PKI) 领域,则必须在集群上配置传输层安全性 (TLS) 并在网络层(传输或 http)上启用客户端身份验证。有关更多信息,请参阅PKI 用户身份验证在集群上设置 TLS

要通过此引导程序检查,如果启用了 PKI 领域,则必须配置 TLS 并在至少一个网络通信层上启用客户端身份验证。

角色映射检查

如果使用nativefile领域以外的领域对用户进行身份验证,则必须创建角色映射。这些角色映射定义了分配给每个用户的角色。

如果使用文件来管理角色映射,则必须配置一个 YAML 文件并将其复制到集群中的每个节点。默认情况下,角色映射存储在 ES_PATH_CONF/role_mapping.yml. 也可以为每种类型的领域指定不同的角色映射文件,并指定其在elasticsearch.yml文件中的位置。有关更多信息,请参阅 使用角色映射文件

要通过此引导程序检查,角色映射文件必须存在且必须有效。角色映射文件中列出的专有名称 (DN) 也必须有效。

SSL/TLS 检查

如果启用 Elasticsearch 安全功能,除非有试用许可证,否则必须为节点间通信配置 SSL/TLS。

NOTE

使用环回接口的单节点集群没有此要求。有关详细信息,请参阅 加密通信。 

要通过此引导程序检查,必须 在集群中设置 SSL/TLS。 

令牌 SSL 检查

如果使用 Elasticsearch 安全功能并且启用了内置令牌服务,则必须将集群配置为对 HTTP 接口使用 SSL/TLS。需要 HTTPS 才能使用令牌服务。

特别是,如果在文件elasticsearch.yml中设置xpack.security.authc.token.enabledtrue,则还必须设置 xpack.security.http.ssl.enabledtrue。有关这些设置的更多信息,请参阅安全设置HTTP

要通过此引导程序检查,必须启用 HTTPS 或禁用内置令牌服务。

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值