The work around to this issue is to force tomcat to use ipv4 over ipv6 with javaoption
-Djava.net.preferIPv4Stack=true
We can pass this to artifactory system.yaml under
shared:
extraJavaOpts: "-Djava.net.preferIPv4Stack=true"
You can change system.yaml setting directly in the secret as a temporary workaround:
1. Get systemYaml secret:
kubectl get secret d-artifactory-systemyaml -o jsonpath="{.data}"
kubectl edit secret d-artifactory-systemyaml
Replace the encoded value under system.yaml
If this helps address the issue, you might want to update “javaOpts” inside your value.yaml and update your release.
Run netstat to confirm if the above settings are working. You should see:
tcp 0 0 127.0.0.1:8091 0.0.0.0:* LISTEN 5082/java
tcp 0 0 127.0.0.1:8061 0.0.0.0:* LISTEN 4225/jf-event
tcp 0 0 127.0.0.1:8030 0.0.0.0:* LISTEN 4886/jf-connect
tcp 0 0 127.0.0.1:8062 0.0.0.0:* LISTEN 4225/jf-event
tcp 0 0 127.0.0.1:8035 0.0.0.0:* LISTEN 4886/jf-connect
tcp 0 0 127.0.0.1:8036 0.0.0.0:* LISTEN 4547/jf-observabili
tcp 0 0 127.0.0.1:8070 0.0.0.0:* LISTEN 4381/node
tcp 0 0 127.0.0.1:8071 0.0.0.0:* LISTEN 4711/jf-integration
tcp 0 0 127.0.0.1:8072 0.0.0.0:* LISTEN 4711/jf-integration
tcp 0 0 127.0.0.1:8040 0.0.0.0:* LISTEN 5082/java
tcp 0 0 0.0.0.0:8045 0.0.0.0:* LISTEN 5082/java
tcp 0 0 127.0.0.1:8046 0.0.0.0:* LISTEN 3864/jf-router
tcp 0 0 127.0.0.1:8047 0.0.0.0:* LISTEN 3864/jf-router
tcp 0 0 127.0.0.1:8015 0.0.0.0:* LISTEN 5082/java
tcp 0 0 127.0.0.1:8049 0.0.0.0:* LISTEN 3864/jf-router
tcp 0 0 0.0.0.0:8081 0.0.0.0:* LISTEN 5082/java
tcp 0 0 127.0.0.1:8086 0.0.0.0:* LISTEN 4069/jf-metadata
tcp6 0 0 :::8082 :::* LISTEN 3864/jf-router
-Djava.net.preferIPv4Stack=true
We can pass this to artifactory system.yaml under
shared:
extraJavaOpts: "-Djava.net.preferIPv4Stack=true"
You can change system.yaml setting directly in the secret as a temporary workaround:
1. Get systemYaml secret:
kubectl get secret d-artifactory-systemyaml -o jsonpath="{.data}"
2. Base64 decode the value to get the systemYaml content. Edit the extraJavaOpts key to add the following value ( If extraJavaOpts does not exist, you can add one):
shared:
extraJavaOpts: "-Djava.net.preferIPv4Stack=true"
shared:
extraJavaOpts: "-Djava.net.preferIPv4Stack=true"
3. Base64 encode the modified systemYaml content again and run
kubectl edit secret d-artifactory-systemyaml
Replace the encoded value under system.yaml
If this helps address the issue, you might want to update “javaOpts” inside your value.yaml and update your release.
Run netstat to confirm if the above settings are working. You should see:
tcp 0 0 127.0.0.1:8091 0.0.0.0:* LISTEN 5082/java
tcp 0 0 127.0.0.1:8061 0.0.0.0:* LISTEN 4225/jf-event
tcp 0 0 127.0.0.1:8030 0.0.0.0:* LISTEN 4886/jf-connect
tcp 0 0 127.0.0.1:8062 0.0.0.0:* LISTEN 4225/jf-event
tcp 0 0 127.0.0.1:8035 0.0.0.0:* LISTEN 4886/jf-connect
tcp 0 0 127.0.0.1:8036 0.0.0.0:* LISTEN 4547/jf-observabili
tcp 0 0 127.0.0.1:8070 0.0.0.0:* LISTEN 4381/node
tcp 0 0 127.0.0.1:8071 0.0.0.0:* LISTEN 4711/jf-integration
tcp 0 0 127.0.0.1:8072 0.0.0.0:* LISTEN 4711/jf-integration
tcp 0 0 127.0.0.1:8040 0.0.0.0:* LISTEN 5082/java
tcp 0 0 0.0.0.0:8045 0.0.0.0:* LISTEN 5082/java
tcp 0 0 127.0.0.1:8046 0.0.0.0:* LISTEN 3864/jf-router
tcp 0 0 127.0.0.1:8047 0.0.0.0:* LISTEN 3864/jf-router
tcp 0 0 127.0.0.1:8015 0.0.0.0:* LISTEN 5082/java
tcp 0 0 127.0.0.1:8049 0.0.0.0:* LISTEN 3864/jf-router
tcp 0 0 0.0.0.0:8081 0.0.0.0:* LISTEN 5082/java
tcp 0 0 127.0.0.1:8086 0.0.0.0:* LISTEN 4069/jf-metadata
tcp6 0 0 :::8082 :::* LISTEN 3864/jf-router