Am construit un apache nifi ami folosind furnizorul ansible de la packer și packer, NiFi începe să fie legat doar la IP-ul de loopback implicit, așa cum se poate vedea din conf/nifi.properties
nifi.web.http.host=127.0.0.1
nifi.web.http.port=8080
nifi.web.http.network.interface.default=
adresa IP la care să vă legați nu poate fi cunoscută în momentul realizării AMI-ului, așa că lăsăm această proprietate așa cum este și creăm în schimb reguli iptables; așa cum este documentat Aici, Aici și Aici
Comenzile pe care intenționam să le execut
sudo sysctl net.ipv4.ip_forward=1
sudo sysctl -w net.ipv4.conf.all.route_localnet=1
sudo iptables -t nat -I PREROUTING -m tcp -p tcp --dport 80 -j DNAT --to-destination 127.0.0.1:8080
Iată sarcinile ansible
- nume: redirecționarea tuturor IP
sysctl:
nume: net.ipv4.ip_forward
valoare: "1"
sysctl_set: da
stare: prezent
reîncărcare: da
Etichete:
- nota
# Configurați formwading portului iptables de la ip public la 127.0.0.1:8080
# Acest lucru se datorează faptului că nu putem configura IP-ul pe care NiFi ascultă în acel moment
# de AMI construit, deci rulează doar ascultând 127.0.0.1:8080
- nume: permite rutarea traficului de la NIC-ul AWS atașat la loopback
sysctl:
nume: net.ipv4.conf.all.route_localnet
valoare: "1"
sysctl_set: da
stare: prezent
reîncărcare: da
Etichete:
- nota
- nume: Activați redirecționarea portului pentru blocul CIDR public către portul localhost Nifi 8080
iptables:
masa: nat
lanț: PRERUTARE
protocol: tcp
meci: tcp
destination_port: „80”
sari: DNAT
spre_destinație: „127.0.0.1:8080”
Etichete:
- nota
Când construiesc o instanță din acest AMI sudo iptables -t nat -v -L PREROUTING -n --line-number
se intoarce nici un rezultat.