国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Centos8 部署 ElasticSearch 集群并搭建 ELK,基于Logstash同步MyS

bang590 / 931人閱讀

摘要:如果這不起作用,請將驅(qū)動程序移到下方,并且不要在配置文件中提供任何驅(qū)動程序路徑參考鏈接多數(shù)原因是文件渠道文件配置出錯,檢查一下管道配置文件里面的建議不要使用,會報錯誤重新配置了權(quán)限還是報錯,暫時沒找到原因,所以換了個用戶就行了

Centos8安裝Docker

1.更新一下yum
[root@VM-24-9-centos ~]# yum -y update
2.安裝containerd.io
# centos8默認(rèn)使用podman代替docker,所以需要containerd.io[root@VM-24-9-centos ~]# yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm -y# 安裝一些其他依賴[root@VM-24-9-centos ~]# yum install -y yum-utils device-mapper-persistent-data lvm2[root@VM-24-9-centos ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
3.安裝Docker
[root@VM-24-9-centos ~]# yum install -y docker-ce
4.啟動Docker
# 啟動docker[root@VM-24-9-centos ~]# systemctl start docker# 設(shè)置開機(jī)自啟[root@VM-24-9-centos ~]# systemctl enable docker
5.設(shè)置容器開機(jī)自啟及其他命令
[root@VM-16-7-centos ~]# docker update --restart=always 容器名--restart具體參數(shù)值詳細(xì)信息:	no:容器退出時,不重啟容器  on-failure:只有在非0狀態(tài)退出時才從新啟動容器  always:無論退出狀態(tài)是如何,都重啟容器# 根據(jù)容器名模糊批量停止/刪除容器# *號表示模糊查詢[root@VM-24-9-centos ~]# docker stop $(docker ps -q -f name="容器名*") # 批量刪除[root@VM-24-9-centos ~]# docker rm $(docker ps -qa -f name="ES*")

ELK部署

部署ElasticSearch集群

1.拉取鏡像及批量生成配置文件
# 拉取鏡像[root@VM-24-9-centos ~]# docker pull elasticsearch:7.14.2# 修改虛擬內(nèi)存限制,以及開啟端口轉(zhuǎn)發(fā)[root@VM-24-9-centos etc]# vim /etc/sysctl.confvm.max_map_count=262144net.ipv4.ip_forward = 1[root@VM-24-9-centos etc]# /sbin/sysctl -p# 生成配置文件及目錄for port in $(seq 1 3); /do /mkdir -p /data/elk/es/node-${port}/confmkdir -p /data/elk/es/node-${port}/datamkdir -p /data/elk/pluginschmod 777 /data/elk/es/node-${port}/datatouch /data/elk/es/node-${port}/conf/es.ymlcat << EOF >>/data/elk/es/node-${port}/conf/es.ymlcluster.name: jinxnode.name: node${port}node.master: truenode.data: truebootstrap.memory_lock: falsenetwork.host: 0.0.0.0http.port: 920${port}transport.tcp.port: 930${port}discovery.seed_hosts: ["x.x.x.x:9301","x.x.x.x:9302","x.x.x.x:9303"]cluster.initial_master_nodes: ["node1","node2","node3"]cluster.routing.allocation.cluster_concurrent_rebalance: 32cluster.routing.allocation.node_concurrent_recoveries: 32cluster.routing.allocation.node_initial_primaries_recoveries: 32http.cors.enabled: truehttp.cors.allow-origin: "*"discovery.zen.minimum_master_nodes: 2EOFdone# 目錄結(jié)構(gòu)如下[root@VM-24-9-centos data]# tree.└── elk    ├── es    │?? ├── node-1    │?? │?? ├── conf    │?? │?? │?? └── es.yml    │?? │?? └── data    │?? ├── node-2    │?? │?? ├── conf    │?? │?? │?? └── es.yml    │?? │?? └── data    │?? └── node-3    │??     ├── conf    │??     │?? └── es.yml    │??     └── data    └── plugins12 directories, 3 files
2.批量創(chuàng)建容器及查看集群信息
# 批量創(chuàng)建容器for port in $(seq 1 3); /do /docker run -e ES_JAVA_OPTS="-Xms512m -Xmx512m" /-d -p 920${port}:920${port} -p 930${port}:930${port} /-e ES_MIN_MEM=128m /-e ES_MAX_MEM=2048m /-v /data/elk/es/node-${port}/conf/es.yml:/usr/share/elasticsearch/config/elasticsearch.yml /-v /data/elk/es/node-${port}/data/:/usr/share/elasticsearch/data/ /-v /data/elk/es/plugins/:/usr/share/elasticsearch/plugins  /--name es-${port} /elasticsearch:7.14.2done# 查看單個節(jié)點信息[root@VM-24-9-centos ~]# curl http://x.x.x.x:9201/{  "name" : "node1",  "cluster_name" : "jinx",  "cluster_uuid" : "Vjb7cu6fQ6y2-ZWk0YGIiQ",  "version" : {    "number" : "7.2.0",    "build_flavor" : "default",    "build_type" : "docker",    "build_hash" : "508c38a",    "build_date" : "2019-06-20T15:54:18.811730Z",    "build_snapshot" : false,    "lucene_version" : "8.0.0",    "minimum_wire_compatibility_version" : "6.8.0",    "minimum_index_compatibility_version" : "6.0.0-beta1"  },  "tagline" : "You Know, for Search"}# 查看集群信息[root@VM-24-9-centos ~]# curl http://x.x.x.x:9201/_cat/nodes?pretty172.17.0.2 37 97 0 0.00 0.00 0.08 mdi * node1172.17.0.4 35 97 0 0.00 0.00 0.08 mdi - node3172.17.0.3 39 97 1 0.00 0.00 0.08 mdi - node2172.17.0.6 34 97 1 0.00 0.00 0.08 mdi - node4
3.安裝IK分詞器

