Install AGILITY VM Cloud Image

Determine disk space requirements

Disk space will depend on the number of PCAP files you want to process daily.

Initial specifications depending on the number of PCAP files to be processed daily:

Number of files per Busy Hour

Average number of packets per file

vCPU

Memory (GB)

Disk (GB) 3days Retention

Disk (GB) 90days Retention

50

2.5K

12

48

50

150

100

2.5K

16

64

50

150

50

25K

16

64

75

1000

25

250K

24

96

150

10000

Note: Assumptions: processing 100 files/day, retention period is 3 days.

 

The disk requirement applies either to the boot disk, when it is the sole storage option, or to the external disk when it is used as an alternative.

Note: The values associated with AGILITY application or its monitoring stack can be customized according to specific requirements and file sizes.


Choose your installation

A simple and straightforward way to utilize AGILITY is by provisioning an existing Cloud image. This option is available in both public and private cloud environments.

The access to the VM image will be provided by B-Yond.

On-Premises Virtualization Platforms

Public Clouds

  • AWS: The AMI (Amazon Machine Image) ID will be shared with target account.

  • Azure: The Azure VM image will be shared with target subscription/tenant.

  • Google Cloud: The Google Cloud VM image will be shared with target organization.

If you are using other Cloud providers or virtualization solutions, you may need to convert the qcow2 or VMware disk images to the format required by your platform. Consult the documentation of your specific provider or platform for instructions on image conversion.

Using the B-Yond provided images is recommended as they are pre-configured and optimized for running AGILITY.


Begin Installation

OpenStack

From the email sent from B-Yond, download the qcow2 image specifically configured for OpenStack.

  1. (As an administrator) Create an image:

    glance image-create --disk-format qcow2 --container-format bare --file ./Agility-X.YY.Z-AlmaLinux-X-GenericCloud-X.Y-YYYYMMDD.x86_64.qcow2 --min-disk 25 --min-ram 2048 --name Agility-X.Y.Z
  2. (As an administrator) Create a member for the glance image:

    glance member-create <image-id> <member-id>
  3. (As an administrator) Accept the membership for the glance image:

    glance member-update <image-id> <member-id> accepted
  4. (As a user) Create a VM using the image (minimum use m1.medium which is 2 CPU / 4096 RAM / 40G disk):

VMware ESXi

From the email sent from B-Yond, download the provided VMware disk image specifically configured for VMware virtualization environments.

  1. To import a virtual machine stored on a VMware Hosted product to an ESX/ESXi host, run:

  2. Create the VM using the imported disk. Option Guest OS: Other Linux (64-bit).

  3. Using the console login as root , password almalinux.

  4. Set up static network configuration, e.g. using nmtui.

  5. Increase VM disk size:
    -Increase disk size from ESXi
    -Rescan using echo 1>/sys/class/block/sda/device/rescan
    -Recreate the partition 2 with fdisk

    -Increase the filesystem size using xfs_growfs /dev/sda2

  6. Configure ssh options, e.g. set authorized keys for default cloud-user almalinux or another user.

Public Clouds (AWS, Azure, GCP, etc.)

Follow the procedures specified by your Cloud provider. These procedures typically include the following steps:

  • Image selection: Choose the AGILITY VM image obtained from B-Yond or the converted image.

  • Shape specification: Specify the number of virtual CPUs (vCPUs) and RAM for the instance.

  • Boot disk specification: Define the size and type of the boot disk.

  • Networking configuration: Configure the network settings for the VM.

  • Public SSH key(s): Provide the SSH key(s) that will be used to access the VM.

  • Provide an init-cloud script to run (this is in general an optional step).

Access the VM

  1. SSH in using the cloud-user and the associated private key:
    –           Generic Cloud: almalinux
    – AWS - AMI: ec2-user

  2. Verify that all components are up and running:

    All Kubernetes pods should be in Runningand Ready status.

  1. Access the user interface (UI):
    Open your browser and put the AGILITY VM IP, .e.g https://10.0.0.1/cv/
    Use the following credentials:
    username: agility-admin@b-yond.com
    password: agility-admin@b-yond.com


Configure DNS Servers (Optional)

The DNS server is by default provided via DHCP. This section is relevant if you need to specify an additional DNS server or if the DHCP option is unavailable.

To configure nameservers, domain search suffixes, etc., use the NetworkManager tool:

  1. Check the current DNS configuration:

    Example output:

  2. Identify the network connection to configure:

    Example output:

  3. Add a new DNS server:

  4. To check the change run again:

Removing DHCP DNS

If you need to remove the DNS server specified by DHCP, run the following commands:

This will leave only the DNS servers configured manually.

Changing the domain name

If you need to change to domain name, use the ipv4.dns-search option. Ensure that the correct fully qualified domain name (FQDN) is set before by using the hostnamectl set-hostname command.

Executed the following commands:

For example, to add a domain name in the search list (here http://example.com ), run:


Configure System Clock (Optional)

AGILITY VM facilitates clock synchronization using the Chrony service, which is enabled by default and synchronizes with a pool of public NTP servers.

Using a Custom NTP Server

To synchronize the VM clock with a specific NTP server:

  1. Check the current configured servers:

    Example output:

  2. Add your server definition in the file /etc/chrony.conf:

    For example, using a public cloud NTP server:

  3. Comment out the entry pool 2.almalinux.pool.ntp.org iburst to enforce using only the specified NTP server:

  4. Restart the Chrony service:

  5. Check the changes were applied (Wait until the status changes from ^? to ^*, it might take several minutes):

    Example output:

  6. Enable NTP and trigger a synchronization:

  7. Verify the clock is synchronized:

    Example output:

  8. To confirm Chrony tracking, run the command:

    The output also shows the configured NTP server:

  9. Ensure the Chrony service is available after reboot:

Configure the time zone

Your system’s time zone settings are stored in the /usr/share/zoneinfo directory. To ensure your system is set to the appropriate time zone, such as Europe/Paris, execute the following command:

Additionally, you can confirm your current time zone by inspecting the /etc/localtime file:

 


Attach an External Disk (Optional)

In cases where external disk attachment is necessary, follow these steps. This will depend on the type of external disk used.

Prepare the VM

  1. Access the VM using ssh

  2. Stop the processes

  3. Place the persisted data into a different location:

NFS example

  1. Create a directory on your Ubuntu system to serve as the mount point for the NFS share:

  2. Edit the /etc/fstab file as root using a text editor, such as nano or vim:

  3. Add an entry at the end of the /etc/fstab file to specify the NFS share and the mount point. The entry should follow this format:

  4. Replace  with the IP address or hostname of the NFS server,  with the path of the directory you want to mount, and  with the path of the local mount point you created in Step 1.
    For example, if the NFS server IP address is 192.168.1.100 and the remote directory you want to mount is /data, the entry would look like this:

  5. Save the changes and exit the text editor.

  6. To mount all entries listed in /etc/fstab, you can use the mount -a command.

Ensure that your VM has network connectivity to the NFS server and that you have the necessary permissions to access the NFS share.

Block volume example

Your AGILITYloud provider gives you the ability to provision block storage and attach the disk to your VM. Follow the recommended procedures. E.g., it involves several iscsi commands executions.

  1. Once attached, format the disk (e.g., sdb):

  2. Persist the changes:

Restore data

  1. Copy the data to the newly mounted external location:

  2. Start the processes:

  3. Wait a few seconds and ensure that all services are in the Running state:

  4. Verify that the system is functioning correctly by performing tasks in the UI.

  5. Once you have confirmed everything is working as expected, you can delete the old data: