Docker 安装 ES8 和 Kibana

https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html

Docker 安装 ES8

安装 ES

# 创建一个单独的 es 网络
docker network create elastic
# pull es 镜像
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.12.2
# 启动 es,并且限制一下内存
docker run --name es01 --net elastic -p 9200:9200 -it -m 1GB docker.elastic.co/elasticsearch/elasticsearch:8.12.2

容器启动过后会出现下面的内容,这里会包含 elastic 的一个初始用户和密码,并且也会输出一个用于 kibana 链接的 token 在 30 分钟内有效。这个密码后期也可以重置,不过建议还是好好保存一下,避免麻烦。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✅ Elasticsearch security features have been automatically configured!
✅ Authentication is enabled and cluster connections are encrypted.

ℹ️  Password for the elastic user (reset with `bin/elasticsearch-reset-password -u elastic`):
  oQuOvvZWZ_Yl*MP4Qdx+

ℹ️  HTTP CA certificate SHA-256 fingerprint:
  069ac73fc5c8ad9d14aaa3a1d6c4ba92cbfebab0354254c5e1512855cfc34dbe

ℹ️  Configure Kibana to use this cluster:
* Run Kibana and click the configuration link in the terminal when Kibana starts.
* Copy the following enrollment token and paste it into Kibana in your browser (valid for the next 30 minutes):
  eyJ2ZXIiOiI4LjEyLjIiLCJhZHIiOlsiMTcyLjE5LjAuMjo5MjAwIl0sImZnciI6IjA2OWFjNzNmYzVjOGFkOWQxNGFhYTNhMWQ2YzRiYTkyY2JmZWJhYjAzNTQyNTRjNWUxNTEyODU1Y2ZjMzRkYmUiLCJrZXkiOiJLQ2o4VVk0QlZqTFJyVldaM3gwUzpXRkcxWHpuUVF5LURiVDU1a1BDT0NnIn0=

ℹ️ Configure other nodes to join this cluster:
* Copy the following enrollment token and start new Elasticsearch nodes with `bin/elasticsearch --enrollment-token <token>` (valid for the next 30 minutes):
  eyJ2ZXIiOiI4LjEyLjIiLCJhZHIiOlsiMTcyLjE5LjAuMjo5MjAwIl0sImZnciI6IjA2OWFjNzNmYzVjOGFkOWQxNGFhYTNhMWQ2YzRiYTkyY2JmZWJhYjAzNTQyNTRjNWUxNTEyODU1Y2ZjMzRkYmUiLCJrZXkiOiJLU2o4VVk0QlZqTFJyVldaM3gwWDpad1hEWWhuc1RPT2x4UjRzdHBmX013In0=

  If you're running in Docker, copy the enrollment token and run:
  `docker run -e "ENROLLMENT_TOKEN=<token>" docker.elastic.co/elasticsearch/elasticsearch:8.12.2`
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

拷贝证书

因为 ES8 默认是开启了安全认证的,为了后续的方便,这里我们可以先把证书拷贝出来,放在一个地方,后期会用到。

docker cp es01:/usr/share/elasticsearch/config/certs/http_ca.crt .

验证集群

在证书所在目录下执行下面命令

curl --cacert http_ca.crt -u elastic:$ELASTIC_PASSWORD https://localhost:9200

如果返回如下信息,则表示集群配置成功

{
  "name" : "82fa82574efc",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "BC7jOUcjR-ut7toSNcOtkA",
  "version" : {
    "number" : "8.12.2",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "48a287ab9497e852de30327444b0809e55d46466",
    "build_date" : "2024-02-19T10:04:32.774273190Z",
    "build_snapshot" : false,
    "lucene_version" : "9.9.2",
    "minimum_wire_compatibility_version" : "7.17.0",
    "minimum_index_compatibility_version" : "7.0.0"
  },
  "tagline" : "You Know, for Search"
}

Docker 安装 Kibana

# 拉取镜像
docker pull docker.elastic.co/kibana/kibana:8.12.2
# 启动 kibana 并且跟 es 使用同一个网络
docker run --name kib01 --net elastic -p 5601:5601 docker.elastic.co/kibana/kibana:8.12.2

启动过后,点击日志中的链接打开 5601 端口,输入上面的 token,即可,后续登录 kibana 的时候需要使用上面的 es 用户和密码。

标签


java极客技术

更多优质内容欢迎关注公众号【Java 极客技术】

回复:【bbbb07】获取最新面试宝典一份

发表评论