Java requirements
You must run Mission Control with JDK 8.
PHP requirements
Mission Control uses PHP to support its scripting functionality and requires PHP 5.6 on Debian and PHP 5.4 on Centos.
SELinux
Centos flavors may have issues starting MongoDB because of SELinux restrictions. Please refer to the
MongoDB documentation for instructions on configuring SELinux.
Browsers
Mission Control has been tested with the latest versions (known at the time of release) of Google Chrome, Firefox and Safari.
Download
The latest version of Mission Control is freely available for download from the
Mission Control Download Page.
Installation
Docker Installation
Mission Control is available for download as a Docker image to be run as a container. For full details, please refer to Running with Docker.
Debian Installation
JFrog Mission Control currently supports Debian 8.x.
Do not install Mission Control on a higher version of Debian as it has not been validated to work.
System library requirements
Mission control needs the following libraries to be present as run-time dependencies. Please ensure these are available before you begin installation.
- libcurl3
- libltdl7
- php5-fpm
- net-tools
When you install without these dependancies, the installer displays an error indicating that a number of dependencies are missing, prompting you to install them along with the install command.
Installation Instructions
Once you have
downloaded Mission Control, installing it is very straightforward:
Extract the contents of the compressed file
tar -xvf jfmc-debian-<version>.tar.gz
Run the installer
cd jfmc-debian-<version>
./installJFMC-debian.sh
The log file for the installation will be in a file installJFMC-debian.<timestamp>.log.
A control file is created as part of the installation. Start Mission control using this file
For v2.0.0 to v2.1.0,
/opt/jfrog/jfmc/scripts/jfmc.sh start
For v2.1.1,
/opt/jfrog/mission-control/scripts/jfmc.sh start
CentOS Installation
JFrog Mission Control currently supports CentOS 7.x.
Do not install Mission Control on a higher version of CentOS as it has not been validated to work.
System library requirements
Mission control needs the following libraries to be present as run-time dependencies. Please ensure these are available before you begin installation.
Installation Instructions
Once you have
downloaded Mission Control, installing it is very straightforward:
Extract the contents of the compressed file
tar -xvf jfmc-centos-<version>.tar.gz
Run the installer
cd jfmc-centos-<version>
./installJFMC-centos.sh
A control file is created as part of the installation. Start Mission control using this file
For v2.0.0 to v2.1.0,
/opt/jfrog/jfmc/scripts/jfmc.sh start
For v2.1.1,
/opt/jfrog/mission-control/scripts/jfmc.sh start
Ubuntu Installation
JFrog Mission Control currently supports Ubuntu 16.x.
Do not install Mission Control on a higher version of Ubuntu as it has not been validated to work.
System library requirements
Mission control needs the following libraries to be present as run-time dependencies. Please ensure these are available before you begin installation.
- libcurl3
- libltdl7
- php5.6-fpm
- net-tools
In order to install "php5.6-fpm" please run the below commands:
apt-get install python-software-properties
add-apt-repository ppa:ondrej/php
apt-get update
apt-get install -y php5.6-fpm
Installation Instructions
Once you have
downloaded Mission Control, installing it is very straightforward:
Extract the contents of the compressed file
tar -xvf jfmc-ubuntu-<version>.tar.gz
Run the installer
cd jfmc-ubuntu-<version>
./installJFMC-ubuntu.sh
The log file for the installation will be in a file installJFMC-ubuntu.<timestamp>.log.
A control file is created as part of the installation. Start Mission control using this file
For v2.0.0 to v2.1.0,
/opt/jfrog/jfmc/scripts/jfmc.sh start
For v2.1.1,
/opt/jfrog/mission-control/scripts/jfmc.sh start
Red Hat Installation
JFrog Mission Control currently supports Red Hat 7.x.
Do not install Mission Control on a higher version of Red Hat as it has not been validated to work.
System library requirements
Mission control needs the following libraries to be present as run-time dependencies. Please ensure these are available before you begin installation.
Installation Instructions
Once you have
downloaded Mission Control, installing it is very straightforward:
Extract the contents of the compressed file
tar -xvf jfmc-redhat-<version>.tar.gz
Run the installer
cd jfmc-redhat-<version>
./installJFMC-redhat.sh
A control file is created as part of the installation. Start Mission control using this file
For v2.0.0 to v2.1.0,
/opt/jfrog/jfmc/scripts/jfmc.sh start
For v2.1.1,
/opt/jfrog/mission-control/scripts/jfmc.sh start
Installation File Structure
After downloading and extracting the installer, the following file structure is created under the installation folder
install-<flavor>.sh | The installation script for specific Linux flavor (Debian/Centos) |
config | A folder containing files necessary to configure 3rd party services like MongoDB, PHP-FPM, etc. |
packages | A folder containing the actual packages to install (deb or rpm files) |
seed_data | A folder containing scripts necessary to seed users/data into 3rd party services |
migration | A folder containing scripts necessary to migrate from earlier versions of Mission control |
version.sh | A file containing the version of the JFMC |
Mission Control File structure
Home directory
The Mission Control home (/opt/jfrog/) directory will contain files necessary to start and stop all the micro-services associated with JFrog Mission Control
mission-control/bin | Mission Control service files |
mission-control/lib | The Mission Control runtime JAR file |
mission-control/scripts | Control scripts for Mission Control |
Microservices and Ports
Docker Installation
Mission Control'sDocker installation only needs port 8080 to be exposed on the host to function.
If the port is occupied, Mission control will throw an error on start.
To change the port that the Docker installation uses, update the server.port property to another value (between 0 and 65535) in the $JFMC_HOME/jfmc/etc/mission-control.properties
file.
Linux Installation
Mission Control runs a number of microservices with specific port allocations as described in the table below.
If a port is already in-use, the installer will display a warning, and in some cases, prompt for a different port.
Microservice | Port | Purpose | Service name in Debian and Centos Installs |
---|
Mission Control Server | 8080 | Core Mission Control service | mission-control.service |
Scheduler | 8085 | Manages scheduling for different internal Mission Control tasks | jfi-scheduler.service |
Executor | 8087 | Executes tasks to collect data from services | jfi-executor.service |
Graphs Core | 8090 | Graphs core functions | jfi-core.service |
8089 | Graphs core functions over SSL |
Elasticsearch | 9200 | Data service used for time-series data to generate graphs | elasticsearch.service
|
9300 | Transport client port for bulk inserts |
Mongo | 27017 | Data service used for storing non-time series data | mongod.service |
Postgres | 5432 | Data service used by the scheduler microservice | postgresql-9.6.service |
influx | 8088 | Maintained to manage migration from version 1.x to version 2.x Deprecated post 2.1.1 | influxdb.service |
Data
The Mission Control data folder (usually, /var/opt/jfrog/mission-control
) will contain files created and used by each of the micro-services.
Status of Installation
Use the following command to check the installation status. Once installation is complete, the same command will provide the status of the services as well.
For v2.0.0 to v2.1.0,
/opt/jfrog/jfmc/scripts/jfmc.sh status
For v2.1.1,
/opt/jfrog/mission-control/scripts/jfmc.sh status
Uninstalling
Use the control file to initiate uninstalling JFrog Mission Control as follows:
Please note that this will not uninstall third-party components installed as part of installation. They will have to be uninstalled manually.
For v2.0.0 to v2.1.0,
/opt/jfrog/jfmc/scripts/jfmc.sh removeServices
For v2.1.1,
/opt/jfrog/mission-control/scripts/jfmc.sh removeServices
Secure Access With SSL
JFrog Mission Control supports secure access with SSL. The following example shows how to enable access with SSL using a JKS keystore:
- Stop JFrog Mission Control
- Consult your Certificate Authority and generate a certificate for your instance of Mission Control
- Modify your
$MC_HOME/etc/mission-control.properties
file as follows:
Comment the line specifying 8080 as the server port (server.port=8080
) and uncomment the line specifying 8443 as the server port. When done you should have:
# server.port=8080 This line is commented
server.port=8443
Set the path to your keystore in the server.ssl.key.store
property. For example:
server.ssl.key-store=path/to/keystore.jks
Uncomment and set the keystore password property:
server.ssl.key-store-password=<Keystore password>
Uncomment and set the keystore type property:
server.ssl.key-store-type=JKS
Save the changes to your mission-control.properties
file.
Start JFrog Mission Control
Once you have completed this configuration, you can access JFrog Mission Control through the server port specified in the mission-control.properties
file.
For example, using the above configuration, you could access Mission Control via SSL using the following URL:
https://<mission-control-server-ip>:8443
Accessing Mission Control
Mission Control can be accessed through your browser using the following URL:
http://SERVER_DOMAIN:<server port>
The default port used by Mission Control is 8080, so a default installation would be accessed at http://localhost:8080.