Wondering how to install InfluxDB on Ubuntu 20.04? We can help you.
As part of our Server Management Services, we assist our customers with several InfluxDB queries.
Today, let us see how our Support Techs perform the installation for our customers.
Install InfluxDB on Ubuntu 20.04
InfluxDB provides familiarity and ease of a powerful API for building apps with less code, less effort, and fewer configurations.
In order t0 begin, our Support Techs recommend having an Ubuntu 20.04 server and a Sudo user.
-
Download and Install the InfluxDB Package
First, we will install the InfluxDB server by pulling the installation files from the official repo.
We SSH to the server. Then to download and add the InfluxDB GPG key into the server, we run:
$ sudo curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -
This command will result in an OK message.
After that, we add a new influxdb.list repository file to the list of available packages:
$ sudo echo "deb https://repos.influxdata.com/ubuntu bionic stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
Then, we update the package information index:
$ sudo apt update
Next, we install the influxdb package:
$ sudo apt install influxdb
Once done, we start the influxdb service:
$ sudo systemctl start influxdb
Later, to check the status of the InfluxDB server, we run:
$ sudo systemctl status influxdb
The package will be active and loaded on the server.
influxdb.service - InfluxDB is an open-source, distributed, time series da> Loaded: loaded (/lib/systemd/system/influxdb.service; enabled; vendor p> Active: active (running) since Fri 2021-09-03 06:08:59 UTC; 2min 3s ago Docs: https://docs.influxdata.com/influxdb/
-
Configure the InfluxDB Server
Now, we will configure a new admin user with root privileges for the InfluxDB server.
To do this, we execute the influx command.
$ influx
This will show the current connection, port, and version number.
Connected to http://localhost:8086 version 1.8.9 InfluxDB shell version: 1.8.9 >
The prompt > shows that the InfluxDB server is ready to accept commands.
To create an admin account, we run:
> CREATE USER admin WITH PASSWORD 'EXAMPLE_PASSWORD' WITH ALL PRIVILEGES
In addition, we need to make sure to replace EXAMPLE_PASSWORD with a strong value.
After that, we exit from the InfluxDB shell:
> quit
Eventually, we need to enable authentication. To do so, we modify the main InfluxDB configuration file.
We use nano to open the /etc/influxdb/influxdb.conf file:
$ sudo nano /etc/influxdb/influxdb.conf
Then we locate the line # auth-enabled = false under the [http] section.
... [http] ... # Determines whether user authentication is enabled over HTTP/HTTPS. # auth-enabled = false ...
Here, we change the value of auth-enabled from false to true and remove the leading # symbol from the line to uncomment the setting.
... [http] ... # Determines whether user authentication is enabled over HTTP/HTTPS. auth-enabled = true ...
Eventually, we save and close the file.
Next, to load the new security setting, we restart the influxdb service:
$ sudo systemctl restart influxdb
Now we can log in to the InfluxDB server with the admin username and password that we set:
$ influx -username 'admin' -password 'EXAMPLE_PASSWORD'
To verify everything is working, we run:
> SHOW DATABASES
We will see a default _internal database in the list like this:
name: databases name ---- _internal
-
Create an InfluxDB Database
Moving ahead, we’ll set up a sample database that stores metrics from a sample water level monitoring system.
On the influx shell, we create the water_db database. To do so, we run:
> CREATE DATABASE water_db
Then we hit enter, this will give us a new prompt > and nothing else.
This means the command execution has no errors.
However, we can verify if we’ve successfully set up the water_db database:
> SHOW DATABASES
This will give us a list of two databases:
name: databases name ---- _internal water_db
We are done here. The database is now ready to accept new data.
-
Write InfluxDB Data
Now, we’ll execute additional InfluxQL statements against the new water_db database.
Therefore, before we proceed, we switch to the new water_db database. To do so, we run:
> USE water_db
We will get an output similar to the following:
Using database water_db
Now we have a database that can accept writes and queries.
-
InfluxDB HTTP API
As we know InfluDB we basically built for developers. Hence, it has a very useful API that allows querying metrics with common tools without writing additional codes.
To query data from the water_db database, we run:
$ curl -G 'http://localhost:8086/query?pretty=true' -u admin:EXAMPLE_PASSWORD --data-urlencode "db=water_db" --data-urlencode "q=SELECT \"tank_location\", \"value_in_ft\" FROM \"water_level\""
Here, we need to make sure to replace EXAMPLE_PASSWORD with the correct password value.
The output will look similar to this:
{ "results": [ { "statement_id": 0, "series": [ { "name": "water_level", "columns": [ "time", "tank_location", "value_in_ft" ], "values": [ [ "2021-09-03T09:07:04.738274574Z", "MIAMI", 10 ], [ "2021-09-03T09:07:13.290269685Z", "SEATTLE", 5.4 ], [ "2021-09-03T09:07:29.030041003Z", "DALLAS", 3.2 ], [ "2021-09-03T09:08:16.340252215Z", "LOS-ANGELES", 1.3 ] ] } ] } ] }
Finally, the InfluxDB server and API will work as expected.
[Stuck in between? We are here to help you out]
Conclusion
In short, we saw the steps our Support Techs employ to install InfluxDB on Ubuntu 20.04.
PREVENT YOUR SERVER FROM CRASHING!
Never again lose customers to poor server speed! Let us help you.
Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.
0 Comments