0
Vote

Choices for RDBMS

What choices are there to use a RDBMS to store data instead of H2?

Comments 1 comment
  • 0
    Comment actions Permalink

    If you are using our SaaS model, or Hybrid installation model, then OverOps uses technology within AWS to store and serve up analytics via the web UI.  If you are using our on-premise installer.  You have a couple choices.

     

    1.  If you are using the on-premise installer to run a POC, then the built in H2 database will perform well, and will be the easiest way forward to prove out, and show value in the OverOps platform.

    2.  If you want to have a true "production grade" on-premise installation, then we support MySQL on the backend to store the metrics data.  However, you will need a MySQL DBA available to tune that system and provide the proper security, High Availability, or load balancing that your organization requires for a MySQL installation.

    The following are instructions for setting up MySQL as the backend.  In most cases it will take the skills of a DBA to have this properly setup.

     

    Mysql Server Installation

    Install Mysql server:

    1. Download the community edition OR use a mysql server shipped with the OS if it’s recent enough. As an alternative, if customer has a mysql server instance available, we can use that one. Options recap:
      1. Docker image: look at https://hub.docker.com/r/mysql/mysql-server/ and use the following commands (we assume docker is already installed in the host)
        1. docker pull mysql/mysql-server:5.7
        2. docker run --name=mysqlOO -d -e MYSQL_PASSWORD=<MY_DB_PASS> -e MYSQL_ROOT_HOST=<ARC_SERVER_IP> mysql/mysql-server:5.7

          Please replace:
          1. <MY_DB_PASS> with the desired mysql pass i.e. MYSQL_PASSWORD=”mysecretpass”
          2. <ARC_SERVER_IP> with the ARC server IP i.e.
            MYSQL_ROOT_HOST=172.17.0.3

        3. docker inspect mysqlOO
          This will show you the IP of the container if required form the ARC server. Prefer to use container name ( mysqlOO ) if resolved from the ARC server box. In this example I assume MYSQL server has ip 172.17.0.2
      2. OS repositories install. Depending the OS distribution this can be achieved with a command like:
        1. sudo yum install -y mysql-server
        2. Add user/host combination to allow remote access to the ARC server if running in another box ( this can be achieved with an “CREATE USER” command or with the use of “mysqladmin”) See section below for adding remote access.
      3. Download the Mysql Server Community latest 5.7 edition from Mysql site:
        https://dev.mysql.com/downloads/mysql/
        1. Use the best distribution media available for your Distribution ( i.e. for RedHat Linux distributions use RPM format ).
        2. Add user/host combination to allow remote access to the ARC server if running in another box ( this can be achieved with an “CREATE USER” command or with the use of “mysqladmin”)

    To Allow Remote MySQL Access to ARC Server

    1. Set up remote access to MySQL
      1. default MySQL configuration options are read from the following files in the given order:
        1. /etc/my.cnf   
        2. /etc/mysql/my.cnf    
        3. /usr/etc/my.cnf     
        4. ~/.my.cnf
      2. Modify my.cnf with vi my.conf
      3. Search for bind-address.
      4. Change the value to bind-address=0.0.0.0 (note this is for ipv4; use * in place of 0.0.0.0 for ipv6)
      5. Restart MySQL: service mysql restart
      6. Login to MySQL with root and grant access to database user
      7. sudo mysql -p
      8. mysql> use mysql
      9. GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION;

    ARC Server Installation and first run

    To install the ARC server run the following steps:

    1. Download the latest on-premise release from:
      https://s3.amazonaws.com/app-takipi-com/deploy/takipi-server/takipi-server-java.tar.gz
    2. Untar/unzip this tarball in the appropriate directory ( we assume here it is untarred to the ${TAKIPI_BASE}. With the default values we will then have a directory called /opt/takipi-server/ with the server contents ready to use.
    3. Start the ARC server the first time with the reference to the MYSQL server you installed using the command:

    "${TAKIPI_BASE}/takipi-server/takipi-server.sh --db-type mysql -u <ARC_SERVER_IP> --db-url jdbc:mysql://<MYSQL_SERVER_IP>:<MYSQL_SERVER_PORT> --db-user <MYSQL_USER> --db-password <MYSQL_PASSWORD> start"

    Please replace:

    • <MY_DB_PASS> with the desired mysql pass i.e.
      ”mysecretpass”
    • <ARC_SERVER_IP> with the ARC server IP i.e.
      172.17.0.3
    • <MYSQL_SERVER_IP> with the MYSQL server IP mysql binds to i.e.
      172.17.0.2
    • <MYSQL_PORT> with the MySQL server port i.e. (default is 3306)
      “3306”
    • <MYSQL_USER> with the MySQL server privileged user with proper grants i.e.
      “root”
    • <MYSQL_PASSWORD> with the password for the MySQL server privileged user i.e.
      “mysecretpass”


    ARC Server stop and start post initial installation


    To stop the ARC server use the following command:
    "${TAKIPI_BASE}/takipi-server/takipi-server.sh stop"

    To start the ARC server use the following command:
    "${TAKIPI_BASE}/takipi-server/takipi-server.sh -u <ARC_SERVER_IP> start"

     

Please sign in to leave a comment.

Join conversation