? 先下載離線包:https://github.com/medcl/elasticsearch-analysis-ik/releases 然后把離線包拷貝到 /data/elk/es/plugins/analysis-ik 目錄解壓

# 安裝 unzip 解壓工具柜[root@VM-24-9-centos plugins]# yum install unzip# 創(chuàng)建 analysis-ik 目錄,并把壓縮包復(fù)制到此目錄,并解壓,然后重啟容器即可,因為容器掛載了 plugins 目錄,重啟后便會生效[root@VM-24-9-centos elk]# mkdir /data/elk/es/plugins/analysis-ik[root@VM-24-9-centos analysis-ik]# unzip elasticsearch-analysis-ik-7.14.2.zip[root@VM-24-9-centos analysis-ik]# docker restart $(docker ps -aq -f name="es*")

使用Nginx做集群負(fù)載均衡

1.獲取鏡像
# 拉取鏡像 此處我們拉取的是官方最新鏡像,其它版本可以去DockerHub查詢[root@VM-24-9-centos ~]# docker pull nginx
2.創(chuàng)建容器
# 創(chuàng)建容器 第一個nginx是容器名,第二個nginx是鏡像名[root@VM-24-9-centos ~]# docker run -d -p 9200:9200 --name nginx nginx
3.把容器內(nèi)的配置文件等復(fù)制到容器外用于掛載
# nginx的配置文件日志文件及默認(rèn)的頁面分別放于容器內(nèi)的 /etc/nginx /usr/share/nginx/html /var/log/nginx 中,我們需要將其掛載到容器外部# 創(chuàng)建三個文件夾 conf html logs[root@VM-24-9-centos data]# mkdir -p /data/nginx/{conf.d,html,logs}# 將容器內(nèi)的 nginx.conf配置文件和default.conf配置文件復(fù)制出來[root@VM-24-9-centos data]# docker cp nginx:/usr/share/nginx/html /data/nginx[root@VM-24-9-centos data]# docker cp nginx:/etc/nginx/nginx.conf /data/nginx[root@VM-24-9-centos data]# docker cp nginx:/etc/nginx/conf.d/default.conf /data/nginx/conf.d/default.conf# 查看目錄結(jié)構(gòu)[root@VM-24-9-centos nginx]# cd /data/nginx[root@VM-24-9-centos nginx]# lltotal 16drwxr-xr-x 2 root root 4096 Nov 16 10:48 conf.ddrwxr-xr-x 2 root root 4096 Nov 16 10:48 htmldrwxr-xr-x 2 root root 4096 Nov 16 10:48 logs-rw-r--r-- 1 root root  648 Nov  2 23:01 nginx.conf# 在 conf.d 目錄下再建一個 es.conf 配置文件用于做負(fù)載均衡[root@VM-24-9-centos conf]# vim /data/nginx/conf.d/es.confupstream es{    server x.x.x.x:9201 weight=1;    server x.x.x.x:9202 weight=1;    server x.x.x.x:9203 weight=1;}server {    listen       9200;    server_name  localhost;    #charset koi8-r;    #access_log  logs/host.access.log  main;    location / {        proxy_pass http://es;    #   root   html;    #  index  index.html index.htm;    }    error_page   500 502 503 504  /50x.html;    location = /50x.html {        root   html;    }}
4.刪除之前的容器,然后創(chuàng)建新的容器把目錄掛載上去
# 刪除容器[root@VM-24-9-centos nginx]# docker rm -f  nginx # 創(chuàng)建新的容器 --privileged=true 容器內(nèi)部對掛載的目錄擁有讀寫等特權(quán)docker run -d -p 9200:9200 --name nginx_9200 /-v /data/nginx/html:/usr/share/nginx/html /-v /data/nginx/logs:/var/log/nginx /-v /data/nginx/conf.d:/etc/nginx/conf.d /-v /data/nginx/nginx.conf:/etc/nginx/nginx.conf /--privileged=true /nginx
5.訪問負(fù)載均衡配置的地址查看是否成功
[root@VM-24-9-centos conf]# curl http://x.x.x.x:9200/{  "name" : "node3",  "cluster_name" : "jinx",  "cluster_uuid" : "5aRGIwI0T-qHks6vXzRNQQ",  "version" : {    "number" : "7.14.2",    "build_flavor" : "default",    "build_type" : "docker",    "build_hash" : "6bc13727ce758c0e943c3c21653b3da82f627f75",    "build_date" : "2021-09-15T10:18:09.722761972Z",    "build_snapshot" : false,    "lucene_version" : "8.9.0",    "minimum_wire_compatibility_version" : "6.8.0",    "minimum_index_compatibility_version" : "6.0.0-beta1"  },  "tagline" : "You Know, for Search"}

