Troubleshooting / External Network Cannot Access the System
When the system itself is running normally but cannot be accessed externally, it is mostly due to network issues.
Specific manifestations include:
- On the deployment server, using
curl -i http://127.0.0.1:8088
returns a302
redirect:
HTTP | |
---|---|
1 2 3 4 5 6 7 8 9 |
|
- On the deployment server, using
curl http://127.0.0.1:8088/api/v1/do/ping
returns200
normal data:
HTTP | |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
- On other devices, using
curl -i http://{server address}:8088
does not respond or directly returns a connection refusal.
Such issues are mostly network-related and have nothing to do with DataFlux Func itself.
The following content is only a record of some possible solutions.
1. Incorrect IP / Domain Resolution
Try to ping
the server where DataFlux Func is located from other devices to confirm if the IP and domain are correct.
You can resolve this by modifying DNS or /etc/hosts
configuration, depending on the actual network situation.
2. Incorrect Firewall or Security Configuration
Including but not limited to:
- Incorrect firewall configuration
- Incorrect Alibaba Cloud ECS security group configuration
- Incorrect reverse proxy server or Alibaba Cloud SLB configuration
First, check the currently open ports:
Bash | |
---|---|
1 |
|
The returned content is:
Text Only | |
---|---|
1 |
|
{open port} defaults to 8088
Check and modify the network environment to allow external access to the server's port.
3. Local Network Conflict with Automatically Created Ingress Subnet
You can check with the following command:
Bash | |
---|---|
1 |
|
Check if the IPAM.Config.Subnet
value is the same as the local network:
JavaScript | |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
|
If duplicated, you can modify it in the following way:
- Stop DataFlux Func
- Delete the existing network:
sudo docker network rm ingress
- Recreate the network:
docker network create --driver overlay --ingress --subnet 10.255.0.0/16 --gateway 10.255.0.1 ingress
-
Start DataFlux Func
- Reference Guide: Docker Ingress Network Custom Configuration
4. Missing Kernel Forwarding Configuration
This issue has been found in CentOS systems but is not commonly encountered.
You can confirm the forwarding configuration with the following command:
Bash | |
---|---|
1 |
|
- If the above command returns
1
, forwarding is already enabled. - Otherwise, you can enable forwarding with the following command:
Bash | |
---|---|
1 |
|