In some cases, there may be some connectivity startup issues between Artifactory and other products such as Xray, Distribution, etc. and in this article, we are going to address the common issues that you can check using Xray for example.
Below are some examples related to Xray, yet the same procedure can be checked on other JFrog Platforms:
1. If Artifactory is running over HTTPS (via TLS or a Reverse Proxy), please ensure that the certificate is added to the server running Xray to the $JFROG_HOME/xray/var/etc/security/keys/trusted and the /etc/ssl/certs directories. You can refer to the following Knowledge Base articles for more information:
2. Please confirm that you added the correct JFrog URL and join.key in Xray's $JFROG_HOME/xray/var/etc/system.yaml file. You can obtain the details from JFrog Platform UI->Administration-> User Management -> Settings.
For example:
For example:
3. Ensure that you have added the respective IPs and IDs of Artifactory and Xray in the system.yaml file ($JFROG_HOME/artifactory/var/etc/system.yaml for Artifactory and $JFROG_HOME/xray/var/etc/system.yaml for Xray). You need to add the IP address of the server where Artifactory and Xray are installed in their respective system.yaml files. This step is to eliminate any connectivity issues between Artifactory and Xray server as the shared.node.ip and shared.node.id are used for internal communications between the JFrog products. Here is the shared configuration:
shared: node: ip: <your Artifactory IP/ Xray IP, can be obtained by using "hostname -i"> id: <your Artifactory IP/ Xray IP, can be obtained by using "hostname -s">
4. Check the Artifactory router-service.log, if there are any periodic heartbeat failures. Usually, we have seen this error when server clocks are out of sync which means, Artifactory and Xray exchange tokens when Xray starts up, and during the joining process, it is expected that the server clocks are in sync.
5. Execute the following command from Xray machine to Artifactory to check the connection between the two products:
curl -uadmin https://<$Artifactory_URL>/router/api/v1/system/health
Please note that you should change to HTTP if you do not use HTTPS.
6. Make sure that required ports are open for the Artifactory and Xray, I would recommend whitelisting any related addresses and ports in the firewall for both Artifactory and Xray to ensure there are no issues on that front.
5. Execute the following command from Xray machine to Artifactory to check the connection between the two products:
curl -uadmin https://<$Artifactory_URL>/router/api/v1/system/health
Please note that you should change to HTTP if you do not use HTTPS.
6. Make sure that required ports are open for the Artifactory and Xray, I would recommend whitelisting any related addresses and ports in the firewall for both Artifactory and Xray to ensure there are no issues on that front.