mount is not a block device及Docker容器内应用的日志收集

有的时候不想删除与软链接同名的旧目录,并且也不想重命名旧目录,可以使用如下命令直接挂载: # mount /dev/cdrom /mnt/cdrom -B 其中的关键在【-B】这个参数,其意思是: -B, --bind 挂载其他位置的子树(同 -o bind) (ps:文件同理)

[root@alex /alex/data/nginx/conf]$ mkdir logs
[root@alex /alex/data/nginx/conf]$ cd logs/
[root@alex /alex/data/nginx/conf/logs]$ ls
[root@alex /alex/data/nginx/conf/logs]$ vi test.html
[root@alex /alex/data/nginx/conf/logs]$ ls
test.html
[root@alex /alex/data/nginx/conf/logs]$ cd ../../data/
[root@alex /alex/data/nginx/data]$ ls
[root@alex /alex/data/nginx/data]$ mount /alex/data/nginx/conf/logs/ /alex/data/nginx/data/
mount:  /alex/data/nginx/conf/logs is not a block device
[root@alex /alex/data/nginx/data]$ mount /alex/data/nginx/conf/logs/ .
mount:  /alex/data/nginx/conf/logs is not a block device
[root@alex /alex/data/nginx/data]$ mount /alex/data/nginx/conf/logs /alex/data/nginx/data
mount:  /alex/data/nginx/conf/logs is not a block device
[root@alex /alex/data/nginx/data]$ mount /alex/data/nginx/conf/logs /alex/data/nginx/data -B
[root@alex /alex/data/nginx/data]$ ls
[root@alex /alex/data/nginx/data]$ ll
[root@alex /alex/data/nginx/data]$ cd ../conf/logs/
[root@alex /alex/data/nginx/conf/logs]$ ls
test.html
[root@alex /alex/data/nginx/conf/logs]$ mv test.html test.html2
[root@alex /alex/data/nginx/conf/logs]$ ls
test.html2
[root@alex /alex/data/nginx/conf/logs]$ cd ../../data/
[root@alex /alex/data/nginx/data]$ ls
test.html2
[root@alex /alex/data/nginx/data]$ cat test.html2 
helloworld!
[root@alex /alex/data/nginx/data]$

Docker容器内应用的日志收集方案:https://blog.csdn.net/ljxljx386/article/details/51792244

_2015_12_18_17_34_10

 

日志对开发和维护的重要性不言而喻。分布式应用中的日志分布在多台机器上,所以我们需要将日志采集到一个地方来集中管理。目前比较常见的日志方案是ElK,主要包括三大组件:Elasticsearch, Logstash和Kibana。这里主要说一下使用logstash收集Docker容器里应用的日志。

容器中应用的日志,其生命周期和容器相同。主要要两个去向:标准输出stdout到主机/var/lib/docker/containers//***-json.log文件中,***是应用在容器中的id;写日志到磁盘文件。

主要有以下两种收集方法:1.对于第一种写在容器里面的日志,其路径中的***是id,应用每次在容器里跑起来其id是不同的,这样不容易确定日志的路径。我们需要将应用的日志输出到固定目录并通过 -V 命令挂载出来到主机磁盘(转化成第二种日志去向),这样我们就可以通过Logstash采集宿主机固定目录的日志。2.另外一种方式我看阿里云也在采用,运行一个日志收集容器。借助docker的Volume功能。在host机器上开辟一个固定目录D;产生日志的容器将日志文件所在目录mount到D目录下的子目录中;收集日志的容器再把目录D mount到自己容器内。分享一下阿里云案例链接:https://yq.aliyun.com/articles/303

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值