JFConnect Microservice

JFrog Installation & Setup Documentation

Content Type
Installation & Setup

JFConnect microservice acts as the JPD (JFrog Deployment) entitlements service and enables dynamic entitlement allocation for the connected products, based on account/subscription changes in JFrog’s main entitlements server. The default port is 8030.

JFConnect also acts as a store proxy for JFrog Store.

JFConnect communicates with jes.jfrog.io and jcs.jfrog.io.

  • jes.jfrog.io is the JFrog Entitlements Server that contains the details of the entitlements associated with your subscription. The entitlementservice job in JFConnect registers the license in the JFrog Entitlements Server and fetches the entitlements.

    The entitlementservice job tries to register again in the JFrog Entitlements Server when JFConnect restarts or when there is a change in the license. If the register request fails with the 400 error code, the job does not run unless you restart the JFConnect service or update the license in the JPD. If the register request fails with the 500 error code, the job retries the registration.

  • jcs.jfrog.io is the JFrog Consumption Server that receives usage files created by the Observability microservice from JFrog services to measure the consumption of various services in the JPD. The usageservice job in JFConnect connects to the JFrog Consumption Server every 24 hours to upload the usage files.

    If the connection fails, the job proceeds to retry. If the connection is successful, the next connection request occurs after 24 hours.

You need to configure a proxy for the JFConnect service if your environment requires a proxy to communicate with external services. For more information, see JFConnect Proxy Configuration.

In addition, JFConnect also contains the archival job. There are a large number of usage files created in the JPD. Once the usageservice job uploads these files to the JFrog Consumption Server, the archival job groups these files into a single archive based on a pre-defined rule, uploads it into the JPD, and deletes the individual files. The archival job runs every 24 hours. If the job fails, then it retries. If the job is successful, it runs after 24 hours.

The usageservice job and the entitlementservice job fails in the following situations.

  • IP of jes.jfrog.io and jcs.jfrog.io are not whitelisted in your network

  • The JPD is inside an air-gapped environment

  • Artifactory service or Access service is unavailable

The archival job fails when the Artifactory or Access service is unavailable.

To resolve the connection issues, you can whitelist jes.jfrog.io and jcs.jfrog.io.

From Artifactory version 7.68.7, JFConnect supports air-gapped environments. For more information, see Configure JFrog Platform in an Air-gapped Environment.