使用MongoDB儲存Docker日誌

2021-09-22 07:33:47 字數 1190 閱讀 7398

日誌是系統很重要的乙個組成部分,通過日誌可以及時發現系統中存在的問題,也可以為修復問題提供線索。docker提供了多種外掛程式方式管理日誌,本文就對使用mongodb儲存docker日誌的過程做個記錄。

docker產生的日期 傳送到 fluentd,然後fluentd在轉存到mongodb。

前提:作業系統是centos7,已安裝mongodb3.4

1. 安裝fluentd

centos 7的軟體庫並沒有包含fluentd的安裝包,所以需要手動安裝。在centos使用的軟體td-agent。

# curl -l  | sh
上面命令會在/etct/yum.repo.d/目錄中,建立乙個td-agent的安裝庫 td.repo,然後自動安裝td-agent。安裝完畢後設為自動啟動。

# systemctl start td-agent

# systemctl enable td-agent

如果在啟動過程**現問題,可以檢視位於/var/log/td-agent/下日誌檔案td-agent.log

2. 配置將docker日誌轉存到mongodb

轉存到mongodb需要外掛程式支援,但是預設情況下td-agent是沒有安裝該外掛程式的,需要安裝。

# yum -y install td-agent-gemt

# td-agent-gem install fluent-plugin-mongo

## match tag=docker.* and dump to mongodb

## 在docker啟動容器時,日誌的tag要符合docker.*的形式

@type mongo

# 資料庫位址

host 127.0.0.1

# 資料庫埠

port 22017

# 儲存日誌的資料庫和資料集名稱

database docker

collection log

重啟td-agent。

啟動容器的命令改為:

執行完畢後,可以到mongodb中檢視日誌。

參考文件:

dock基本使用

要安裝最新的 docker 版本,首先需要安裝 apt transport https 支援,之後通過新增源來安裝。要安裝最新的 docker 版本,首先需要安裝 apt transport https 支援,之後通過新增源來安裝。sudo docker images 顯示本地已有的映象 sudo ...

Dock的使用記錄

企業應用架構模式 企業批量購書 分享 關注商品舉報 程式設計師 技術討論會 的各種ppt systemctl stop firewalld.service 停止firewall systemctl disable firewalld.service 禁止firewall開機啟動 sudo apt g...

Dock 使用筆記

建立以及執行 docker run it 映象 進入映象 對映象進行cmd操作 docker run itd name 別名 容器name 容器id bin bash 後台執行 容器 docker start停止執行 docker stop 容器name 容器id 檢視執行容器 dockr ps 檢...