
云原生
利用kurise做日志采集使用promtail做sidecar采集日志
利用OpenKurise中的kruise做日志采集,原来我使用的是filebeat作为sidecar采集日志的,虽然采集没有什么问题,但是通过es进才看日志就比较繁琐了,这次实验p
[root@www.wulaoer.org ~]# docker run -it --rm centos /bin/bash [root@d4c8cee9733f /]# ping wulaoer ping: wulaoer: Name or service not known这个镜像中,直接ping wulaoer不能ping通,是因为我的这个变量没有指定ip,下面我在创建容器的时候直接指定。
[root@www.wulaoer.org ~]# docker run -it --add-host=wulaoer:8.8.8.8 --rm centos /bin/bash [root@3c0347cfcb55 /]# ping wulaoer PING wulaoer (8.8.8.8) 56(84) bytes of data. 64 bytes from wulaoer (8.8.8.8): icmp_seq=1 ttl=127 time=43.7 ms 64 bytes from wulaoer (8.8.8.8): icmp_seq=2 ttl=127 time=42.7 ms这里创建容器的时候使用了参数--add-host=指定了一个dns的ip,如果这里指定的ip不存在,就会ping不通,我们看一下hosts文件中是否有定义的ip。
[root@3c0347cfcb55 /]# cat /etc/hosts 127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters 8.8.8.8 wulaoer #指定的dns 172.17.0.2 3c0347cfcb55如果我们使用的时候可以把wulaoer这个变量添加到相应的应用中,这样每次更新的时候就不需要设置了,只需要在启动的时候把相应的变量和ip添加上去即可。 如果想增加多个,可以使用多个--add-host=即可,看下面的例子:
[root@www.wulaoer.org ~]# docker run -it --add-host=wulaoer:8.8.8.8 --add-host=wulaoers:8.8.8.2 --rm centos /bin/bash [root@58597508fd92 /]# cat /etc/hosts 127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters 8.8.8.8 wulaoer 8.8.8.2 wulaoers 172.17.0.2 58597508fd92这样两个变量的ip已经指定好了,不过在生产中不建议这样使用,建议使用docker-compose,在docker-compose中我们可以根据extra_hosts下添加相应的即可。看下面的例子
extra_hosts: - "somehost:8.8.8.1" - "otherhost:8.8.8.2"这是部分docker-compose的内容,如果多个可以一直添加即可,添加后在容器中的hosts内容格式如下:
8.8.8.1 somehost 8.8.8.2 otherhostdocker-compose能够解决所有应用的本地解析,--add-host=只能解决当前的一个容器,所以实验可以使用--add-host=,在生产环境中不建议使用。
评论 0