騰訊雲 Elasticsearch 實戰篇(二十) Docker中訪問ES 集群
- 2020 年 2 月 27 日
- 筆記
前言|
前面的章節中我們講了幾種方法將用戶數據導入騰訊雲ES集群。在現今雲計算環境下,為了更好的利用資源跟有效的管理服務,有必要在這裡跟大家講一下,如何通過自建Docker去實現數據接入騰訊雲ES呢?今天,我們講一下這個:
一、Docker安裝
環境準備:CVM一台 內核版本:3.10以上 與騰訊雲ES 同VPC
Docker Version: Docker-CE
Docker 安裝過程:
第一步:安裝docker 依賴包 yum install -y yum-utils device-mapper-persistent-data lvm2

第二步:鑒於中國網路問題,強烈建議使用中國源,執行下面的命令添加yum軟體源並安裝:
yum-config-manager –add-repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
yum makecache fast
yum install docker-ce
第三步:啟動Docker CE
systemctl enable docker & systemctl start docker
第四步:中國從 Docker Hub 拉取鏡像有時會遇到困難,此時可以配置鏡像加速器。Docker 官方和中國很多雲服務商都提供了中國加速器服務,在 /etc/docker/daemon.json 中寫入如下內容(如果文件不存在請新建該文件)

第五步:重啟docker 並查看是否配置成功
systemctl daemon-reload & systemctl restart docker

第七步: 驗證一下,Docker服務 測試 Docker 是否安裝正確
docker run hello-world 輸出正常


OK,Docker安裝成功!
二、基於Docker安裝Logstash上傳數據到騰訊雲ES集群
Docker安裝Logstash 版本 6.8.2 與ES同版本
步驟如下:
第一步:拉取 logstash 官方鏡像。使用命令: docker pull docker.elastic.co/logstash/logstash:6.8.2

第二步:查詢鏡像 docker images

第三步:根據數據源類型自定義配置文件 *.conf,如下:
1,在宿主機新建一個目錄,隨便命名,比如logstash ,在這個目錄裡邊新建一個叫conf.d的文件夾和一個logstash.yml文件,他們的內容如下:


2,查看Logstash.yml內容:
path.config: /usr/share/logstash/conf.d/*.conf ——》這個路徑表示容器裡邊的路徑,會自動創建
path.logs: /var/log/logstash ——–》容器日誌的路徑

3,再看一下conf.d文件夾裡邊的內容:

4,基於Docker啟動Logstash,命令如下:
docker run -it –rm –name logstash -v /pipeline/logstash/logstash.yml:/usr/share/logstash/config/logstash.yml -v /pipeline/logstash/conf.d/:/usr/share/logstash/conf.d/ docker.elastic.co/logstash/logstash:6.8.2

結果如下:


所以,基於Docker的安裝Logstash就已經安裝成功。這樣,我們就可以在一台機器上快速的復用多個Dockers。其它配置都一樣,也是去拉去數據的過程。nginx_logstash_conf配置如下:

那麼這樣,我們就通過Dokcer 去快速安裝Logstash抓取數據入到ES集群,並通過Kibana進行展示。作用與在CVM上一樣。
三、總結:
這一節主要是基於Docker平台的快速安裝方式,騰訊雲平台也提供了一鍵式安裝服務「騰訊雲容器服務」,用戶只需要手動勾選就可以快速完成上面的自建docker的過程。您可以在雲控制平台—登錄容器服務控制台,選擇左側菜單欄【集群】>【新建】創建集群。上去搜索應用即可,非常簡單。兩種方式都各有所長。原理都一樣。好啦,本節就到這裡。