windows使用docker搭建ELK(Elasticsearch、Logstash、Kibana),數據可視化環境,導入SQL server,MySQL數據

記錄....配置ELK的全過程,其中 爲了方便配置和數據庫的連接,logstash安裝在物理機上,Elasticsearch 和Kibana安裝在docker中

(PS:主要是記錄過程,有些步驟帶主觀意味直接跳過,未做過多描述,有疑問的可以留言溝通!)

先決條件:

1.本機安裝java1.8 jdr,並添加到環境變量(具體安裝可以參考此篇文章:https://blog.csdn.net/zzq900503/article/details/9770237)

2.本機安裝docker環境(下載地址:https://www.docker.com/products/docker-desktop,具體安裝過程可以參考https://blog.csdn.net/vitaair/article/details/80894890)

 

配置過程

1.docker中安裝es:

   在powershell 中鍵入 'docker pull elasticsearch:7.3.0'(注意小寫)

2.docker中安裝kibana:

   在powershell 中鍵入 'docker pull kibana:7.3.0'(注意小寫)

3.windows安裝logstash

   在官網下載:https://www.elastic.co/cn/downloads/logstash,下載完成後解壓在指定文件夾

   圖例是本次安裝地址

啓動實例

1.docker創建Elasticsearch,Kibanam

   powershell 中 鍵入 'docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.3.0'

   創建名爲 es的Elasticsearch實例

  powershell 中 鍵入 'docker run --name kibana730 -p 5601:5601 -d kibana:7.3.0'

   創建名爲 es的Elasticsearch實例

  完成後 鍵入'docker ps ' 查看創建好的實例

 其中,這個地方需要對kibana做一個單獨的另外修改(踩過的坑!)

 鍵入'docker exec -it kibana /bin/bash'進入創建的kibana實例內部

進入到目錄下,查看配置文件

鍵入 'cat kibana.yml'

將文件第一處紅框的內的ip地址修改成和圖例中一樣,同時新建第一處紅框中的內容(功能是:kibana漢化)

(PS:不知道怎麼修改linux文件內容的童鞋,百度查查對應的指令,本文不做過多贅述)

修改完成後,

鍵入 'docker stop kibana' 停止實例

然後

鍵入 'docker start kibana' 開啓實例

即可.

到這裏,ES和Kibana已經全部創建完成,

打開瀏覽器:

http://192.168.99.100:5601 查看kibana

http://192.168.99.100:9200 查看 es 

2.使用logstash進行將數據存入ES實例中

導入SQL server和MySQL數據,需要引入相應的驅動包:

SQL server驅動包 --鏈接: https://pan.baidu.com/s/1rU4bZvlY3S70aoUmdqXGpw 提取碼: 2j13

MySQL驅動包--鏈接: https://pan.baidu.com/s/1FUGB6l4VFeSEc7CS0QbI3w 提取碼: yjwp

下載完成後將文件放在 logstash 的lib目錄下

(1).引入SQL server數據:

      在logstash 的bin目錄下新建一個 TestMssql.conf 文本文件,輸入下列代碼

input {
        jdbc {
				jdbc_driver_library => "F:\logstash-7.3.1\lib\驅動包名"
				jdbc_driver_class => "com.microsoft.sqlserver.jdbc.SQLServerDriver"
                jdbc_connection_string =>         "jdbc:sqlserver://你的數據庫ip地址;databaseName=你的數據庫;"
                jdbc_user => "登錄名"
                jdbc_password => "密碼"
				jdbc_default_timezone => "Asia/Shanghai"
                 statement => "要執行的語句"
        }
}
}
output {
		elasticsearch {
		hosts => ["192.168.99.100:9200"]
		index => "logstash-要創建的索引名"
		}
}

按照中文提示,替換爲相應的實際代碼即可

(2).引入MySQL數據

      在logstash 的bin目錄下新建一個 TestMssql.conf 文本文件,輸入下列代碼

input {
        jdbc {
				jdbc_driver_library => "F:\logstash-7.3.1\lib\驅動包名"
				jdbc_driver_class => "com.mysql.cj.jdbc.Driver"
                jdbc_connection_string => "jdbc:mysql://你的數據庫ip地址/數據庫名?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8"
                jdbc_user => "你的登錄名"
                jdbc_password => "你的密碼"
				jdbc_default_timezone => "Asia/Shanghai"
                statement => "要執行的代碼"
        }
}
output {
		elasticsearch{
			hosts => ["192.168.99.100:9200"]
			index => ["logstash-要創建的索引名"]
		}
}

    按照中文提示,替換爲相應的實際代碼即可

創建過後,使用powershell 在 logstash 的bin 目錄下 執行

'.\logstash -f  .\相應的文件名'

即可完成對數據的導入

圖例(對每天登錄數據的次數進行聚合統計展示)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章