部署ElasticSearch-Head

? ElasticSearch-Head是一個管理界面,可以查看ElasticSearch相關(guān)信息

1.拉取ElasticSearch-Head鏡像
[root@VM-24-9-centos ~]#  docker pull mobz/elasticsearch-head:5
2.運行ElasticSearch-Head容器
# 創(chuàng)建容器[root@VM-24-9-centos ~]# docker run -d --name es_admin -p 9100:9100 mobz/elasticsearch-head:5# pc端訪問 IP:9100 即可用管理工具查看集群信息了

部署Kibana

1.拉取鏡像
# 拉取鏡像[root@VM-24-9-centos conf.d]# docker pull kibana:7.14.2
2.創(chuàng)建掛載目錄
# 創(chuàng)建掛載目錄[root@VM-24-9-centos conf]# mkdir -p /data/elk/kibana/# 創(chuàng)建配置文件[root@VM-24-9-centos kibana]# mkdir /data/elk/kibana/conf[root@VM-24-9-centos kibana]# vim /data/elk/kibana/conf/kibana.ymlserver.name: kibana# kibana的主機(jī)地址 0.0.0.0可表示監(jiān)聽所有IPserver.host: "0.0.0.0"# kibana訪問es的URLelasticsearch.hosts: [ "http://x.x.x.x:9200" ]elasticsearch.username: "kibana"elasticsearch.password: "123456"# 顯示登陸頁面xpack.monitoring.ui.container.elasticsearch.enabled: true# 語言i18n.locale: "zh-CN"server.publicBaseUrl: "http://x.x.x.x:9200"
3.運行容器
[root@VM-24-9-centos conf]# docker run -d -p 5601:5601 --privileged=true --name=kibana -v/data/elk/kibana/conf/kibana.yml:/usr/share/kibana/config/kibana.yml kibana:7.14.2

部署Logstash

