Deploying View

This page describes how to deploy View in your environment.

Creating an Account

In order to deploy View, you must create an account at app.view.io . During onboarding, supply your company information, your contact information, and choose either a trial plan or a paid plan. Trial plans provide a free credit to deploy and test View, and expire when the balance reaches $0. Paid plans use top-up billing with an initial charge and recharge amount of $100. Your account will be automatically re-charged when your balance falls below $20. Creation of a trial account requires that you put a credit card on file. Your card will not be charged unless you opt-in to the paid subscription. If you do not opt in to the paid subscription, your account will remain on a trial plan.

Need a longer trial? Contact us at [email protected]

Once you have created your account, you will find two important details:

  • Your account GUID: a globally-unique identifier that represents your account with View
  • Your personalized installation link: a single command that you can run on your supported Linux machine to install and start View

System Requirements

It is recommended that you deploy View on a Linux physical server or virtual machine with the following recommended configuration:

  • Intel, AMD, or ARM architecture
  • Minimum 8 virtual or physical CPUs (16 or more is preferred)
  • Minimum 16GB of RAM (32GB or more is preferred)
  • Minimum 250GB of disk space, increase to accommodate your data set sizes

Currently, View supports the following operating systems:

  • Ubuntu 22.04 or 24.04 (recommended)
  • Red Hat Enterprise Linux version 8 and 9

Installation

The View installation script can be invoked by using the shell command that is linked on the home page of your account at https://app.view.io. Simply paste the shell command and View will be installed and started.

Installation usually takes around 10 minutes but can very based on internet speeds.

Firewall

The View system relies on a distributed microservices architecture deployed via Docker containers, which may require specific network configurations to function optimally. During installation, you might encounter connectivity challenges that necessitate firewall adjustments. If you experience login difficulties or encounter a 502 error after running the installer and attempting to access the dashboard on port 9000, network restrictions are likely the root cause. Specifically, modifying the Uncomplicated Firewall (UFW) configuration can effectively resolve these connectivity issues and ensure smooth system operation. Important: Before implementing any firewall modifications, consult with your organization's security team to review and approve the proposed network configuration changes to maintain compliance and security standards.

Solving UFW and Docker issues

Modify the UFW configuration file /etc/ufw/after.rules and add the following rules at the end of the file:

# BEGIN UFW AND DOCKER
*filter
:ufw-user-forward - [0:0]
:ufw-docker-logging-deny - [0:0]
:DOCKER-USER - [0:0]
-A DOCKER-USER -j ufw-user-forward

-A DOCKER-USER -j RETURN -s 10.0.0.0/8
-A DOCKER-USER -j RETURN -s 172.16.0.0/12
-A DOCKER-USER -j RETURN -s 192.168.0.0/16

-A DOCKER-USER -p udp -m udp --sport 53 --dport 1024:65535 -j RETURN

-A DOCKER-USER -j ufw-docker-logging-deny -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -d 192.168.0.0/16
-A DOCKER-USER -j ufw-docker-logging-deny -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -d 10.0.0.0/8
-A DOCKER-USER -j ufw-docker-logging-deny -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -d 172.16.0.0/12
-A DOCKER-USER -j ufw-docker-logging-deny -p udp -m udp --dport 0:32767 -d 192.168.0.0/16
-A DOCKER-USER -j ufw-docker-logging-deny -p udp -m udp --dport 0:32767 -d 10.0.0.0/8
-A DOCKER-USER -j ufw-docker-logging-deny -p udp -m udp --dport 0:32767 -d 172.16.0.0/12

-A DOCKER-USER -j RETURN

-A ufw-docker-logging-deny -m limit --limit 3/min --limit-burst 10 -j LOG --log-prefix "[UFW DOCKER BLOCK] "
-A ufw-docker-logging-deny -j DROP

COMMIT
# END UFW AND DOCKER

source: https://github.com/chaifeng/ufw-docker?tab=readme-ov-file#solving-ufw-and-docker-issues

Solving IPTables Issues

Oracle Cloud Infrastructure's default IP Tables configuration includes restrictive security measures that affect container-to-container communication. These default settings can prevent proper API communication between containerized services within your environment. To enable proper container interoperability and internal API functionality, you'll need to implement a specific firewall rule configuration. This modification ensures seamless communication between your containerized services while maintaining appropriate security boundaries.
Note: The following configuration adjustments should be implemented in accordance with your organization's security policies.

$ sudo su

$ iptables -I INPUT -j ACCEPT

$ iptables-save>/etc/iptables/rules.v4