无法从 EC2 上的 public ip 地址访问 node_exporter
Can't access node_exporter from public ip address on EC2
我正在 AWS EC2 上设置 prometheus/node_exporter。使用以下配置
[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target
[Service]
User=node_exporter
Group=node_exporter
Type=simple
ExecStart=/usr/local/bin/node_exporter
[Install]
WantedBy=multi-user.target
而且我可以通过将 curl 与本地主机一起使用来访问指标。类似下面的内容
curl localhost:9100/metrics
我也可以通过私有 IP 地址访问指标。例如
curl private_ip_address:9100/metrics
但是,当我尝试通过 public IP 地址访问它时。它不工作,curl 超时。
curl public_ip_address:9100/metrics
我尝试从服务器本身和我的本地计算机从 ipv4:9100
访问。两者都有同样的问题。
我怎样才能使它可以从 ipv4 地址访问?
默认情况下,EC2 实例不允许直接访问该端口。
您需要在 入站规则 中为端口 9100
创建一个 Custom TCP
规则,如果它不存在。
如果您还配置了防火墙,您也需要允许端口 9100
。
您可以测试远程端口是否可达(REF:):
nc -zvw 5 <ip> <port>
我正在 AWS EC2 上设置 prometheus/node_exporter。使用以下配置
[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target
[Service]
User=node_exporter
Group=node_exporter
Type=simple
ExecStart=/usr/local/bin/node_exporter
[Install]
WantedBy=multi-user.target
而且我可以通过将 curl 与本地主机一起使用来访问指标。类似下面的内容
curl localhost:9100/metrics
我也可以通过私有 IP 地址访问指标。例如
curl private_ip_address:9100/metrics
但是,当我尝试通过 public IP 地址访问它时。它不工作,curl 超时。
curl public_ip_address:9100/metrics
我尝试从服务器本身和我的本地计算机从 ipv4:9100
访问。两者都有同样的问题。
我怎样才能使它可以从 ipv4 地址访问?
默认情况下,EC2 实例不允许直接访问该端口。
您需要在 入站规则 中为端口 9100
创建一个 Custom TCP
规则,如果它不存在。
如果您还配置了防火墙,您也需要允许端口 9100
。
您可以测试远程端口是否可达(REF:):
nc -zvw 5 <ip> <port>