1.拉取鏡像
[root@VM-24-9-centos ~]# docker pull logstash:7.14.2
2.創(chuàng)建容器和掛載目錄并復(fù)制配置文件
# 創(chuàng)建容器[root@VM-24-9-centos ~]# docker run -d  -p 5044:5044 --name logstash logstash:7.14.2# 創(chuàng)建掛載目錄# 給data目錄賦權(quán)限,不然啟動新容器掛載目錄的時候會報權(quán)限錯誤 ArgumentError: Path "/usr/share/logstash/data" must be a writable directory. It is not writable.[root@VM-24-9-centos ~]# mkdir -p /data/elk/logstash/data && chmod 777 /data/elk/logstash/data# 拷貝容器內(nèi)目錄[root@VM-24-9-centos ~]# docker cp logstash:/usr/share/logstash/config  /data/elk/logstash/[root@VM-24-9-centos ~]# docker cp logstash:/usr/share/logstash/data /data/elk/logstash/[root@VM-24-9-centos ~]# docker cp logstash:/usr/share/logstash/pipeline /data/elk/logstash/# 刪除容器(只是為了拿到原始配置)[root@VM-24-9-centos ~]# docker rm -f logstash# 此時目錄如下[root@VM-16-7-centos elk]# tree .└── logstash    ├── config    │?? ├── jvm.options    │?? ├── log4j2.properties    │?? ├── logstash-sample.conf    │?? ├── logstash.yml    │?? ├── pipelines.yml    │?? └── startup.options    ├── data    │?? ├── dead_letter_queue    │?? ├── queue    │?? └── uuid    └── pipeline        └── logstash.conf6 directories, 8 files 

