Eu instalei o contêiner do Docker do ELK .
Eu corri com esses parâmetros:
sudo docker run -p 5601:5601 -p 9200:9200 -p 5044:5044 -p 5000:5000 -it --name elk sebp/elk
Verifique a verificação:
sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4f42137c954d sebp/elk:latest "/usr/local/bin/star 22 hours ago Up 22 hours 0.0.0.0:5000->5000/tcp, 0.0.0.0:5044->5044/tcp, 0.0.0.0:5601->5601/tcp, 0.0.0.0:9200->9200/tcp, 9300/tcp elk
Jo, parece ser bom.
Aqui está a interface externa do convidado KVM, na qual residem os contêineres Docker:
marius @ elk: ~ $ ifconfig eth0
eth0 Link encap: Ethernet HWaddr 52: 54: 00: 15: cf: f2
inet addr: 192.168.100.134 Bcast: 192.168.100.255 Máscara: 255.255.255.0
Mas a porta 5044 (para o Elastic Beats, por exemplo) é fechada na interface de rede do KVM:
marius@elk:~$ nc -v 192.168.100.134 5044
nc: connect to 192.168.100.134 port 5044 (tcp) failed: Connection refused
A razão para isso parece ser que eu criei o caos:
marius@elk:~$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
DOCKER all -- anywhere anywhere
ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain DOCKER (1 references)
target prot opt source destination
ACCEPT tcp -- anywhere 172.17.0.4 tcp dpt:5000
ACCEPT tcp -- anywhere 172.17.0.4 tcp dpt:5044
ACCEPT tcp -- anywhere 172.17.0.4 tcp dpt:5601
ACCEPT tcp -- anywhere 172.17.0.4 tcp dpt:9200
E o novo IP do contêiner do Docker após a reinicialização é 172.17.42.1
e 0.4
marius @ elk: ~ $ / sbin / ifconfig
docker0 Link encap: Ethernet HWaddr a6: 3d: 01: 38: 7a: 6a
inet addr: 172.17.42.1 Bcast: 0.0.0.0 Máscara: 255.255.0.0
Então, como faço para reiniciar / gerenciar um contêiner do Docker de uma maneira, para que eu não entre em conflitos de IPtables
E como corrijo isso sem criar um caos Docker / IPtables a cada vez? Eu não quero limpar manualmente o iptables do Docker.