媒介
教无尽头,无尽头教。对峙天天教面编程常识,对峙天天写面小文章,对峙天天进步一面面。各人佳,尔是弛年夜鹏,喜好进修战分享,期望能够颠末此公家号,将自己教到的工具分享给各人,战各人共同交换,共同少年夜,共同进步。
天地不决,您尔皆是乌马。年夜鹏一日共风起,百尺竿头九万里。宝剑锋从磨砺出,梅花喷鼻自甘热去。没有积跬步,无致使千里,没有积小流无以成江海。
假设有过剩的时间,便对峙进修吧,小时候进修改动运气,少年夜了进修丰硕内涵,老了进修戴去平静。活到老,教到老,尔能止!
概括
课程分析
《ElasticSearch根底班》免费分析:
- 时少:20节课
- 价钱:4999元
- 上课方法:腾讯集会小班讲授
- 联系德律风(共微疑):18010070052
原篇文章是《JavaScript齐栈班》的第1篇文章,前面另有:
Ubuntu装置Docker
卸载旧版原
sudo apt-get remove docker docker-engine docker.io containerd runc
革新包
sudo apt update
装置依靠包
sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-co妹妹on
增加秘钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
增加硬件源
sudo add-apt-repository \"deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \$(lsb_release -cs) \stable"
装置docker
sudo apt install docker-ce
免sudo运行
# sudo usermod -aG docker [您的用户名]sudo usermod -aG docker zhangdapengsudo systemctl restart docker
设置Docker华夏镜像
编纂设置文献:
sudo vim /etc/docker/daemon.json
增加以下实质:
{ "registry-mirrors": [ "https://hub-mirror.c.163.com", "https://mirror.百度bce.com" ]}
沉开效劳:
sudo systemctl daemon-reloadsudo systemctl restart docker
Docker布置ElasticSearch
布置ES单机单节面
布置号令
docker pull elasticsearch:7.9.3docker run -d --name es --restart=always -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e "ES_JAVA_OPTS=-Xms256m -Xmx256m" elasticsearch:7.9.3
检察容器形状
docker ps -a
考证可否胜利,颠末会见http://IP:9200尝试,好比尔布置的机械的IP是10.1.3.55,则会见http://10.1.3.55:9200,假设能够胜利会见,会输出类似以下疑息:
{ "name": "c78e7ec8836c", "cluster_name": "docker-cluster", "cluster_uuid": "FwAdhCQYTOukoJMjgXv4TQ", "version": { "number": "7.9.3", "build_flavor": "default", "build_type": "docker", "build_hash": "c4138e51121ef06a6404866cddc601906fe5c868", "build_date": "2020-10-16T10:36:16.141335Z", "build_snapshot": false, "lucene_version": "8.6.2", "minimum_wire_compatibility_version": "6.8.0", "minimum_index_compatibility_version": "6.0.0-beta1" }, "tagline": "You Know, for Search"}
Docker布置ES单机散群
假设以散群方法布置,最佳先简略以前的单机镜像
docker stop es && docker rm es
改正/etcsysctl.conf文献
sudo vim /etc/sysctl.conf# 正在第一止增加fs.file-max=65536vm.max_map_count=262144
改正 /etc/security/limits.conf
sudo vim /etc/security/limits.conf
正在第一止增加以下设置
soft nofile 65536hard nofile 65536soft nproc 65536hard nproc 65536soft memlock unlimitedhard memlock unlimited
沉开体系,让设置生效。
sudo reboot
准备目次战设置文献
#创立 docker的目次sudo mkdir -p /data/docker# 用于寄存设置文献mkdir -p /data/docker/es/config# 用于寄存数据mkdir -p /data/docker/es/datamkdir -p /data/docker/es01/datamkdir -p /data/docker/es02/datamkdir -p /data/docker/es03/data# 用于寄存日记mkdir -p /data/docker/es/logsmkdir -p /data/docker/es01/logsmkdir -p /data/docker/es02/logsmkdir -p /data/docker/es03/logs# 必然要包管有权力sudo chmod 777 -R /data# 编纂设置文献cd /data/docker/es/configvim docker-compose.yml
增加以下实质
version: '3'services: es01: image: docker.elastic.co/elasticsearch/elasticsearch:7.13.2 container_name: es01 environment: - node.name=es01 - cluster.name=es-docker-cluster - discovery.seed_hosts=es02,es03 - cluster.initial_master_nodes=es01,es02,es03 - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - TZ="Asia/Shanghai" - node.master=true - node.data=true - http.cors.enabled=true - http.cors.allow-origin=* ulimits: memlock: soft: -1 hard: -1 volumes: - /data/docker01/es/data:/usr/share/elasticsearch/data - /data/docker01/es/logs:/usr/share/elasticsearch/logs ports: - 9200:9200 networks: - elastic es02: image: docker.elastic.co/elasticsearch/elasticsearch:7.13.2 container_name: es02 environment: - node.name=es02 - cluster.name=es-docker-cluster - discovery.seed_hosts=es01,es03 - cluster.initial_master_nodes=es01,es02,es03 - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - TZ="Asia/Shanghai" - node.master=true - node.data=true - http.cors.enabled=true - http.cors.allow-origin=* ulimits: memlock: soft: -1 hard: -1 volumes: - /data/docker/es02/data:/usr/share/elasticsearch/data - /data/docker/es02/logs/logs:/usr/share/elasticsearch/logs ports: - 9201:9200 - 9301:9300 networks: - elastic es03: image: docker.elastic.co/elasticsearch/elasticsearch:7.13.2 container_name: es03 environment: - node.name=es03 - cluster.name=es-docker-cluster - discovery.seed_hosts=es01,es02 - cluster.initial_master_nodes=es01,es02,es03 - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - TZ="Asia/Shanghai" - node.master=true - node.data=true - http.cors.enabled=true - http.cors.allow-origin=* ulimits: memlock: soft: -1 hard: -1 volumes: - /data/docker/es03/data:/usr/share/elasticsearch/data - /data/docker/es03/logs:/usr/share/elasticsearch/logs ports: - 9202:9200 - 9302:9300 networks: - elastic kibana: image: docker.elastic.co/kibana/kibana:7.13.2 container_name: kibana environment: - I18N_LOCALE=zh-CN ports: - "5601:5601" links: - es01:vm01 depends_on: - es01 - es02 - es03 networks: - elastic cerebro: image: lmenezes/cerebro:0.9.2 container_name: cerebro ports: - "19000:9000" links: - es01:vm01 co妹妹and: - -Dhosts.0.host=http://vm01:9200 networks: - elastic elasticsearch-head: image: wallbase/elasticsearch-head:6-alpine container_name: elasticsearch-head environment: TZ: 'Asia/Shanghai' ports: - '9100:9100' networks: - elasticvolumes: data01: driver: local data02: driver: local data03: driver: local networks: elastic: driver: bridge
装置docker-compose
sudo apt install docker-compose -y
启用
docker-compose up -d
检察容器形状
docker ps -a
尝试可否会见胜利:http://10.1.3.55:9200
移除容器
docker-compose down
Docker布置ES7并设置长途会见
检察ES的镜像版原:https://hub.docker.com/_/elasticsearch/tags
docker pull elasticsearch:7.17.5
创立容器
docker run -d --name es7 --restart=always -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" elasticsearch:7.17.5
加入容器
docker exec -it es7 /bin/bash
截至设置:留神,颠末真测,那一步设置是没有需要的,间接便撑持长途会见。
# 加入设置文献夹cd config# 改正设置文献vi elasticsearch.yml#参加 跨域设置http.cors.enabled: truehttp.cors.allow-origin: "*"
沉开容器
docker restart es7
浏览器会见:http://172.19.182.206:9200
Docker拆修ES8散群
情况分析
- 宿主机:Windows10
- 假造机硬件:VMWare16
- 假造机:ubuntu20
装置docker-compose,施行号令:
sudo apt install docker-compose -y
改正体系设置,假设您的情况是Linux,留神要干如下操纵,不然es可以会启用失利
sudo vim /etc/sysctl.conf# 正在尾部增加一止设置vm.max_map_count = 262144#保管 参加,施行号令生效sudo sysctl -p
编辑设置文献,再次确认交下来事情的目标:用docker-compose快速布置es散群+kibana,那个散群是戴宁静查抄的(自签证书籍+账号暗码)
找个洁净目次,新修名为.env的文献,实质以下,那是给docker-compose用到的设置文献每一个设置项皆有具体正文分析
# elastic账号的暗码 (最少六个字符)ELASTIC_PASSWORD=zhangdapeng520# kibana_system账号的暗码 (最少六个字符),该账号仅用于一点儿kibana的内部树立,不克不及用去盘问esKIBANA_PASSWORD=zhangdapeng520# es战kibana的版原STACK_VERSION=8.2.2# 散群名字CLUSTER_NAME=docker-cluster# x-pack宁静树立,那里挑选basic,根底树立,假设挑选了trail,则会正在30天后到期LICENSE=basic#LICENSE=trial# es映照到宿主机的的端心ES_PORT=9200# kibana映照到宿主机的的端心KIBANA_PORT=5601# es容器的内乱存巨细,请按照自己软件情况调解MEM_LIMIT=1073741824# 定名空间,会体现在容器名的前缀上COMPOSE_PROJECT_NAME=demo
而后是docker-compose.yaml文献,那里面会用到方才创立的.env文献,一同创立了五个容器:启用操纵、三个es构成散群,一个kibana(多道一句:民间剧本,定心用)
version: "2.2"services: setup: image: elasticsearch:${STACK_VERSION} volumes: - certs:/usr/share/elasticsearch/config/certs user: "0" co妹妹and: > bash -c ' if [ x${ELASTIC_PASSWORD} == x ]; then echo "Set the ELASTIC_PASSWORD environment variable in the .env file"; exit 1; elif [ x${KIBANA_PASSWORD} == x ]; then echo "Set the KIBANA_PASSWORD environment variable in the .env file"; exit 1; fi; if [ ! -f config/certs/ca.zip ]; then echo "Creating CA"; bin/elasticsearch-certutil ca --silent --pem -out config/certs/ca.zip; unzip config/certs/ca.zip -d config/certs; fi; if [ ! -f config/certs/certs.zip ]; then echo "Creating certs"; echo -ne \ "instances:\n"\ " - name: es01\n"\ " dns:\n"\ " - es01\n"\ " - localhost\n"\ " ip:\n"\ " - 127.0.0.1\n"\ " - name: es02\n"\ " dns:\n"\ " - es02\n"\ " - localhost\n"\ " ip:\n"\ " - 127.0.0.1\n"\ " - name: es03\n"\ " dns:\n"\ " - es03\n"\ " - localhost\n"\ " ip:\n"\ " - 127.0.0.1\n"\ > config/certs/instances.yml; bin/elasticsearch-certutil cert --silent --pem -out config/certs/certs.zip --in config/certs/instances.yml --ca-cert config/certs/ca/ca.crt --ca-key config/certs/ca/ca.key; unzip config/certs/certs.zip -d config/certs; fi; echo "Setting file permissions" chown -R root:root config/certs; find . -type d -exec chmod 750 \{\} \;; find . -type f -exec chmod 640 \{\} \;; echo "Waiting for Elasticsearch availability"; until curl -s --cacert config/certs/ca/ca.crt https://es01:9200 | grep -q "missing authentication credentials"; do sleep 30; done; echo "Setting kibana_system password"; until curl -s -X POST --cacert config/certs/ca/ca.crt -u elastic:${ELASTIC_PASSWORD} -H "Content-Type: application/json" https://es01:9200/_security/user/kibana_system/_password -d "{\"password\":\"${KIBANA_PASSWORD}\"}" | grep -q "^{}"; do sleep 10; done; echo "All done!"; ' healthcheck: test: ["CMD-SHELL", "[ -f config/certs/es01/es01.crt ]"] interval: 1s timeout: 5s retries: 120 es01: depends_on: setup: condition: service_healthy image: elasticsearch:${STACK_VERSION} volumes: - certs:/usr/share/elasticsearch/config/certs - esdata01:/usr/share/elasticsearch/data ports: - ${ES_PORT}:9200 environment: - node.name=es01 - cluster.name=${CLUSTER_NAME} - cluster.initial_master_nodes=es01,es02,es03 - discovery.seed_hosts=es02,es03 - ELASTIC_PASSWORD=${ELASTIC_PASSWORD} - bootstrap.memory_lock=true - xpack.security.enabled=true - xpack.security.http.ssl.enabled=true - xpack.security.http.ssl.key=certs/es01/es01.key - xpack.security.http.ssl.certificate=certs/es01/es01.crt - xpack.security.http.ssl.certificate_authorities=certs/ca/ca.crt - xpack.security.http.ssl.verification_mode=certificate - xpack.security.transport.ssl.enabled=true - xpack.security.transport.ssl.key=certs/es01/es01.key - xpack.security.transport.ssl.certificate=certs/es01/es01.crt - xpack.security.transport.ssl.certificate_authorities=certs/ca/ca.crt - xpack.security.transport.ssl.verification_mode=certificate - xpack.license.self_generated.type=${LICENSE} mem_limit: ${MEM_LIMIT} ulimits: memlock: soft: -1 hard: -1 healthcheck: test: [ "CMD-SHELL", "curl -s --cacert config/certs/ca/ca.crt https://localhost:9200 | grep -q 'missing authentication credentials'", ] interval: 10s timeout: 10s retries: 120 es02: depends_on: - es01 image: elasticsearch:${STACK_VERSION} volumes: - certs:/usr/share/elasticsearch/config/certs - esdata02:/usr/share/elasticsearch/data environment: - node.name=es02 - cluster.name=${CLUSTER_NAME} - cluster.initial_master_nodes=es01,es02,es03 - discovery.seed_hosts=es01,es03 - bootstrap.memory_lock=true - xpack.security.enabled=true - xpack.security.http.ssl.enabled=true - xpack.security.http.ssl.key=certs/es02/es02.key - xpack.security.http.ssl.certificate=certs/es02/es02.crt - xpack.security.http.ssl.certificate_authorities=certs/ca/ca.crt - xpack.security.http.ssl.verification_mode=certificate - xpack.security.transport.ssl.enabled=true - xpack.security.transport.ssl.key=certs/es02/es02.key - xpack.security.transport.ssl.certificate=certs/es02/es02.crt - xpack.security.transport.ssl.certificate_authorities=certs/ca/ca.crt - xpack.security.transport.ssl.verification_mode=certificate - xpack.license.self_generated.type=${LICENSE} mem_limit: ${MEM_LIMIT} ulimits: memlock: soft: -1 hard: -1 healthcheck: test: [ "CMD-SHELL", "curl -s --cacert config/certs/ca/ca.crt https://localhost:9200 | grep -q 'missing authentication credentials'", ] interval: 10s timeout: 10s retries: 120 es03: depends_on: - es02 image: elasticsearch:${STACK_VERSION} volumes: - certs:/usr/share/elasticsearch/config/certs - esdata03:/usr/share/elasticsearch/data environment: - node.name=es03 - cluster.name=${CLUSTER_NAME} - cluster.initial_master_nodes=es01,es02,es03 - discovery.seed_hosts=es01,es02 - bootstrap.memory_lock=true - xpack.security.enabled=true - xpack.security.http.ssl.enabled=true - xpack.security.http.ssl.key=certs/es03/es03.key - xpack.security.http.ssl.certificate=certs/es03/es03.crt - xpack.security.http.ssl.certificate_authorities=certs/ca/ca.crt - xpack.security.http.ssl.verification_mode=certificate - xpack.security.transport.ssl.enabled=true - xpack.security.transport.ssl.key=certs/es03/es03.key - xpack.security.transport.ssl.certificate=certs/es03/es03.crt - xpack.security.transport.ssl.certificate_authorities=certs/ca/ca.crt - xpack.security.transport.ssl.verification_mode=certificate - xpack.license.self_generated.type=${LICENSE} mem_limit: ${MEM_LIMIT} ulimits: memlock: soft: -1 hard: -1 healthcheck: test: [ "CMD-SHELL", "curl -s --cacert config/certs/ca/ca.crt https://localhost:9200 | grep -q 'missing authentication credentials'", ] interval: 10s timeout: 10s retries: 120 kibana: depends_on: es01: condition: service_healthy es02: condition: service_healthy es03: condition: service_healthy image: kibana:${STACK_VERSION} volumes: - certs:/usr/share/kibana/config/certs - kibanadata:/usr/share/kibana/data ports: - ${KIBANA_PORT}:5601 environment: - SERVERNAME=kibana - ELASTICSEARCH_HOSTS=https://es01:9200 - ELASTICSEARCH_USERNAME=kibana_system - ELASTICSEARCH_PASSWORD=${KIBANA_PASSWORD} - ELASTICSEARCH_SSL_CERTIFICATEAUTHORITIES=config/certs/ca/ca.crt mem_limit: ${MEM_LIMIT} healthcheck: test: [ "CMD-SHELL", "curl -s -I http://localhost:5601 | grep -q 'HTTP/1.1 302 Found'", ] interval: 10s timeout: 10s retries: 120volumes: certs: driver: local esdata01: driver: local esdata02: driver: local esdata03: driver: local kibanadata: driver: local
设置docker海内镜像,改正设置文献
sudo vim /etc/docker/daemon.json
改正为以下实质:
{ "registry-mirrors": [ "https://registry.docker-cn.com", "https://hub-mirror.c.163.com", "https://mirror.百度bce.com" ]}
以后从头启用效劳。
sudo systemctl daemon-reloadsudo systemctl restart docker
启用容器,正在docker-compose.yaml文献地点目次,施行号令docker-compose up -d启用统统容器
sudo docker-compose up -d
会见:http://localhost:5601/
- 账号:elastic
- 暗码:zhangdapeng520
复造散群的cert:
docker cp demo_es01_1:/usr/share/elasticsearch/config/certs/ca/ca.crt .
宿主机装置ElasticSearch
Win10装置ES8
装置JDK17,假设要使用ES8,JDK的版原倡议使用17。下载地点:https://www.injdk.cn/
装置ES8,下载:https://www.elastic.co/cn/downloads/elasticsearch
Ubuntu22装置Elasticsearch7
导进保存库的GPG稀钥:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
号令施行胜利,该当输出OK,那表示着稀钥已经胜利导进,而且去自此保存库的硬件包将被望为受信赖的硬件包。将Elasticsearch保存库增加到apt的sources.list:
sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list'
假设要装置Elasticsearch的晚期版原,将上面号令中的7.x变动为所需的版原。apt装置Elasticsearch:
sudo apt updatesudo apt install elasticsearch
装置历程完毕后,Elasticsearch效劳将没有会主动启用。要启用效劳并启动效劳运行,请施行如下操纵:
sudo systemctl enable --now elasticsearch.service
要考证Elasticsearch可否在运行,请使用curl将HTTP恳求收收到9200localhost 上的端心:
curl -X GET "localhost:9200/"
该当瞅到类似如下实质:
{ "name" : "parasaga", "cluster_name" : "elasticsearch", "cluster_uuid" : "An80wXNCSduuQZ1g3qi4iQ", "version" : { "number" : "7.13.2", "build_flavor" : "default", "build_type" : "deb", "build_hash" : "4d960a0733be83dd2543ca018aa4ddc42e956800", "build_date" : "2021-06-10T21:01:55.251515791Z", "build_snapshot" : false, "lucene_version" : "8.8.2", "minimum_wire_compatibility_version" : "6.8.0", "minimum_index_compatibility_version" : "6.0.0-beta1" }, "tagline" : "You Know, for Search"}
Ubuntu22装置Kibana7
下载:https://www.elastic.co/fr/downloads/past-releases/kibana-7-10-0
装置:
sudo dpkg -i kibana-7.10.0-amd64.deb
Kibana装置 后没有会主动启用。怎样启用战中断 Kibana,依靠取您的操纵体系。使用 SysV init 仍是 systemd (新的刊行版使用),能够颠末如下号令去显现使用的是哪一种:
ps -p 1
使用 SysV init 运行 Kibana,使用 update-rc.d 号令设置 Kibana 启机主动启用:
sudo update-rc.d kibana defaults 95 10
Kibana 能够使用 service 号令去启用战中断:
sudo -i service kibana startsudo -i service kibana stop
不论甚么启事,假设 Kibana 启用失利,它会输出失利启事到 STDOUT。日记文献正在 /var/log/kibana/ 目次上面。
使用 systemd 运行 Kibana,设置 Kibana 启机主动启用,施行如下号令:
sudo systemctl daemon-reloadsudo systemctl enable kibana.service
Kibana 启用战中断号令以下:
sudo systemctl start kibana.servicesudo systemctl stop kibana.service
那些号令没有会供给所有对于 Kibana 可否胜利启用的反应疑息。而是将那些疑息写进日记文献中,日记文献的职位正在 /var/log/kibana/ 。
此时能够会见:http://localhost:5601
正在 Debian 包构造中,Debian 会把设置文献、日记战数据目次搁正在以下职位:
Kibana 默认情况下从 $KIBANA_HOME/config/kibana.yml 减载设置文献。该设置文献的格局正在 设置 Kibana 中有相干分析。
Kibana server 启用时从 kibana.yml 文献中读与设置属性。Kibana 默认设置 localhost:5601 。改动主机战端标语,大概跟尾其余机械上的 Elasticsearch,需要革新 kibana.yml 文献。也能够启动 SSL 战树立其余选项。
server.port:默认值: 5601 Kibana 由后端效劳器供给效劳,该设置指定使用的端标语。server.host:默认值: "localhost" 指定后端效劳器的主机地点。server.basePath:假设启动了代办署理,指定 Kibana 的路子,该设置项只作用 Kibana 天生的 URLs,转收恳求到 Kibana 时期理睬移除根底路子值,该设置项不克不及以斜杠 (/)末端。server.maxPayloadBytes:默认值: 1048576效劳 器恳求的最年夜背载,单元字节。server.name:默认值: "您的主机名" Kibana 真例对于中展示的称呼。server.defaultRoute:默认值: "/app/kibana" Kibana 的默认路子,该设置项可改动 Kibana 的登录页里。elasticsearch.url:默认值: "http://localhost:9200" 用去处置统统盘问的 Elasticsearch 真例的 URL 。elasticsearch.preserveHost:默认值: true 该树立项的值为 true 时,Kibana 使用 server.host 设定的主机名,该树立项的值为 false 时,Kibana 使用主机的主机名去跟尾 Kibana 真例。kibana.index:默认值: ".kibana" Kibana 使用 Elasticsearch 中的索引去保存保留的检索,可望化控件和仪容板。假设不索引,Kibana 会创立一个新的索引。kibana.defaultAppId:默认值: "discover" 默认减载的使用。tilemap.url:Kibana 用去正在 tile 舆图可望化组件中展示舆图效劳的 URL。默认时,Kibana 从内部的元数据效劳读与 url,用户也能够笼盖该参数,使用自己的 tile 舆图效劳。比方:"https://tiles.elastic.co/v2/default/{z}/{x}/{y}.png?elastic_tile_service_tos=agree&my_app_name=kibana"tilemap.options.minZoom:默认值: 1 最小缩搁级别。tilemap.options.maxZoom:默认值: 10 最年夜缩搁级别。tilemap.options.attribution:默认值: "© [Elastic Tile Service](https://www.elastic.co/elastic-tile-service)" 舆图属性字符串。tilemap.options.subdomains:效劳使用的两级域名列表,用 {s} 指定两级域名的 URL 地点。elasticsearch.username: 战 elasticsearch.password:Elasticsearch 树立了根本的权力认证,该设置项供给了用户名战暗码,用于 Kibana 启用时保护索引。Kibana 用户仍需要 Elasticsearch 由 Kibana效劳 端代办署理的认证。server.ssl.enabled默认值: "false" 对于到浏览器真个恳求启动 SSL,设为 true 时, server.ssl.certificate 战 server.ssl.key 也要树立。server.ssl.certificate: 战 server.ssl.key:PEM 格局 SSL 证书籍战 SSL 稀钥文献的路子。server.ssl.keyPassphrase解稀公钥的心令,该树立项可选,因为稀钥可以不减稀。server.ssl.certificateAuthorities可托任 PEM 编码的证书籍文献路子列表。server.ssl.supportedProtocols默认值: TLSv一、TLSv1.一、TLSv1.2 版原撑持的和谈,有用的和谈范例: TLSv1 、 TLSv1.1 、 TLSv1.2 。server.ssl.cipherSuites默认值: ECDHE-RSA-AES128-GCM-SHA256, ECDHE-ECDSA-AES128-GCM-SHA256, ECDHE-RSA-AES256-GCM-SHA384, ECDHE-ECDSA-AES256-GCM-SHA384, DHE-RSA-AES128-GCM-SHA256, ECDHE-RSA-AES128-SHA256, DHE-RSA-AES128-SHA256, ECDHE-RSA-AES256-SHA384, DHE-RSA-AES256-SHA384, ECDHE-RSA-AES256-SHA256, DHE-RSA-AES256-SHA256, HIGH,!aNULL, !eNULL, !EXPORT, !DES, !RC4, !MD5, !PSK, !SRP, !CAMELLIA. 具体魄式战有用参数可颠末[OpenSSL cipher list format documentation](https://www.openssl.org/docs/man1.0.2/apps/ciphers.html#CIPHER-LIST-FORMAT)取得 。elasticsearch.ssl.certificate: 战 elasticsearch.ssl.key:可选设置项,供给 PEM格局 SSL 证书籍战稀钥文献的路子。那些文献保证 Elasticsearch 后端使用异常的稀钥文献。elasticsearch.ssl.keyPassphrase解稀公钥的心令,该树立项可选,因为稀钥可以不减稀。elasticsearch.ssl.certificateAuthorities:指定用于 Elasticsearch 真例的 PEM 证书籍文献路子。elasticsearch.ssl.verificationMode:默认值: full 掌握证书籍的认证,可用的值有 none 、 certificate 、 full 。full 施行主机名考证,certificate 没有施行主机名考证。elasticsearch.pingTimeout:默认值: elasticsearch.requestTimeout setting 的值,等候 Elasticsearch 的照应时间。elasticsearch.requestTimeout:默认值: 30000等候 后端或者 Elasticsearch 的照应时间,单元微秒,该值必需为邪整数。elasticsearch.requestHeadersWhitelist:默认值: [ 'authorization' ] Kibana 客户端收收到 Elasticsearch 头体,收收 no 头体,树立该值为[]。elasticsearch.customHeaders:默认值: {} 收朝 Elasticsearch的头体战值,不论 elasticsearch.requestHeadersWhitelist 怎样设置,所有自界说的头体没有会被客户端头体笼盖。elasticsearch.shardTimeout:默认值: 0 Elasticsearch等候 分片照应时间,单元微秒,0即禁用。elasticsearch.startupTimeout:默认值: 5000 Kibana 启用时等候 Elasticsearch 的时间,单元微秒。pid.file:指定 Kibana 的历程 ID 文献的路子。logging.dest:默认值: stdout 指定 Kibana 日记输出的文献。logging.silent:默认值: false 该值设为 true 时,避免统统日记输出。logging.quiet:默认值: false 该值设为 true 时,避免除毛病疑息之外的统统日记输出。logging.verbose默认值: false 该值设为 true 时,忘下统统工作包罗体系使用疑息战统统恳求的日记。ops.interval默认值: 5000 树立体系战历程与样距离,单元奇妙,最小值100。status.allowAnonymous默认值: false假设 启动了权力,该项树立为 true 即许可统统非受权用户会见 Kibana效劳 端 API 战形状页里。cpu.cgroup.path.override假设挂载面跟 /proc/self/cgroup 没有不合,笼盖 cgroup cpu 路子。cpuacct.cgroup.path.override假设挂载面跟 /proc/self/cgroup 没有不合,笼盖 cgroup cpuacct 路子。console.enabled默认值: true 设为 false 去禁用掌握台,切换该值后效劳端下次启用时会沉更生成资本文献,因而会招致页里效劳有面提早。elasticsearch.tribe.url:Elasticsearch tribe 真例的 URL,用于统统盘问。elasticsearch.tribe.username: 战 elasticsearch.tribe.password:Elasticsearch 树立了根本的权力认证,该设置项供给了用户名战暗码,用于 Kibana 启用时保护索引。Kibana 用户仍需要 Elasticsearch 由 Kibana效劳 端代办署理的认证。elasticsearch.tribe.ssl.certificate: 战 elasticsearch.tribe.ssl.key:可选设置项,供给 PEM 格局 SSL 证书籍战稀钥文献的路子。那些文献保证 Elasticsearch 后端使用异常的稀钥文献。elasticsearch.tribe.ssl.keyPassphrase解稀公钥的心令,该树立项可选,因为稀钥可以不减稀。elasticsearch.tribe.ssl.certificateAuthorities:指定用于 Elasticsearch tribe 真例的 PEM 证书籍文献路子。elasticsearch.tribe.ssl.verificationMode:默认值: full 掌握证书籍的认证,可用的值有 none 、 certificate 、 full 。full 施行主机名考证, certificate 没有施行主机名考证。elasticsearch.tribe.pingTimeout:默认值: elasticsearch.tribe.requestTimeout setting 的值,等候 Elasticsearch 的照应时间。elasticsearch.tribe.requestTimeout:Default: 30000等候 后端或者 Elasticsearch 的照应时间,单元微秒,该值必需为邪整数。elasticsearch.tribe.requestHeadersWhitelist:默认值: [ 'authorization' ] Kibana 收朝 Elasticsearch 的客户端头体,收收 no 头体,树立该值为[]。elasticsearch.tribe.customHeaders:默认值: {} 收朝 Elasticsearch的头体战值,不论 elasticsearch.tribe.requestHeadersWhitelist 怎样设置,所有自界说的头体没有会被客户端头体笼盖。
使用Docker装置Es战Kibana
创立收集
因为咱们借需要布置 kibana 容器,因而需要让 es 战 kibana 容器互联。那里先创立一个收集:
docker network create es-net
减载镜像
那里咱们接纳elasticsearch的7.4.*版原的镜像
docker pull elasticsearch:7.17.5docker pull kibana:7.17.5
启用 elasticsearch7
sudo mkdir /datasudo chown zhangdapeng /datamkdir -p /data/docker/elasticsearch/datamkdir -p /data/docker/elasticsearch/pluginsmkdir -p /data/docker/elasticsearch/logs
创立容器:
docker run -d --name elasticsearch -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" -e "discovery.type=single-node" -v /data/docker/elasticsearch/data:/usr/share/elasticsearch/data -v /data/docker/elasticsearch/plugins:/usr/share/elasticsearch/plugins --privileged --network es-net -p 9200:9200 -p 9300:9300 elasticsearch:7.17.5
启用 kibana
创立容器:
docker run -d --name kibana -e ELASTICSEARCH_HOSTS=http://elasticsearch:9200 --network=es-net -p 5601:5601 kibana:7.17.5
树立ElasticSearch的暗码
新修文献:
vim /data/docker/elasticsearch/elasticsearch.yml# 增加以下实质cluster.name: "elasticsearch"network.host: 0.0.0.0#xpack.security.enabled: truehttp.cors.allow-headers: Authorizationxpack.security.enabled: truexpack.security.transport.ssl.enabled: true
启用docker:
docker run -d --restart=always --user=root --privileged=true --network es-net --name elasticsearch -p 9200:9200 -p 9300:9300 --ulimit nofile=65536:65536 -v /data/docker/elasticsearch/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /data/docker/elasticsearch/data:/usr/share/elasticsearch/data -v /data/docker/elasticsearch/logs:/usr/share/elasticsearch/logs -v /data/docker/elasticsearch/plugins:/usr/share/elasticsearch/plugins -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms2G -Xmx2G" elasticsearch:7.17.5
树立暗码:
docker exec -it elasticsearch bashelasticsearch-setup-passwords interactive# 局部挖:zhangdapeng520
使用以下账号暗码会见:http://localhost:9200/
- 账号:elastic
- 暗码:zhangdapeng520
树立Kibana的暗码
创立文献:
mkdir -p /data/docker/kibanavim /data/docker/kibana/kibana.yml
增加以下实质:
# Default Kibana configuration for docker targetserver.host: "0"server.shutdownTimeout: "5s"elasticsearch.hosts: [ "http://10.1.3.86:9200" ]monitoring.ui.container.elasticsearch.enabled: truei18n.locale: "zh-CN"# 此处树立elastic的用户名战暗码elasticsearch.username: elasticelasticsearch.password: zhangdapeng520
简略已经有容器:
docker stop kibanadocker rm kibana
创立容器:
docker run -d --name kibana -e ELASTICSEARCH_HOSTS=http://elasticsearch:9200 --network=es-net -p 5601:5601 -v /data/docker/kibana/kibana.yml:/usr/share/kibana/config/kibana.yml kibana:7.17.5
检察日记:
docker logs -f --tail=100 kibana
使用以下账号暗码会见:http://localhost:5601/
- 账号:elastic
- 暗码:zhangdapeng520
告白
NodeJS+MongoDB+GraphQL名目真战班
现拉出《NodeJS+MongoDB+GraphQL名目真战班》,纲领以下:
- 《拆修JavaScript齐栈开辟情况》
- 《NodeJS战GraphQL建立交际条记API》
- 《使用Express开辟Web使用》
- 《第一个GraphQL API》
- 《鉴于GraphQL的条记删编削查API》
- 《NodeJS调整MongoDB》
- 《GraphQL调整MongoDB》
- 《GraphQL模块化开辟》
- 《GraphQL完毕删编削查API》
- 《GraphQL自界说日期时间范例》
- 《NodeJS暗码减稀战校验》
- 《NodeJS完毕JWT Token》
- 《GraphQL调整JWT完毕用户备案登录》
- 《GraphQL恳求高低文的用法》
- 《GraphQL掌握用户新删战简略条记权力》
- 《GraphQL权力模块设想》
- 《GraphQL模块化开辟Resolver》
- 《MongoDB分表操纵》
- 《GraphQL完毕珍藏条记功用》
- 《GraphQL交心宁静战分页》
报名方法:
- 联系德律风:18010070052
- 联系微疑:18010070052
- 报名价钱:2999元/人
- 报名方法:微疑/付出宝转账
告白位出租
原公家号交告白位,20元1个告白,故意背的欢送联系尔微疑:18010070052
归纳
以上即是原文要分享的局部实质了,假设您对于跨端开辟女伶 href="https://www.taojin168.com/cloud/" target="_blank">小法式战APP感兴致,念要检察更多的文章,欢送存眷尔的公家号“Python公学”。若其余仄台代码显现紊乱,各人也能够颠末公家号检察排版准确的源码哈。
挨赏20元而后批评“已经挨赏”,能够获得原文的统统源码哦。
尔是年夜鹏,专一于IT范围的编程常识分享,供给付费的小我私家IT妙技提拔效劳,如有相干需要,欢送留行或者公疑尔。
咱们下篇文章再会~ |