Overview
The following is an example of a complete Mission Control system YAML file showing all the different parameters that you may configure.
Example Templates
It is recommended to use the templates available under $JFROG_HOME/mc/var/etc/
system.basic-template.yaml
includes most commonly used system configurationssystem.full-template.yaml
includes a list of all available configurations
Mission Control is Moving to Artifactory as a Service
From JFrog Artifactory version 7.27.3, Mission Control has been integrated directly into Artifactory as a microservice. You longer need to install Mission Control to use the features it provides. Note that to run Mission Control as a service of Artifactory, you will need set the property mc.enabled
in the Artifactory System YAML.
The metrics capabilities that were provided Mission Control will now be provided through JFrog Insight. To learn more about how to install Insight, see Installing Insight.
To learn more about how Mission Control has been integrated into Artifactory, see Migrating Platform Deployments and License Buckets.
However, you can continue to use the standalone Mission Control service until the end-of-life. Standalone Mission Control will continue to receive critical fixes and security updates.
YAML File Format
The YAML file is constructed with keys and entities, using the following key: [entity]
format.
Sharedconfigurations specified under the shared section, are used by all micro-services.
Micro-service specific configuration are set under each micro-service section and override similar shared configurations for the specific micro-service.
Supported Configurations
Mission Control Operational Microservices
## Mission control template mc: #port: 8080 ## Mission control database settings database: #username: jfmc #password: password #schema: jfmc_server ## Max connections to the database the main connection pool can consume #maxOpenConnections: 10 ## Extra Java options to pass to the JVM. These values add to or override the defaults. #extraJavaOpts: "-Xms3g -Xmx4g" ## Add any custom environment variables to be passed to this service ## Environment variables starting with JF_ are not allowed, will be ignored with a warning if it is added env: #EXAMPLE_VAR: example-value #LD_LIBRARY_PATH: /usr/lib64 ## Insight scheduler template insight-scheduler: #port: 8085 ## Insight scheduler database settings database: #schema: insight_scheduler #username: jfisc #password: password ## Max connections to the database the main connection pool can consume #maxOpenConnections: 10 ## Extra Java options to pass to the JVM. These values add to or override the defaults. #extraJavaOpts: "-Xms3g -Xmx4g" ## Scheduler to go standby in ha scenario when services in this node are down ha: #nodeHealthCheck: #autoKillOnMaxFailures: false ## Clients settings clients: ## Time outs and retry count for access client access: #joinRetry: 5 #connectionTimeoutSecs: 5 #socketTimeoutSecs: 45 ## Time outs and retry count for insight client insight: #tokenRetry: 5 #tokenRetryIntervalMillis: 10000 ## Add any custom environment variables to be passed to this service ## Environment variables starting with JF_ are not allowed, will be ignored with a warning if it is added env: #EXAMPLE_VAR: example-value #LD_LIBRARY_PATH: /usr/lib64 ## Insight server template insight-server: #port: 8087 #maxThreads: 50 ## Insight server database settings database: #schema: insight_server #username: jfisv #password: password ## Max connections to the database the main connection pool can consume #maxOpenConnections: 10 ## Extra Java options to pass to the JVM. These values add to or override the defaults. #extraJavaOpts: "-Xms3g -Xmx4g" ## Clients settings clients: ## Time upto when insight-server will wait until the connection is established with the client elasticsearch: #connectionWaitTimeoutSecs: 60 searchguard: #connectionWaitTimeoutSecs: 1800 insight: #tokenRetry: 5 #tokenRetryIntervalMillis: 10000 artifactory: #connectionTimeoutSecs: 5 #socketTimeoutSecs: 180 ## Number of days to fetch the replication data from artifactory #replicationStartedAfterPeriodDays: -6 xray: #connectionTimeoutSecs: 5 #socketTimeoutSecs: 45 access: #joinRetry: 5 #joinRetryIntervalMillis: 10000 #connectionTimeoutSecs: 5 #socketTimeoutSecs: 45 distribution: #connectionTimeoutSecs: 5 #socketTimeoutSecs: 45 missioncontrol: #connectionTimeoutSecs: 5 #socketTimeoutSecs: 45 insightMetrics: #concurrentServices: 10 ## Add any custom environment variables to be passed to this service ## Environment variables starting with JF_ are not allowed, will be ignored with a warning if it is added env: #EXAMPLE_VAR: example-value #LD_LIBRARY_PATH: /usr/lib64
Router
# Router template router: ## Profiling related settings profiling: ## Enable profiling endpoints #enabled: true ## Corporate proxy related settings proxy: ## Proxy url for all outgoing http requests #httpUrl: "" ## Proxy url for all outgoing https requests #httpsUrl: "" ## List of target hosts to communicate with directly, bypassing the proxy. ## "localhost" will always be added to this list automatically. #ignoredHosts: #- "ignore.me.com" #- "ignore.me2.com" ## Router entry points entrypoints: ## The internal port, used by local services to communicate with the router and any other service (local and external) #internalPort: 8046 ## The external port, registered in the service registry, used by external services to communicate with services in this node #externalPort: 8082 ## An internal port used for internal Traefik (and Router) REST API #traefikApiPort: 8049 ## An internal port used for Router's gRPC API #grpcPort: 8047 ## Service registry (Access) communication settings serviceRegistry: ## Service registry (Access) TLS verification skipped if enabled #insecure: false ## Service registry (Access) request timeout #requestTimeout: 15s ## Topology related settings topology: ## Local topology settings local: ## On elasticsearch externalize - requiredServiceTypes will be "jfisc,jfisv,jfmc" #requiredServiceTypes: "jfesc,jfisc,jfisv,jfmc" ## Settings for checking the health of local services healthCheck: ## Duration between health checks #interval: 5s ## Health check request timeout #requestTimeout: 5s ## The number of consecutive successful health checks that must occur before declaring an instance healthy #healthyThreshold: 2 ## The number of consecutive failed health checks that must occur before declaring an instance unhealthy #unhealthyThreshold: 2 ## External topology settings external: ## Settings for refreshing the router with external topology from the service registry refresh: ## Refresh interval #interval: 3s ## The maximum duration a service can be considered as healthy since its last heartbeat #maxStaleHeartbeat: 30s ## Support bundle aggregation settings supportBundle: ## The maximum duration support bundle aggregation is allowed before it is automatically cancelled #aggregationTimeout: 1h ## Logging settings logging: ## Router log settings application: ## The log level: error, warning, info, debug, trace #level: "info" ## The log format: jftext, json #format: "jftext" ## Whether to include the caller information (runtime frame) #caller: false ## Whether to print the log also to stdout #console: true ## Log rotation settings rotation: #compress: true #maxSizeMb: 25 #maxAgeDays: 0 #maxFiles: 10 ## Traefik log settings traefik: ## The log level: error, warning, info, debug, trace #level: "info" ## The log format: jftext, json #format: "jftext" ## Whether to include the caller information (runtime frame) #caller: false ## Whether to print the log also to stdout #console: true ## Log rotation settings rotation: #compress: true #maxSizeMb: 25 #maxAgeDays: 0 #maxFiles: 10 ## Request log settings request: ## If true, request log will contain additional information ## This may result in a slight performance overhead #verbose: false ## Log rotation settings rotation: #compress: true #maxSizeMb: 100 #maxAgeDays: 0 #maxFiles: 10 ## Add any custom environment variables to be passed to this service ## Environment variables starting with JF_ are not allowed, will be ignored with a warning if it is added env: #EXAMPLE_VAR: example-value #LD_LIBRARY_PATH: /usr/lib64