After completing the tasks outlined in this document, you will have successfully installed the Interana software on a single node cluster, configured the Interana command line interface (CLI), and created an admin user account.
The recommendations in these instructions are meant for a test environment installation. It is advised that you first use Interana in a test environment, and move to a production installation once you've successfully tested your data. Consult with your storage administrator regarding the production environment requirements for your site.
Before you begin
The node on which you will install Interana must be running Ubuntu 14.04.x and must also meet the following minimum requirements:
- 4 CPU cores
- 8 GB RAM
- 200 GB storage
The Interana installation includes the following tasks. Click a link to jump directly to the step-by-step instructions.
- Provision a node.
- Download the Interana software.
- Install MySQL.
- Install Interana.
- Install Nginx.
- Configure Google Cloud Platform nodes ONLY.
- Start Interana.
- Configure the Interana CLI.
- Create an admin user account.
- Disable the default root user account.
- Add an admin email address and password.
1. Provision a node
Before you can begin installing Interana, you must provision a node.
To provision a node for an Interana cluster, do the following:
- Provision your node with Ubuntu 14.04.x.
- Make a note of the IP address. You will need it later.
- Verify that you have SSH connectivity to each node, with no TCP restrictions (such as iptables).
- Log into the node, and continue to download the Interana software.
2. Download the Interana software
The the APT AWS S3 transport allows you to fetch files from the Interana private repository on AWS S3. You import a Gnu Privacy Guard (gpg) key so you can then securely download the Interana software from a trusted site.
To download the Interana software, do the following:
- Open a Terminal window and log into the VM. The following example uses the Ubuntu default username (ubuntu) and password (ubuntu). Use the login credentials established when you provisioned your VM.
ssh ubuntu@<IP_address> password: ubuntu
apt-transport-s3with the following command, so you can fetch files from the Interana private repository on AWS S3.
- Configure apt-transport-s3 package.
sudo dpkg -i apt-transport-s3_1.2.1-1_all.deb
- Go to the
/etc/apt/s3auth.conffile and add the AWS credentials Interana provided you with for access to the Interana private repository. Note: Create the
s3auth.conffile if it doesn't already exist. The following is an example of the credentials to be added.
AccessKeyId = AKIAyouraccesskeyidUZBA SecretAccessKey = W18sR/ZrAT0WyoursecretaccesskeyVjOkg0DMl Token = ''
- Import the gpg key by entering the following command.
wget -qO - https://apt.interana.com/repo.key | sudo apt-key add -
- To add an apt repository, enter the following command.
echo "deb [arch=amd64] s3://interana-apt-prod.s3.amazonaws.com/ trusty main" | sudo tee -a /etc/apt/sources.list.d/interana.list
- To refresh your package index with information about the latest version of the Interana software, enter the following command.
sudo apt-get update
3. Install MySQL
Install MySQL 5.3 or newer. This task installs MySQL on the config node of the cluster (the Interana supported configuration). You can install MySQL in another location, but alternate configurations are not supported by Interana.
You install MySQL to create a database for Interana metadata. This step is necessary for all single node clusters, but only required for the config node of a multi-node cluster. For more information, see Install multi-node Interana.
To install MySQL for Interana, do the following:
- Enter the following command in a terminal window.
sudo apt-get -y install mysql-server
- In the MySQL Package Configuration window, enter a password for the MySQL root user. We'll refer to this as the MySQL root password later on.
4. Install Interana
Now that MySQL is installed, you are ready to install the Interana software. You can install Interana with the typical settings, or install Interana with custom settings. Review the list of customizable Interana settings before you begin a customized installation.
To install Interana, do the following:
- To perform a standard installation with typical Interana settings, go directly to the next step (step 2). To perform a custom installation, do one of the following:
To access advanced installation settings, such as the directory path under which persistent data is stored or to use a non-standard mysql port, enter the following command and respond to the prompts:
DEBIAN_PRIORITY=low sudo -E apt-get install interana-cli interana
- To only customize the location of the data disk (and use all other typical Interana settings), enter the following command.
echo 'interana-cli interana interana/data_path string /mnt/<path>/<mountpoint>' | sudo debconf-set-selections
- To install Interana with the typical settings, do one of the following:
- To install the full Interana package that includes GPL-licensed software, enter the following command:
sudo apt-get -y install interana-cli interana
- To install Interana without any GPL-licensed software, enter the following command:
sudo apt-get -y install --no-install-recommends interana-cli interana
If you already have interana fully installed and want to remove GPL-licensed software, use the following command:
sudo apt-get remove interana-python3-extra
- Enter the MySQL server address. Use localhost or 127.0.0.1 for a single node installation.
- Enter the MySQL server port. It's recommended that you keep the 3306 default.
- Enter the MySQL username, which was set to
rootwhen you installed MySQL.
- Next, enter the MySQL root password that you set when you installed MySQL.
- Accept the default values for the node configuration (leave listener unselected), and then press Enter. The listener node is an optional node type that enables the "add_events" API for sending data to Interana via a direct HTTP request.
You've successfully installed the main Interana software package. Next you need to install the software required for the user interface.
5. Install Nginx
Nginx is used to run the Interana user interface.
To install Nginx, do the following:
- Enter these commands in a Terminal window:
sudo apt-get install -y software-properties-common sudo add-apt-repository -y ppa:nginx/stable sudo apt-get update -y
- Finalize the Nginx installation with the following command:
sudo apt-get upgrade nginx
6. Configure Google Cloud Platform nodes ONLY
If you provisioned a node in the Google Cloud Platform (GCP), you have to install the google-compute-engine.
To install the google-compute-engine, enter the following command:
sudo /usr/share/python/interana-python/bin/pip2 install --upgrade google-compute-engine
7. Start Interana
Now you’re ready to start Interana.
To start the Interana service, do the following:
- In the terminal window, enter the following command.
sudo service interana start
Open a browser window, and enter the following in the URL field.
- Log in to Interana using the default username
root@localhostand the default password
- If you see the Interana login prompt, as shown below, you are ready to configure the Interana CLI. After which, you can add an admin user account with the CLI.
- If you see a Welcome to nginx! prompt instead, see the workaround tip to resolve the issue.
If you did not see the Interana login prompt, the following workaround tip may help you resolve the issue.
If you see a Welcome to nginx! message, do the following:
- Go back to the Terminal window and type the following two commands to remove the file that's keeping Interana from starting correctly:
cd /etc/nginx/sites-enabled rm default
- Now type
ls -land look for a file named
default.something. Use the following command to rename the file to
default.somethingto the actual name of the file):
mv default.something default
- Now restart Nginx (type
service nginx restart) and open your site’s URL from your browser again.
8. Configure the Interana CLI
You configure the Interana CLI for a (default) single-node cluster so you can use the CLI to create user accounts, with or without email authorization.
You must have login credentials for the cluster and know the cluster URL. The HTTPS URL uses the fully qualified domain name (FQDN) of the instance to configure a connection with the cluster.
To configure the CLI to manage the default cluster, do the following:
- In a shell window, type the following command.
ia config https://<default-cluster-IPaddress>
You receive a response similar to the following:
Visit https://myclusterIP/api/create_token and supply your new API token.
- Open a new browser window and enter the URL: https://mycluster.interana.com/api/create_token. You receive a generated token similar to the following.
- Enter the token value (in the terminal window) as it appears (between the "") when you are prompted for the API key, and then press Enter. You are notified that the credentials have been configured.
Enter API Key: <pasted token value is not visible> Success! Credentials stored as default config
9. Create an admin user account
Now you are ready to create an admin account using the CLI. You specify a
password for each new account you create. For security purposes, the password used to create the account is visible in the bash history. For this reason, it's important to advise the user change their password when they initially log into their account.
It is recommended that you make the first user an admin so you can use the import wizard to ingest data. Use a fully qualified domain name (FQDN) for the user name, such as email@example.com.
create user command has the following structure and options.
ia user create <username> <password> [--no-email] [--base-url <base_url>]
- By default, Interana will send an e-mail notification to the user (we will treat their username as their e-mail address) welcoming them to Interana and asking them to verify their account. The
--no-emailoption specifies that email confirmation by the user is not required to activate the account and no e-mail will be sent.
- If you do not use the
--no-emailoption, it is strongly recommended that you set the
--base-urlis not set, it defaults to the public IP of the first API node, which may not be user-friendly.
--base-url is set in the following example, requiring email authorization by the user to activate the account.
To create an admin user account, do the following:
- Enter the following command in the terminal window, with the account username and password, and a valid URL for email authorization.
ia user create firstname.lastname@example.org admin-password --base-url example.company.com
- Enter the following command to give the user account admin privileges.
ia user update email@example.com --add-role admin
10. Disable the default root user account
For security reasons, it is very important that you disable the default root@localhost user account.
You created a new admin user with a secure password in the previous step. Leaving the default root@localhost user account active, when login credentials are publicly known, is a security risk. For this reason, it is strongly recommended that you perform the following procedure immediately.
To disable the default root user, do the following:
- Log in to the Interana cluster as the admin user you created in step 9.
- Enter the following command to disable the root@localhost user account.
ia user disable root@localhost --unsafe
11. Add an admin email address and password
The Interana cluster admin may want to receive email notification of system alerts and reports. The MySQL database resides on config node of an Interana cluster, so this is where you add an admin email address and login credentials. The email address must have a fully qualified domain name (FQDN).
See Adding an admin email address and password for step-by-step instructions.
Congratulations! Now that you've installed Interana, configured the CLI, and created an admin user account, it's time to add your data.