Mysql數(shù)據(jù)同步需要 mysql 的 jdbc connector,可去官網(wǎng)(https://dev.mysql.com/downloads/connector/j/)下載 jar 包,下載的具體版本參照自己服務(wù)器中 mysql 的版本,下載之后放于 config 文件中

3.修改復(fù)制出來的配置文件

3.1 配置用于mysql和es的數(shù)據(jù)管道
# 在 pipeline 目錄下新建一個 logstash_test.conf 文件 作為mysql和es的數(shù)據(jù)管道[root@VM-24-9-centos pipeline]# vim logstash_test.confinput {    jdbc {        # 設(shè)置 MySql/MariaDB 數(shù)據(jù)庫url以及數(shù)據(jù)庫名稱        #jdbc_connection_string => "jdbc:mysql://x.x.x.x:3306/450w?useSSL=false"        jdbc_connection_string => "jdbc:mysql://x.x.x.x:3306/450w?useSSL=false"        # 用戶名和密碼        jdbc_user => "jing"        jdbc_password => "123456"        # 數(shù)據(jù)庫驅(qū)動所在位置,可以是絕對路徑或者相對路徑,MySQLConnector8.0 之后不用這個參數(shù)了,只需指定 jdbc_driver_class,并且值為 com.mysql.cj.jdbc.Driver	    jdbc_driver_library => "/usr/share/logstash/config/mysql-connector-java-8.0.26.jar"        # 驅(qū)動類名 MySQLConnector8.0 版本之后值為 com.mysql.cj.jdbc.Driver        jdbc_driver_class => "com.mysql.cj.jdbc.Driver"        # 開啟分頁        jdbc_paging_enabled => "true"        # 分頁每頁數(shù)量,可以自定義        jdbc_page_size => "100000"        # 執(zhí)行的sql文件路徑        # statement_filepath => "/usr/share/logstash/pipeline/450w-sync.sql"        statement => "SELECT * FROM test"        # 設(shè)置定時任務(wù)間隔  含義:分、時、天、月、年,全部為*默認(rèn)含義為每分鐘跑一次任務(wù)        schedule => "* * * * *"        # 索引類型        type => "_doc"        # 是否開啟記錄上次追蹤的結(jié)果,也就是上次更新的時間,這個會記錄到 last_run_metadata_path 的文件        use_column_value => true        # 記錄上一次追蹤的結(jié)果值        last_run_metadata_path => "/usr/share/logstash/pipeline/track_time"        # 如果 use_column_value 為true, 配置本參數(shù),追蹤的 column 名,可以是自增id或者時間        tracking_column => "Id"        # tracking_column 對應(yīng)字段的類型        tracking_column_type => "numeric"        # 是否清除 last_run_metadata_path 的記錄,true則每次都從頭開始查詢所有的數(shù)據(jù)庫記錄        clean_run => false        # 數(shù)據(jù)庫字段名稱大寫轉(zhuǎn)小寫        lowercase_column_names => false    }}filter {    json {        source => "message"        remove_field => ["message"]    }}output {   elasticsearch {       # es地址       hosts => ["x.x.x.x:9201","x.x.x.x:9202","x.x.x.x:9203"]       # 同步的索引名       index => "450w"       # 設(shè)置_docID和數(shù)據(jù)相同       document_id => "%{Id}"   }   # 日志輸出   stdout {       codec => json_lines   }}
3.2修改 jvm.options 配置文件

如果服務(wù)器內(nèi)存不大,可以修改jvm內(nèi)存分配,修改 /data/elk/logstash/config/jvm.options 配置文件 把 -Xms1g -Xmx1g 改為 -Xms512m -Xmx512m

[root@VM-0-17-centos config]# vim jvm.options ## JVM configuration# Xms represents the initial size of total heap space# Xmx represents the maximum size of total heap space-Xms512m-Xmx512m################################################################## Expert settings#################################################################### All settings below this section are considered## expert settings. Don"t tamper with them unless## you understand what you are doing#################################################################### GC configuration8-13:-XX:+UseConcMarkSweepGC8-13:-XX:CMSInitiatingOccupancyFraction=758-13:-XX:+UseCMSInitiatingOccupancyOnly## Locale# Set the locale language#-Duser.language=en# Set the locale country#-Duser.country=US# Set the locale variant, if any#-Duser.variant=## basic# set the I/O temp directory#-Djava.io.tmpdir=$HOME# set to headless, just in case-Djava.awt.headless=true# ensure UTF-8 encoding by default (e.g. filenames)-Dfile.encoding=UTF-8# use our provided JNA always versus the system one#-Djna.nosys=true# Turn on JRuby invokedynamic-Djruby.compile.invokedynamic=true# Force Compilation-Djruby.jit.threshold=0# Make sure joni regexp interruptability is enabled-Djruby.regexp.interruptible=true"jvm.options" 81L, 2038C      
3.3修改 pipelines.yml 配置文件

pipelines.yml 文件,是用來配置數(shù)據(jù)渠道的

# 先查看默認(rèn)配置[root@VM-0-17-centos config]# vim pipelines.yml # This file is where you define your pipelines. You can define multiple.# For more information on multiple pipelines, see the documentation:#   https://www.elastic.co/guide/en/logstash/current/multiple-pipelines.html- pipeline.id: main  path.config: "/usr/share/logstash/pipeline"  #默認(rèn)配置只配置了一個管道,并指向 pipeline 目錄

多管道配置

? 如果你想一個管道Id指向多個配置文件可以使用*通配符,配置文件默認(rèn)指向 pipeline 目錄應(yīng)該是一個道理

- pipeline.id: main  path.config: "/usr/share/logstash/pipeline/*.conf"

? 如果你想各自指向各自的配置文件可以如下配置

- pipeline.id: table1  path.config: "/usr/share/logstash/pipeline/table1.conf"- pipeline.id: table2  path.config: "/usr/share/logstash/pipeline/table2.conf"- pipeline.id: table3  path.config: "/usr/share/logstash/pipeline/table3.conf"

這里的每個多帶帶的conf文件都是在 pipeline 目錄下寫好的文件,比如剛才自己創(chuàng)建的 logstash_test.conf 配置文件

可參考:https://www.jianshu.com/p/9da006b4bec4

3.4 logstash.yml 配置
[root@VM-16-7-centos config]# vim logstash.ymlhttp.host: "0.0.0.0"xpack.monitoring.elasticsearch.hosts: [ "http://x.x.x.x:9201","http://x.x.x.x:9202","http://x.x.x.x:9203" ]# 如果是單機(jī)就配置一個地址,如果是集群就配置集群地址

最后我們配置好之后的目錄應(yīng)該是這樣的

[root@VM-0-17-centos logstash]# tree .|-- config|   |-- jvm.options|   |-- log4j2.properties|   |-- logstash-sample.conf|   |-- logstash.yml|   |-- mysql-connector-java-8.0.26.jar|   |-- pipelines.yml|   `-- startup.options|-- data`-- pipeline    |-- logstash.conf    `-- logstash_test.conf

創(chuàng)建 渠道文件 statement_filepath 配置的sql文件

[root@VM-16-7-centos pipeline]# vim 450w-sync.sqlSELECT `Id`, `Name`, `Birthday`, `Address`, `Date` FROM `table`;

? mysql同步數(shù)據(jù)到es是需要 logstash-input-jdbclogstash-output-jdbc 這兩個插件的,logstash-input-jdbc容器中已經(jīng)內(nèi)置,我們只需要安裝 logstash-output-jdbc插件

# 新建一個容器[root@VM-24-9-centos ~]# docker run -d  -p 5044:5044 --name logstash logstash:7.14.2# 進(jìn)入容器安裝插件,插件在github的,安裝很慢[root@VM-16-7-centos pipeline]#  docker exec -it logstash bash[root@c8a33d8198cf logstash]# bin/logstash-plugin install logstash-output-jdbc# cd到bin目錄[root@c8a33d8198cf bin]# logstash-plugin list

? 如果不想每次刪除容器后都需要重新安裝插件,可以基于安裝好插件的容器構(gòu)建一個新的鏡像

# 基于安裝好插件的容器構(gòu)建新鏡像[root@VM-16-7-centos pipeline]# docker commit logstash logstash_ouptut:7.14.2

? 然后使用新構(gòu)建的鏡像啟動新容器

# 先刪除基礎(chǔ)容器再創(chuàng)建新容器[root@VM-16-7-centos pipeline]# docker rm -f logstash# 創(chuàng)建新容器docker run -d -p 5044:5044 -p 9600:9600 --name logstash --user root /-v /data/elk/logstash/config:/usr/share/logstash/config /-v /data/elk/logstash/pipeline:/usr/share/logstash/pipeline /-v /data/elk/logstash/data:/usr/share/logstash/data /-e TZ=Asia/Shanghai /logstash_ouptut:7.14.2# --user root 以root權(quán)限運行容器,logstash默認(rèn)是以logstash用戶組和用戶啟動的,但是默認(rèn)用戶目錄權(quán)限不足,會報錯

Logstash Output 的話,需要安裝 logstash-output-jdbc插件 https://github.com/theangryangel/logstash-output-jdbc

關(guān)于 unable to load /data/elk/logstash/pipeline/mysql-connector-java-8.0.11.jar from :jdbc_driver_library報錯

安裝 logstash-output-jdbc插件

# 新建一個容器[root@VM-24-9-centos ~]# docker run -d  -p 5044:5044 --name logstash logstash:7.14.2# 進(jìn)入容器安裝插件,插件是外網(wǎng)的,安裝很慢[root@VM-16-7-centos pipeline]#  docker exec -it logstash bash[root@c8a33d8198cf logstash]# bin/logstash-plugin install logstash-output-jdbc

關(guān)于 unable to load /data/elk/logstash/pipeline/mysql-connector-java-8.0.11.jar from :jdbc_driver_library報錯

MySQL Connector/J 8.0 之后java.sql.Driver在 MySQL Connector/J 中實現(xiàn)的類的名稱 已從 更改 com.mysql.jdbc.Drivercom.mysql.cj.jdbc.Driver。舊的類名已被棄用。

官方說明:https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-api-changes.html

所以,直接把 MySQL Connector 的jar包復(fù)制進(jìn)容器 bin/logstash-core/lib/jars 目錄

[root@VM-16-7-centos pipeline]# docker cp /data/elk/logstash/pipeline/mysql-connector-java-8.0.26.jar logstash:/usr/share/logstash/logstash-core/lib/jars

然后把當(dāng)前容器重新構(gòu)建成一個新的鏡像

[root@VM-16-7-centos pipeline]# docker commit logstash logstash-mysql-connector:8.0.26

然后使用新構(gòu)建的鏡像啟動新容器

# 先刪除基礎(chǔ)容器再創(chuàng)建新容器[root@VM-16-7-centos pipeline]# docker rm -f logstash# 創(chuàng)建新容器docker run -d -p 5044:5044 -p 9600:9600 --name logstash --user root /-v /data/elk/logstash/config:/usr/share/logstash/config /-v /data/elk/logstash/pipeline:/usr/share/logstash/pipeline /-v /data/elk/logstash/data:/usr/share/logstash/data /-e TZ=Asia/Shanghai /logstash-mysql-connector:8.0.26# --user root 以root權(quán)限運行容器,logstash默認(rèn)是以logstash用戶組和用戶啟動的,但是默認(rèn)用戶目錄權(quán)限不足,會報錯

拓展

渠道配置文件檢測進(jìn)入容器bin/logstash -f /usr/local/logstash/config/logstash-test.conf -t

記錄坑:

Thu Dec 20 12:50:09 CST 2018 WARN: Establishing SSL connection without server"s identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn"t set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to "false". You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.在配置文件的連接串后面加上useSSL=falsejdbc:mysql://localhost:3306/testdb?useSSL=false
Error: com.mysql.cj.jdbc.Driver not loaded. :jdbc_driver_library is not set, are you sure you included the proper driver client libraries in your classpath?可以嘗試將驅(qū)動器即mysql-connector的jar包拷貝到 容器的 bin/logstash-core/lib/jars 下
Could not execute action: PipelineAction::Create
當(dāng)您在類加載器路徑之外結(jié)合較新的 jdk 版本使用最新的 jdbc 驅(qū)動程序時,可能會發(fā)生類加載器問題。在 github 上有幾個問題。把驅(qū)動放在logstash文件夾下/vendor/jar/jdbc/(需要先創(chuàng)建這個文件夾)。如果這不起作用,請將驅(qū)動程序移到下方,/logstash-core/lib/jars并且不要在配置文件中提供任何驅(qū)動程序路徑:jdbc_driver_library => ""參考鏈接:https://stackoverflow.com/questions/59698179/how-to-send-data-from-http-input-to-elasticsearch-using-logstash-ans-jdbc-stream/59712945#59712945
Failed to execute action {:action=>LogStash::PipelineAction::Create/pipeline多數(shù)原因是logstash.conf文件(渠道文件)配置出錯,檢查一下
管道配置文件里面的 jdbc_user 建議不要使用 root ,會報 Access denied for user "root"@"x.x.x.x" 錯誤重新配置了root權(quán)限還是報錯,暫時沒找到原因,所以換了個用戶就行了https://www.cnblogs.com/kangfei/p/14802521.html
?

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/123980.html

相關(guān)文章

  • 使用容器和Elasticsearch集群對Twitter進(jìn)行監(jiān)控

    摘要:在這篇文章中,我們將使用來部署,并將它用于追蹤上的和。我們將使用創(chuàng)建一個索引模板,來調(diào)整相關(guān)配置。這樣,一個配置正確的已經(jīng)準(zhǔn)備好被使用了后續(xù)我們還將會對它進(jìn)行一些配置。雖然和已經(jīng)部署好了,我們還是需要對進(jìn)行一些操作。 介紹 Elasticsearch是ELK(Elasticsearch/Logstash/Kibana)的基石。在這篇文章中,我們將使用Rancher Catalog來部署...

    sewerganger 評論0 收藏0
  • 利用ELK搭建Docker容器化應(yīng)用日志中心

    摘要:概述應(yīng)用一旦容器化以后,需要考慮的就是如何采集位于容器中的應(yīng)用程序的打印日志供運維分析。 showImg(https://segmentfault.com/img/remote/1460000014146680); 概述 應(yīng)用一旦容器化以后,需要考慮的就是如何采集位于Docker容器中的應(yīng)用程序的打印日志供運維分析。典型的比如 SpringBoot應(yīng)用的日志 收集。本文即將闡述如何利...

    周國輝 評論0 收藏0
  • [實戰(zhàn)] 用數(shù)人云,部署彈性 ELK 集群就五步

    摘要:摘要本篇文章介紹了如何通過數(shù)人云部署一套標(biāo)準(zhǔn)的日志收集系統(tǒng)。主機(jī)添加完成后,檢查主機(jī)運行是否正常,如圖第二步,發(fā)布實例我們將通過數(shù)人云將的鏡像以模式部署到我們規(guī)劃的主機(jī)和上。 摘要:本篇文章介紹了如何通過數(shù)人云部署一套標(biāo)準(zhǔn)的 ELK 日志收集系統(tǒng)。第一步,將主機(jī)組織成集群;第二步,發(fā)布 ElasticSearch 實例;第三步,發(fā)布 Kibana 實例;第四步,發(fā)布 Logstash ...

    姘存按 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<