1. Introduction Last updated: 2022-01-24

Welcome to the vmmax Cloud Docs

Here you will find everything there is to know about the vmmax Cloud platform.

1.1 vmmax Cloud

The vmmax Cloud platform is an enterprise-class private cloud node system with a Type-1, Type-2, Hypervisor and a Container Engine technology that can be used to run virtual machines and containers at 98.2% with NX, 96.9% with VX, and 98.9% with CX, bare-metal performance. In some high intense I/O based operations, even faster.

The vmmax Private Cloud is a computing service offered either over the Internet or a private internal network and only to select users instead of the general public. Also called an internal or corporate cloud, private cloud computing gives businesses many of the benefits of a public cloud - including self-service, scalability, and elasticity - with the additional control and customization available from dedicated resources over a computing infrastructure hosted on-premises. In addition, vmmax private clouds deliver a higher level of security and privacy through both company firewalls and internal hosting to ensure operations and sensitive data are not accessible to third-party providers and/or services.

Benefits of vmmax Private Cloud

1.2 vmmax Nodes

The vmmax Node is an entire system server nucleus and is referred as a part of a cluster of machines. What makes vmmax nodes unique is that the machines in a cluster can be of different types. For example, a EC2 instance on AWS, a Virtual Machine on Azure or Google, a Raspberry PI device, a Zadara VM Instance, a Vmware Virtual Machine, a KVM Virtual Machine, or simply a bare-metal device. Basically, any type of device (x86, x64, ARM) that can run the Ubuntu Server operating system. This flexibility comes from the structure of the vmmax hypervisor and the container engine technology. There are three node types that we distinguish by the hypervisor:

  • vmmaxVizor NX
    is running the vmmaxOS operating system on bare-metal and is a Type-1 Hypervisor / Container Engine
  • vmmaxVizor VX
    is running the embedded vmmaxOS Kernel system on top of the Ubuntu Server operating system and is a Type-2 Hypervisor / Container Engine
  • vmmaxVizor CX
    is running the embedded vmmaxOS Kernel system on top of the Ubuntu Server operating system and is a Container Engine
The vmmax core hypervisor technology is based on the kvm open-source project with modified kvm-intel.ko, kvm-amd.ko, and kvm-arm.ko modules. Furthermore, the core container engine is based on the lxd open-source project. The vmmaxOS Kernel that runs the hypervisor and container technology is however proprietary and uses the Ubuntu Server 20.04 operating system as an installation proxy.

1.3 vmmax Control Center

vmmax Control Center is an advanced server management software that provides a centralized platform for controlling your vmmax nodes, allowing you to deliver a virtual infrastructure with confidence. The vmmax Control Center includes managements modules for App Stacks, Databases, Containers, Virtual Machines, Connect Pools, Users, Security Gateway, Auto-SSL, Security Tunneling, Snapshots, Backup, and more. The vmmax Control Center is, with its simplistic design, the most appreciated component of the vmmax Cloud platform by administrators and operators.

The vmmax Control Center is accessible through your favorite HTML5 Browser or with the free vmmax Control Center Client for Windows available on our download page. Please note that there is no difference in functionality between the two, except that the installable client uses a separate window screen for each console sessions.

1.4 vmmax Connect Client

vmmax Connect Client enables a digital workspace with the efficient delivery of virtual desktops, terminals, and applications that equips workers anywhere, anytime, and on any device. With deep integration into the vmmax connect technology, the platform offers an agile foundation, modern best-in-class management, and end to end security that empowers today’s Anyware Workspace.

vmmax Connect Client enables you to

  • Enable Remote Work
    Keep employees connected and productive anywhere they work and on any device with a consistent, personalized desktop environment.
  • Build Resiliency
    Adopt a scalable, cloud-based platform that offers the resiliency needed to meet change head-on with flexible deployment options across private and public clouds.
  • Modernize Operations
    Transform legacy infrastructure with integrated leading-edge technologies that automate the provisioning and management of virtual desktops and apps and deliver the personalization required by end-users.
  • Secure Data and Achieve Compliance
    Ensure secure remote access to corporate resources from any device with intrinsic security built into the VMware infrastructure. Integration with Carbon Black boosts security using a zero-trust model.
  • Improve ROI
    Achieve cost savings and realize business value with more flexible and reliable access to resources.


1.4.A vmmax Connect HTML5 Client

The vmmax Connect HTML5 Client is accessible through your favorite HTML5 Browser (Chrome, Edge, Firefox...) from any desktop and mobile (iPhone, iPad, Android) device and provides a secure connection to your virtual desktop, terminal, and application.

1.4.B vmmax Connect Windows Client

The vmmax Connect Windows Client provides a secure protocol to access your virtual desktop, terminal, and application. The Windows client provides enhanced features such as AI-Driven real-time optimizations for image quality, bandwidth, latency, and performance adjustments.

1.5 vmmax CLI Client

The vmmax CLI Client provides a secure protocol to access your vmmax Nodes directly to perform operations such as start, stop, and snapshot virtual machines and containers. It is generally used by administrators to automate certain tasks.

1.6 vmmax Live Demo and/or PoC

We offer Free Live Demo and/or Paid PoC (proof of concept) workshops. Please contact us to schedule a date and time with our vmmax consultants.



Schedule a Live Demo Now

2. Node Deployment Last updated: 2022-01-24

vmmax Node Types

In this section we will explain how to purchase fully managed vmmax Cloud Nodes and/or install the vmmax Cloud Platform on your devices. Beforehand, we would like to explain the terminology we use to distinguish node types. We have defined three types of vmmax nodes:

  1. vmmax Certified In-House Nodes
    are bare-metal oem-machines that we host in our data centers and offer to customers as fully managed cloud nodes. These nodes are Type-1 hypervisor systems managed with vmmax software.
  2. vmmax Certified External Nodes
    are bare-metal and/or virtual machines that are hosted in external data centers (AWS, Azure, or Google for example), that we offer to customers as fully managed cloud nodes. These nodes are Type-1 and Type-2 hypervisor systems managed with vmmax software.
  3. On-Edge/On-Premises Nodes
    are bare-metal and/or virtual machines that are managed by our customers. These nodes are Type-1 and Type-2 hypervisor systems managed with vmmax software.
"Note"
We have listed our bestselling vmmax Certified In-House Nodes on our Home Page, ready for action in various regions. However, if you require computing resources for a special workload, you can also contact us, and we will take your custom order. We offer many variants of nodes for workloads like for example, Storage, GPU, CAD, HPC, ... and more.


Deployment Types

Now that we understand the node types, let us move to the deployment types.
  • vmmax Private Cloud
    is when you have an account with us and want to join a vmmax Certified In-House Node/vmmax Certified External Node to your private cloud account.

    Required Steps:
    1. Purchase a cloud node (2.1 Purchase Procedure)
    2. Register your cloud node to your account

  • vmmax Hybrid/Multi Cloud
    is when you have already an account with us and want to join your own device to your private cloud account. This device can be a bare-metal or a virtual machine that is hosted on any public cloud or on-premises. This is commonly used for business continuity and/or risk management.

    Required Steps:
    1. Install vmmax Cloud Platform on your device (2.2 Installation Procedure)
    2. Install vmmax Cloud Platform licenses and certify your device (2.3 Certification Procedure)
    3. Register your cloud node to your account

  • vmmax On-Edge/On-Premises Cloud
    is when you want to deploy vmmax Cloud On-Edge/On-Premises and build your own private cloud. This is commonly used to replace or modernize traditional virtualization technology.

    Required Steps:
    1. Install vmmax Cloud Platform on your devices (2.2 Installation Procedure)
    2. Install and license vmmax Control Center on at least one node
    3. Install vmmax Cloud Platform licenses and certify your devices (2.3 Certification Procedure)
    4. Register your cloud node to your vmmax Control Center

  • vmmax Free Cloud
    is the free version of the vmmax Cloud Platform and vmmax Control Center with no restrictions in functionality. The only limitation of vmmax Free Cloud deployment is that your device will not be certified and secured by SSL and secure tunneling technologies and therefore should be used on a private network for development and test purposes only

    Required Steps:
    1. Install vmmax Cloud Platform on your devices (2.2 Installation Procedure)
    2. Install vmmax Control Center on at least one node
    3. Register your cloud node to your vmmax Control Center


2.1 Purchase

Here is an overview on how we process your purchase of a vmmax Cloud Node and vmmax Licenses.

  • Ordering a cloud node online
    If one of our bestselling cloud nodes on our Home Page is fulfilling your workload expectations then all you need to do is:
    1. Select a plan and complete the order
    2. We activate your account within 4 hours (may take longer over weekends and holidays)
    3. We send out an email with important information and you are ready to go
  • Ordering a custom cloud node
    If you require custom computing resources and/or not sure what type of cloud node is acceptable for your workload:
    1. Contact us using our contact form and schedule a meeting with one of our consultants.
    2. We send out an unbinding offer for your project
    3. If you agree, we activate your account within 4 hours (may take longer over weekends and holidays)
    4. We send out an email with important information and you are ready to go
  • Ordering vmmax licenses
    If you have deployed vmmax Cloud Platform and vmmax Control Center on your own devices and require licensing, support, and certification:
    1. Click Here and select a license model and complete the order
    2. We send out an email with your license key and you are ready to go

2.1 Installation

Preparation

  1. If your device is behind a firewall, please implement and exception on your firewall for the following ports for your device:
    • 22 TCP - INBOUND/OUTBOUND - is used for secure ssh communication and secure tunneling of protocols with the cloud node
    • 80 TCP - INBOUND/OUTBOUND - is used by the gateway server to authenticate domain names with the Let's Encrypt service
    • 443 TCP - INBOUND/OUTBOUND - is the default port for the gateway server (https)
    • 444 TCP/UDP - INBOUND/OUTBOUND - is used by the gateway server for authentication and secure tunneling of connect sessions

    "IMPORTANT"
    • If you plan to add your node to your vmmax.cloud account you need to open above ports also in your public firewall and implement an exception in your filewall and/or proxy for the address https://vmmax.cloud.
    • If you plan to deploy a vmmax Control Center instance on your node you need to implement an exception in your fireall and/or proxy for the address https://sec.vmmax.cloud. This exception must be implemented to allow vmmax components to start and verify licensing and synchronize with the container and security update repositories.
    • If you plan to use automatic SSL certificate installations and renewals you need to implement an exception in your fireall and/or proxy for the following domains:
      acme-v01.api.letsencrypt.org
      acme-staging.api.letsencrypt.org
      acme-v02.api.letsencrypt.org
      acme-staging-v02.api.letsencrypt.org
  2. Ubuntu Server 20.04
    Please install Ubuntu Server 20.04 on your bare-metal or virtual device. For more information about how to install the Ubuntu operating system please have look here. Please enable, if available, CPU virtualization in your BIOS or virtual machine engine. You may also optionally enable IOMMU to passthrough pci devices. If CPU virtualization is not available on your device, you may continue the installation to install the vmmax container technology only.

    "IMPORTANT"
    Please follow the following partitioning rules:
    • / size - 25 GB
    • /swap size - 2 GB
    • /home size - 2 GB
    • /opt size - 25 GB
    • /usr size - 25 GB
    • /var size - maximum GB possible

    "IMPORTANT"
    You need to check mark Install OpenSSH Server during the setup or alternatively install OpenSSH Server after the installation. Please don't install any other packages since they all will be removed by the vmmaxOS kernel. If you have additional packages installed the removal procedure may take a long time.

    "IMPORTANT"
    Please make sure you have configured your DNS Server entries correctly to resolve internal FQDN (Fully Qualified Domain Name)
  3. Root User Access
    You need to enable root user access to install the vmmaxOS Kernel. To enabled root access:
    1. Login with your user that you used during setup
    2. Make sure your network and name server (DNS) settings are correct and you can connect to the Internet. To check your Internet connection, run the following command
      apt update
    3. Now enter the following command to enable and set the root password
      sudo passwd
    4. When prompted, first enter your sudo password (that is the password you used for your user during setup)
    5. Next enter a password for the root user
    6. Confirm the password for the root user
    7. Now enter exit and login with root
    8. Enter the following command to edit the sshd_config file
      nano /etc/ssh/sshd_config
    9. Move your cursor to the part #PermitRootLogin
    10. Modify that line to
      PermitRootLogin yes
    11. Now press Ctrl+X and then y to save the configuration
    12. Next execute the following command to delete your install user
      userdel -r your_install_username
    13. Last, enter the following command and wait for the machine to reboot
      reboot
  4. Ready to install vmmax Cloud
    At this point you should have a clean install of Ubuntu Server 20.04 with root access enabled and Internet connectivity.


Installing vmmax Cloud

By installing and using vmmax software you agree to our End User License Agreement

We have developed an easy-to-use installer application that will deploy, install, configure your device and convert it to a cloud node. Follow the instructions below to install and deploy the vmmax Cloud Platform:
  1. First you need to download the installer
  2. Unpack the zip archive
  3. Start vmmaxInstaller.exe
  4. Enter the Domain or IP address of your device
  5. Enter the root password
  6. Click on the "Start Installation" button
  7. After 5-15 minutes, your installation is done
"IMPORTANT"
You need to copy and save the Node ID and Node Token that was generated at the end of the installation. Your root user is disabled after the installation and to access your device you need the token that was generated. At this point you can only manage your node by registering it to a vmmax Control Center.



"TIP"
To check your installation, open your Internet Browser and enter http://your_device_ip, you should see the vmmax Security Gateway 403 page.


Installing vmmax Control Center

By installing and using vmmax software you agree to our End User License Agreement

We have developed an easy-to-use installer application that will deploy, install, configure vmmax Control Center on your cloud node. Before you continue to the installation here are a few important things that you should know beforehand.

  • The vmmax Control Center is an appliance with the vmmax Control Center server running on it.
  • You can deploy the vmmax Control Center only on a vmmax Cloud Node.
  • You can deploy the vmmax Control Center on many cloud nodes and configure it for high availability with the master/replica model.
  • You must install the vmmax Cloud Center on at least one cloud node to manage your vmmax Cloud Nodes.
After you have installed your first vmmax Cloud Platform on your device you can install the vmmax Control Center. Please follow the steps below to deploy and install the vmmax Control Center:
  1. First you need to download the installer
  2. Unpack the zip archive
  3. Start vmmaxCCInstaller.exe
  4. Enter the Domain or IP address of your device
  5. Enter the node token
  6. Click on the "Start Installation" button
  7. After 5-15 minutes, your installation is done
  8. Wait at least 3 minutes
  9. Open you Internet Browser and go to http://your_device_ip
  10. In the login screen enter the following to login:
    Email: admin@system
    Password: admin@system1234!
  11. After you login, click on "Change Password" to change your password
"IMPORTANT"
The default password of the vmmax Control Center is public knowledge, please change it immediately after your first login.


2.2 Certification

By installing and using vmmax software you agree to our End User License Agreement

You can install the vmmax Cloud Platform on as many devices you want and deploy the vmmax Control Center on as many nodes you like. This is what we call the vmmax Free Cloud and it is free to use in a private network. However, the SSL and secure tunneling modules are not activated. If you plan to allow access to your private cloud over the Internet, or want to secure your private cloud platform, you need to purchase a vmmax license and certify your cloud nodes. Click Here to find out more about available licensing models.

We have developed an easy-to-use installer application that will install the licenses and certify your cloud node. Please follow the following steps to certify your cloud node:

  1. First you need to download the installer
  2. Unpack the zip archive
  3. Start vmmaxCertification.exe
  4. Enter the Domain or IP address of your device
  5. Enter the node token
  6. Enter your license key
  7. Click on the "Start Installation" button
  8. After 1-2 minutes, your certification is done
  9. You can now use the vmmax Gateway to install SSL certificates and the secure tunnel is activated.

3. Cloud Nodes Last updated: 2022-01-24

The Cloud Nodes module in the vmmax Control Center is an essential part of the cluster system that manages registered nodes. The communication to the node and/or between nodes is managed in this module. The vmmax Node is an entire system server nucleus with dedicated CPU, RAM, Storage, and Network resources fully optimized for maximum performance, security, and stability. In this section we will explain the registrations and the management of a vmmax Cloud Node.

3.1 Register a Node

Registering a cloud node to the vmmax Control Center is an easy process. Please follow the following steps to register your cloud node:

Step 1 - Preparation
To register your cloud node to the vmmax Control Center you need to have the following information:

  • Node ID
  • Node Token
If you have purchased a cloud node, this information will be sent to you by email or secure-dark-letter. If you have used the vmmax Cloud Platform Installer to deploy your cloud node you will see your Node ID and Node Token at the end of the installation process.

Step 2 - Register your Cloud Node


  1. Open the Cloud Node Dialog
  2. Enter the Node ID
  3. Enter the Node Token
  4. Enter the domain name or ip address of the node
  5. Enter the ip address of the node
  6. Enter a tag name for the node e.g. DC Room 1
  7. Select the high availability option
  8. Select the status option
  9. Click on the Save button

"FEATURE EXPLAINATION"
  • High Availability Option
    The High Availability Option for the cloud node determines the synchronization of the vmmax Control Center database. If the node hosts a vmmax Control Center instance, then the synchronization agent is enabled or disabled otherwise. The synchronization is activated when the cluster contains at least two nodes that host the vmmax Control Center. The Primary and Replica settings determine the direction of the synchronization process. If for example, Node 1 is Primary and Node 2 is Replica, you should connect and work on the Node 1 vmmax Control Center which then replicates the database to the Replica Node 2. If for some reason your vmmax Control Center fails on the Node 1 you can then switch and connect to the vmmax Control Center on the Replica Node 2 and continue your work until you have resolved the failure on the Primary Node 1. Note: You can automate the failover process with the Load-Balancer in the Gateway Manager.
  • Status Option
    If status is set to Maintenance the node will not be listed as an available resource in the cluster. The node will continue to operate running virtual machines and containers.

"IMPORTANT"
Node Tokens are the key-hash that enable the access and communication to a cloud node and should be kept secret and at a safe place!

3.2 Node Information

The Node Information Dialog is an important source of information about the System (Bare-Metal/Virtual), CPU, Memory, Audio, Graphics, Network, Drives, RAID, Partitions, and other hardware installed on your node.

3.3 Store Managers

There are two Store Managers, the Backup Store Manager, and the ISO Store Manager. Both have the same functionality of managing files stored in a specific location on the node. You can upload, download, and copy files to another node with the Store Manager. When you take a backup of a virual machine or a container for example, the backup file will be placed into the Backup Store.

Backup Store Manager


"FEATURE EXPLAINATION"
The Backup Store Manager contain the following functionality:
  • Upload Button
    is used to upload backup files into the store with the Upload Dialog.
  • Copy Button
    will open the Copy Dialog where you can choose a copy action. Copy actions include download to local computer and copy to another node in the cluster.
  • Delete Button
    is used to delete a file from the store.

"TIP"
You can use a backup file as a template to automate the deployment of virtual machines and containers with vmmax CLI.

ISO Store Manager


"FEATURE EXPLAINATION"
The ISO Store Manager contain the following functionality:
  • Upload Button
    is used to upload iso files in to the store with the Upload Dialog.
  • Copy Button
    will open the Copy Dialog where you can choose a copy action. Copy actions include download to local computer and copy to another node in the cluster.
  • Delete Button
    is used to delete a file from the store.

3.4 Gateway Manager

The Gateway Manager is used to manage firewall rules of the cloud node, reverse proxy and/or load balance and/or failover domains, and to install valid domain SSL certificates. vmmax Cloud Node deployments activate by default the firewall and allow traffic on ports 22, 80, 443, and 444 only. In an ideal operation you would never require any other ports to be opened, instead you would expose your apps over a sub domain that is secured with an SSL certificate and/or secure tunnel.

Gateway Manager


Domain Reverse Proxy

To add a reverse proxy for a domain follow the following steps:
  1. Click on the NEW RULE button to open the Gateway Rule Dialog.
  2. Select in the Gateway Rule Dialog the Domain Name Service option.
  3. Enter the from IP:Port address. Use 0.0.0.0:Port to allow any IP to come through.
  4. Enter the destination IP:Port or DomainName.com:Port addfress.
    • Single HTTPS Forward
      Your domain, which will become SSL certified https (secure), can forward to one internal http (unsecure) port. The SSL chain will not break and your connection will stay secure.
    • Load Balancer
      enter multiple destination addresses separated by ; (semi-colon) to enable the load balancer
      for example: 1.1.1.212:443;1.1.1.213:443;externalservice.mydomain.com:443
    • Weighted Load Balancing
      for example: 1.1.1.212:443 weight=3;1.1.1.213:443;externalservice.mydomain.com:443
      With this configuration, every 5 new requests will be distributed across the application instances as the following: 3 requests will be directed to 1.1.1.212:443, one request will go to 1.1.1.213:443, and another one — to externalservice.mydomain.com:443.
    • Mixed Protocol Load Balancing
      Mixed Protocol Balancing is not supported. For example: 1.1.1212:443;1.1.1.213:80 will not work because one port is https and the other http in the destinations.
  5. Enter a comment/tag
  6. Click on the Save button
    The rule will be created and a valid SSL certificate (from Let's Enrypt) will be installed for that domain and set to automatically renew every three month.
"IMPORTANT"
Please make sure that your domain name resolves/points to the IP address of your node beforehand.


Firewall Rule

To add a firewall rule please follow the following steps:
  1. Click on the NEW RULE button to open the Gateway Rule Dialog.
  2. Select in the Gateway Rule Dialog the TCP/UDP Firewall Service option.
  3. Enter the from IP:Port address. Use 0.0.0.0:Port to allow any IP to come through.
  4. Enter the destination IP:Port addfress.
  5. Select one of the rule ALLOW IN, DENY IN, DENY OUT.
  6. Enter a comment/tag
  7. Click on the Save button
    The rule will be created and the port will be opened/blocked in the firewall.
"IMPORTANT"
Port Ranging is not supported. Opening ports with Firewall TCP/UDP Service should be avoided in general, instead try to expose your application/service through a Domain Service Rule.

3.5 Statistics

There Statistics dialog is used to view and analyse the performance of a cloud node. There are two statistics dialogs that can be used:

Statistics

will display a set of line charts for the CPU, Memory, and Disk usage of the current day



Statistics (Glances)

will display a terminal and run the Glances app to display Real-Time performance metrics.

"FEATURE EXPLAINATION"
Here is a list of hotkeys that can be used in Glances:
  • a – Sort processes automatically
  • c – Sort processes by CPU%
  • m – Sort processes by MEM%
  • p – Sort processes by name
  • i – Sort processes by I/O rate
  • d – Show/hide disk I/O stats
  • f – Show/hide file system statshddtemp
  • n – Show/hide network stats
  • s – Show/hide sensors stats
  • y – Show/hide hddtemp stats
  • l – Show/hide logs
  • b – Bytes or bits for network IO
  • w – Delete warning logs
  • x – Delete warning and critical logs
  • x – Delete warning and critical logs
  • 1 – Global CPU or per-CPU stats
  • h – Show/hide this help screen
  • t – View network I/O as combination
  • u – View cumulative network I/O
  • q – Quit (Esc and Ctrl-C also work)

3.6 Update/Reboot

The Update/Reboot Dialog is used to trigger the update and/or reboot process on a cloud node. The following options are available in the Update/Reboot Dialog:

  • Reboot Node
    will reboot the cloud node without applying any updates.
  • Install Updates
    will install security updates and updates for the vmmax Control Center
  • Install Updates and Reboot Node
    will install security updates and updates for the vmmax Control Center and reboot the cloud node

4. App Stacks Last updated: 2022-01-24



We define an App Stack as a solution or service that contains a constellation of technologies that work together. For example, if we want to deploy a WordPress solution, in the traditional way, we must install a web server, the php language interpreter, and a database, to finally install the WordPress distribution on top of these separate technologies. With an App Stack however, all we need to deploy is the stack container and everything is already setup. We have 50+ App Stacks in our repositories and we are adding more almost every month. Since an App Stack is a container, you can effortlessly scale, snapshot, backup, move, migrate, and clone your solution.

4.1 Create App Stacks

Creating an App Stacks is easy, just follow the following steps:

  1. Click on App Stacks in the left navigator
  2. Click on the Actions menu (three dots)
  3. Click on Create App Stack
  4. Enter a name for the App Stack
  5. Select the node you want to create the App Stack on
  6. Select your App Stack solution
  7. Click on the Create button and wait 1-3 minutes and your newly created App Stack will be listed.

"TIP"
After you created an App Stack, open the console and read the /root/config.readme file for more details.

4.2 Compose App Stacks

The Compose App Stack Dialog is used to define and create custom App Stacks with a yaml definition.

Example Yaml Definition for WordPress

version: '3.1'
services:
  wordpress:
    image: wordpress
    restart: always
    ports:
      - 8080:80
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: exampleuser
      WORDPRESS_DB_PASSWORD: examplepass
      WORDPRESS_DB_NAME: exampledb
    volumes:
      - wordpress:/var/www/html
  db:
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_DATABASE: exampledb
      MYSQL_USER: exampleuser
      MYSQL_PASSWORD: examplepass
      MYSQL_RANDOM_ROOT_PASSWORD: '1'
    volumes:
      - db:/var/lib/mysql
volumes:
  wordpress:
  db:

To compose an App Stack please follow the following step:
  1. Click on App Stacks in the left navigator
  2. Click on the Actions menu (three dots)
  3. Click on Compose App Stack
  4. Enter a name for the App Stack
  5. Select the node you want to create the App Stack on
  6. Enter/Paste your yaml definition code
  7. Click on the Create button and wait 1-3 minutes and your newly created App Stack will be listed.

4.3 Clone App Stacks

Cloning an App Stacks is easy, just follow the following steps:

  1. Click on App Stacks in the left navigator
  2. Select the App Stack that you want to clone
  3. Click on the Actions menu (three dots)
  4. Click on Clone App Stack
  5. Enter a name for the new App Stack clone
  6. Click on the Clone button and wait 1-3 minutes and your newly cloned App Stack will be listed.

4.4 Migrate App Stacks

Migrating an App Stacks is easy, just follow the following steps:

  1. Click on App Stacks in the left navigator
  2. Select the App Stack that you want to migrate
  3. Click on the Actions menu (three dots)
  4. Click on Migrate App Stack
  5. Select the destination node
  6. Select one of the migration modes MOVE/CLONE
  7. Click on the Migrate button and wait 1-3 minutes and your migrated App Stack will be listed.

4.5 Start/Stop App Stacks

Starting, Restarting, and Stopping an App Stack is self explanatory, just select the App Stack and issue the commands from the Actions menu (three dots).

4.6 Limit App Stacks

By default, App Stacks have no limitation on the resources available on the node. They scale their resource usage automatically to the maximum possible and release them again when not required anymore. For example, an App Stack uses 1 CPU core at its base and scales up to 4 CPU cores automatically when a higher workload is required at peak time, after the peak time, the App Stack will again scale down and use 1 CPU core. However, sometimes the default auto scale option can interrupt other processes if the node is overprovisioned. You can control the automatic scaling by setting limits to resources.

To limit resources of an App Stack, follow the following steps:

  1. Click on App Stacks in the left navigator
  2. Select the App Stack that you want to limit
  3. Click on the Actions menu (three dots)
  4. Click on Limit App Stack
  5. Select your limitations in the Limit Dialog
  6. Click on the Save button to apply the limits to the App Stack.

4.7 Snapshot Manager

A snapshot preserves the system and data of an App Stack at a specific point in time. The Snapshot Manager is used to take snapshots of an App Stack, restore an App Stack from a snapshot, and delete snapshots that are not of value anymore.

Please follow the following steps to open the Snapshot Manager for an App Stack:

  1. Click on App Stacks in the left navigator
  2. Select the App Stack that you want to snapshot
  3. Click on the Actions menu (three dots)
  4. Click on Snapshot Manager
  5. In the Snapshot Manager Dialog:
    • To take a snapshot:
      1. Enter a name for the snapshot
      2. Click on the Take button
    • To restore from a snapshot:
      1. Select the snapshot you want to restore
      2. Click on the Restore button
    • To delete a snapshot:
      1. Select the snapshot you want to delete
      2. Click on the Delete button

4.8 Backup Manager

A backup preserves the system, data, and container configuration of an App Stack at a specific point in time. The difference from a snapshot is, that a backup operation can't be done in a running state of the App Stack, and it encapsulates the entire system, data, and configurations. The Backup Manager is used to take backups of an App Stack, restore an App Stack from a backup file, and delete backup files that are not of value anymore.

Please follow the following steps to open the Backup Manager for an App Stack:

  1. Click on App Stacks in the left navigator
  2. Select the App Stack that you want to backup
  3. Stop your App Stack if it is in a running state
  4. Click on the Actions menu (three dots)
  5. Click on Backup Manager
  6. In the Backup Manager Dialog:
    • To take a backup:
      1. Enter a name for the backup
      2. Click on the Take button
    • To restore from a backup:
      1. Select the backup you want to restore
      2. Click on the Restore button
    • To delete a backup file:
      1. Select the backup you want to delete
      2. Click on the Delete button

4.9 Open Console

You can enter the console of an App Stack by starting a Console Session. Use the following steps to start a Console Session:

  1. Click on App Stacks in the left navigator
  2. Select the App Stack that you want to start a console session
  3. Click on the Actions menu (three dots)
  4. Click on Open Console

5. Databases Last updated: 2022-01-24

vmmax Databases are containerized scalable solutions and include the MariaDB, MS SQL Server, MySQL, and PostgreSQL relational database systems. Just spin one up in a minute for development and/or production. This is also called serverless database, because it is not bound to any host server system. You can effortlessly scale snapshot, backup, move, migrate, and clone your databases.

5.1 Create Databases

Creating a Database is easy, just follow the following steps:

  1. Click on Databases in the left navigator
  2. Click on the Actions menu (three dots)
  3. Click on Create Database
  4. Enter a name for the Database
  5. Enter an admin user password for the database
  6. Select the node you want to create the Database on
  7. Select your Database solution
  8. Click on the Create button and wait 1-3 minutes and your newly created Database will be listed.

5.2 Clone Databases

Cloning a Database is easy, just follow the following steps:

  1. Click on Databases in the left navigator
  2. Select the Database that you want to clone
  3. Click on the Actions menu (three dots)
  4. Click on Clone Database
  5. Enter a name for the new Database clone
  6. Click on the Clone button and wait 1-3 minutes and your newly cloned Database will be listed.

5.3 Migrate Databases

Migrating a Database is easy, just follow the following steps:

  1. Click on Databases in the left navigator
  2. Select the Database that you want to migrate
  3. Click on the Actions menu (three dots)
  4. Click on Migrate Database
  5. Select the destination node
  6. Select one of the migration modes MOVE/CLONE
  7. Click on the Migrate button and wait 1-3 minutes and your migrated Database will be listed.

5.4 Start/Stop Databases

Starting, Restarting, and Stopping a Database is self explanatory, just select the Database and issue the commands from the Actions menu (three dots).

5.5 Limit Databases

By default, Databases have no limitation on the resources available on the node. They scale their resource usage automatically to the maximum possible and release them again when not required anymore. For example, a Database uses 1 CPU core at its base and scales up to 4 CPU cores automatically when a higher workload is required at peak time, after the peak time, the Database will again scale down and use 1 CPU core. However, sometimes the default auto scale option can interrupt other processes if the node is overprovisioned. You can control the automatic scaling by setting limits to resources.

To limit resources of a Database, follow the following steps:

  1. Click on Databases in the left navigator
  2. Select the Database that you want to limit
  3. Click on the Actions menu (three dots)
  4. Click on Limit Database
  5. Select your limitations in the Limit Dialog
  6. Click on the Save button to apply the limits to the Database.

5.6 Snapshot Manager

A snapshot preserves the system and data of a Database at a specific point in time. The Snapshot Manager is used to take snapshots of a Database, restore a Database from a snapshot, and delete snapshots that are not of value anymore.

Please follow the following steps to open the Snapshot Manager for a Database:

  1. Click on Databases in the left navigator
  2. Select the Database that you want to snapshot
  3. Click on the Actions menu (three dots)
  4. Click on Snapshot Manager
  5. In the Snapshot Manager Dialog:
    • To take a snapshot:
      1. Enter a name for the snapshot
      2. Click on the Take button
    • To restore from a snapshot:
      1. Select the snapshot you want to restore
      2. Click on the Restore button
    • To delete a snapshot:
      1. Select the snapshot you want to delete
      2. Click on the Delete button

5.7 Backup Manager

A backup preserves the system, data, and container configuration of a Database at a specific point in time. The difference from a snapshot is, that a backup operation can't be done in a running state of the Database, and it encapsulates the entire system, data, and configurations. The Backup Manager is used to take backups of a Database, restore a Database from a backup file, and delete backup files that are not of value anymore.

Please follow the following steps to open the Backup Manager for a Database:

  1. Click on Databases in the left navigator
  2. Select the Database that you want to backup
  3. Stop your Database if it is in a running state
  4. Click on the Actions menu (three dots)
  5. Click on Backup Manager
  6. In the Backup Manager Dialog:
    • To take a backup:
      1. Enter a name for the backup
      2. Click on the Take button
    • To restore from a backup:
      1. Select the backup you want to restore
      2. Click on the Restore button
    • To delete a backup file:
      1. Select the backup you want to delete
      2. Click on the Delete button

5.8 Open Console

You can enter the console of a Database by starting a Console Session. Use the following steps to start a Console Session:

  1. Click on Databases in the left navigator
  2. Select the Database that you want to start a console session
  3. Click on the Actions menu (three dots)
  4. Click on Open Console

6. Containers Last updated: 2022-01-24

Containers are a solution to the problem of how to get software to run reliably when moved from one computing environment to another. This could be from a developer’s machine to a test environment, from a staging environment into production, and perhaps from a physical machine in a data center to a virtual machine in a private or public cloud. The core of a container is a full Linux system in which you can install, deploy, and configure all the dependencies of an application. Put simply, a container consists of an entire runtime environment: an application, plus all its dependencies, libraries and other binaries, and configuration files needed to run it, bundled into one package. By containerizing the application platform and its dependencies, differences in OS distributions and underlying infrastructure are abstracted away. Since containers are host independent, you can effortlessly scale, snapshot, backup, move, migrate, and clone your solution

6.1 Create Containers

Creating a Container is easy, just follow the following steps:

  1. Click on Containers in the left navigator
  2. Click on the Actions menu (three dots)
  3. Click on Create Container
  4. Enter a name for the Container
  5. Select the node you want to create the Container on
  6. Select your container operating system
  7. Click on the Create button and wait 1-3 minutes and your newly created Container will be listed.

6.2 Clone Containers

Cloning a Container is easy, just follow the following steps:

  1. Click on Containers in the left navigator
  2. Select the Container that you want to clone
  3. Click on the Actions menu (three dots)
  4. Click on Clone Container
  5. Enter a name for the new Container clone
  6. Click on the Clone button and wait 1-3 minutes and your newly cloned Container will be listed.

6.3 Migrate Containers

Migrating a Container is easy, just follow the following steps:

  1. Click on Containers in the left navigator
  2. Select the Container that you want to migrate
  3. Click on the Actions menu (three dots)
  4. Click on Migrate Container
  5. Select the destination node
  6. Select one of the migration modes MOVE/CLONE
  7. Click on the Migrate button and wait 1-3 minutes and your migrated Container will be listed.

6.4 Start/Stop Containers

Starting, Restarting, and Stopping a Container is self explanatory, just select the Container and issue the commands from the Actions menu (three dots).

6.5 Limit Containers

By default, Containers have no limitation on the resources available on the node. They scale their resource usage automatically to the maximum possible and release them again when not required anymore. For example, a Container uses 1 CPU core at its base and scales up to 4 CPU cores automatically when a higher workload is required at peak time, after the peak time, the Container will again scale down and use 1 CPU core. However, sometimes the default auto scale option can interrupt other processes if the node is overprovisioned. You can control the automatic scaling by setting limits to resources.

To limit resources of a Container, follow the following steps:

  1. Click on Containers in the left navigator
  2. Select the Container that you want to limit
  3. Click on the Actions menu (three dots)
  4. Click on Limit Container
  5. Select your limitations in the Limit Dialog
  6. Click on the Save button to apply the limits to the Container.

6.6 Snapshot Manager

A snapshot preserves the system and data of a Container at a specific point in time. The Snapshot Manager is used to take snapshots of a Container, restore a Container from a snapshot, and delete snapshots that are not of value anymore.

Please follow the following steps to open the Snapshot Manager for a Container:

  1. Click on Containers in the left navigator
  2. Select the Container that you want to snapshot
  3. Click on the Actions menu (three dots)
  4. Click on Snapshot Manager
  5. In the Snapshot Manager Dialog:
    • To take a snapshot:
      1. Enter a name for the snapshot
      2. Click on the Take button
    • To restore from a snapshot:
      1. Select the snapshot you want to restore
      2. Click on the Restore button
    • To delete a snapshot:
      1. Select the snapshot you want to delete
      2. Click on the Delete button

6.7 Backup Manager

A backup preserves the system, data, and container configuration of a Container at a specific point in time. The difference from a snapshot is, that a backup operation can't be done in a running state of the Container, and it encapsulates the entire system, data, and configurations. The Backup Manager is used to take backups of a Container, restore a Container from a backup file, and delete backup files that are not of value anymore.

Please follow the following steps to open the Backup Manager for a Container:

  1. Click on Containers in the left navigator
  2. Select the Container that you want to backup
  3. Stop your Container if it is in a running state
  4. Click on the Actions menu (three dots)
  5. Click on Backup Manager
  6. In the Backup Manager Dialog:
    • To take a backup:
      1. Enter a name for the backup
      2. Click on the Take button
    • To restore from a backup:
      1. Select the backup you want to restore
      2. Click on the Restore button
    • To delete a backup file:
      1. Select the backup you want to delete
      2. Click on the Delete button

6.8 Open Console

You can enter the console of a Container by starting a Console Session. Use the following steps to start a Console Session:

  1. Click on Containers in the left navigator
  2. Select the Container that you want to start a console session
  3. Click on the Actions menu (three dots)
  4. Click on Open Console

7. Virtual Machines Last updated: 2022-01-24

A virtual machine, commonly shortened to just VM, is no different than any other physical computer like a pc, or server. It has a CPU, memory, disks to store your files, and can connect to the internet if needed. While the parts that make up your computer (called hardware) are physical and tangible, VMs are often thought of as virtual computers or software-defined computers within physical servers, existing only as code. In short: virtual computers within computers.

While virtual machines run like individual computers with individual operating systems and applications, they have the advantage of remaining completely independent of one another and the physical host machine. A piece of software called a hypervisor, or virtual machine manager, lets you run different operating systems on different virtual machines at the same time. This makes it possible to run Windows VMs, for example, on a vmmaxOS. And, because VMs are independent of each other, they're also extremely portable. You can move a VM on a hypervisor to another hypervisor on a completely different machine almost instantaneously.

Because of their flexibility and portability, virtual machines provide many benefits, such as:

  • Cost savings — running multiple virtual environments from one piece of infrastructure means that you can drastically reduce your physical infrastructure footprint. This boosts your bottom line—decreasing the need to maintain nearly as many servers and saving on maintenance costs and electricity.
  • Agility and speed — Spinning up a VM is relatively easy and quick and is much simpler than provisioning an entire new environment for your developers. Virtualization makes the process of running dev-test scenarios a lot quicker.
  • Lowered downtime — VMs are so portable and easy to move from one hypervisor to another on a different machine—this means that they are a great solution for backup, in the event the host goes down unexpectedly.
  • Scalability — VMs allow you to more easily scale your apps by adding more physical or virtual servers to distribute the workload across multiple VMs. As a result, you can increase the availability and performance of your apps.
  • Security benefits — Because virtual machines run in multiple operating systems, using a guest operating system on a VM allows you to run apps of questionable security and protects your host operating system. VMs also allow for better security forensics, and are often used to safely study computer viruses, isolating the viruses to avoid risking their host computer.

7.1 Create Virtual Machines

Creating a Virtual Machine is easy, just follow the following steps:

  1. Click on Virtual Machines in the left navigator
  2. Click on the Actions menu (three dots)
  3. Click on Create Virtual Machine
  4. Enter a name for the Virtual Machine
  5. Select the node you want to deploy the Virtual Machine on
  6. Select your socket, cores, and threads amount for CPU
  7. Slide the RAM selector to the amount you require
  8. Slide the Disk selector to amount you require
  9. Click on the arrow in the dialog in der upper right corner to go to the next page
  10. Mount CD-Rom with the operating system you want to install
  11. Click on the Create button and wait 1-3 minutes and your newly created Virtual Machine will be listed.
  12. Open Console to finish your installation
  13. When installation is done, shutdown the Virtual Machine
  14. In the Actions menu select Edit Virtual Machine
  15. Remove the CD-Rom and click on the Save button
  16. Start your newly installed Virtual Machine

7.2 Clone Virtual Machines

Clones of a Virtual Machine can be full or linked depending on the amount of data copied from the source to the destination machine. A full clone is an independent copy of a Virtual Machine that shares nothing with the parent Virtual Machine after the cloning operation. Ongoing operation of a full clone is separate from the parent Virtual Machine. Full clones take longer to create than linked clones. Creating a full clone can take several hours or even days if the files involved are large. A linked clone is a copy of a Virtual Machine that shares virtual disks with the parent Virtual Machine in an ongoing manner. A linked clone is a fast way to convert and run a new Virtual Machine. You can create a linked clone from the current state of a powered off Virtual Machine. This practice conserves disk space and lets multiple Virtual Machines use the same software installation. All files available on the source machine at the moment of the clone continue to remain available to the linked clone. Ongoing changes to the virtual disk of the parent do not affect the linked clone, and changes to the disk of the linked clone do not affect the source machine.

Cloning a Virtual Machine is easy, just follow the following steps:

  1. Click on Virtual Machines in the left navigator
  2. Select the Virtual Machine that you want to clone
  3. Click on the Actions menu (three dots)
  4. Click on Clone Virtual Machine
  5. Enter a name for the new Virtual Machine clone
  6. Select optinally Linked Clone
  7. Click on the Clone button and wait 1-3 minutes and your newly cloned Virtual Machine will be listed.

7.3 Migrate Virtual Machines

Migrating a Virtual Machine is easy, just follow the following steps:

  1. Click on Virtual Machines in the left navigator
  2. Select the Virtual Machine that you want to migrate
  3. Click on the Actions menu (three dots)
  4. Click on Migrate Virtual Machine
  5. Select the destination node
  6. Select one of the migration modes MOVE/CLONE
  7. Click on the Migrate button and wait 1-3 minutes and your migrated Virtual Machine will be listed.

7.4 Start/Stop Virtual Machines

Starting, Restarting, and Stopping a Virtual Machine is self explanatory, just select the Virtual Machine and issue the commands from the Actions menu (three dots).

7.5 Snapshot Manager

A snapshot preserves the system, data and state of a Virtual Machine at a specific point in time. The state includes the Virtual Machine's power state (for example, RUNNING, STOPPED). The Snapshot Manager is used to take snapshots of a Virtual Machine, restore a Virtual Machine from a snapshot, and delete snapshots that are not of value anymore.

Please follow the following steps to open the Snapshot Manager for a Virtual Machine:

  1. Click on Virtual Machines in the left navigator
  2. Select the Virtual Machine that you want to snapshot
  3. Click on the Actions menu (three dots)
  4. Click on Snapshot Manager
  5. In the Snapshot Manager Dialog:
    • To take a snapshot:
      1. Enter a name for the snapshot
      2. Click on the Take button
    • To restore from a snapshot:
      1. Select the snapshot you want to restore
      2. Click on the Restore button
    • To delete a snapshot:
      1. Select the snapshot you want to delete
      2. Click on the Delete button

7.6 Backup Manager

A backup preserves the system, data, and Virtual Machine configuration of a Virtual Machine at a specific point in time. The difference from a snapshot is, that a backup operation can't be done in a running state of the Virtual Machine, and it encapsulates the entire system, data, and configurations. The Backup Manager is used to take backups of a Virtual Machine, restore a Virtual Machine from a backup file, and delete backup files that are not of value anymore.

Please follow the following steps to open the Backup Manager for a Virtual Machine:

  1. Click on Virtual Machines in the left navigator
  2. Select the Virtual Machine that you want to backup
  3. Stop your Virtual Machine if it is in a running state
  4. Click on the Actions menu (three dots)
  5. Click on Backup Manager
  6. In the Backup Manager Dialog:
    • To take a backup:
      1. Enter a name for the backup
      2. Click on the Take button
    • To restore from a backup:
      1. Select the backup you want to restore
      2. Click on the Restore button
    • To delete a backup file:
      1. Select the backup you want to delete
      2. Click on the Delete button

7.7 Open Console

You can enter the console of a Virtual Machine by starting a Console Session. Use the following steps to start a Console Session:

  1. Click on Virtual Machines in the left navigator
  2. Select the Virtual Machine that you want to start a console session
  3. Click on the Actions menu (three dots)
  4. Click on Open Console

8. Connect Pools Last updated: 2022-01-24

Built in VDI/VCI/VTI System

Our Connect Pool technology provides the infrastructure for VDI (Virtual Desktop Infrastructure), VCI (Virtual Console Infrastructure), and VTI (Virtual Terminal Infrastructure) and eliminates the requirement of third-party solutions. Built in to the vmmax Security Gateway, Connect Pools deliver a secure encrypted protocol over a single port. The Automatic, Manual, Terminal Pools deliver seamless Desktop and Terminal experience to users over the Internet Browser and/or the vmmax Connect Client software anytime and anywhere.

8.1 Automatic Pools

Automatic Pool are Connect Pools that setup the instance for a user automatically at first login. For example, a master Windows image is created, and all applications are installed and/or updated. Users granted access to the Automatic Pool's Inventory are then eligible to connect and start a session. At the first login of a user, the Automatic Pool will create a linked clone of the master image and assign it to the user. If the Auto-Login option is enabled, the Single-Sign-On service will additionally authenticate the user automatically on the new Windows instance.

8.2 Manual Pools

Manual Pools are Connect Pools that are static. The operator has to assign a existing virtual machine to a user to enable the access in the Manual Pools' Inventory. For example, a master Windows image is created, and all applications are installed and/or updated. The operator then must clone manually as many Full/Linked clones as needed to then assign each cloned virtual machine to a user in the Manual Pool's Inventory. The user can start a connect session after the manual assignment has been done. If the Auto-Login option is enabled, the Single-Sign-On service will additionally authenticate the user automatically on the new Windows instance.

8.3 Terminal Pools

Terminal Pools are Connect Pools that are multiuser and static. The operator must assign an existing virtual machine to multiple users to enable the access in the Terminal Pool's Inventory. For example, a Linux Server image is created, and all applications are installed and/or updated. The operator then assigns multiple users to that Linux Server image in the Terminal Pool's Inventory. The user can start a connect session after the manual assignment has been done.

8.4 Create Pools

The Connect Pool Dialog is used to create client connect pools. Connect Pools are used to allow users to connect securely to a virtual machine or container. Connect Pools require the gateway port 444 to establish a ssl encrypted ssh tunnel between the client and the virtual machine or container.

"IMPORTANT"
Please make sure that the client host machines have a firewall exception for ports TCP/UDP 443 and 444 as IN/OUT bound traffic configured. This firewall configuration is a requirement for Browser Client and vmmax Client software!

The account management of a Connect Pool can be either Cloud Managed or Domain Managed. Following rules apply:
  • Cloud Controller
    Access and System User Accounts are managed in the vmmax Control Center.
  • Domain Controller
    Access User Accounts are managed in the vmmax Control Center, System User Accounts are managed in the Domain Controller and Windows instanced are joined to the domain automatically in an Automatic Pool. Please prepare a KeyPass for with the Domain Admin information beforehand.
Creating a Connect Pool is easy, just follow the following steps:
  1. Click on Connect Pools in the left navigator
  2. Click on the Actions menu (three dots)
  3. Click on Create Connect Pool
  4. Enter a name for the Connect Pool
  5. Select the pool type
  6. Select your pool account management
  7. Select your primary node
  8. Select fail-safe node
  9. Select your pool status RUNNING/MAINTANCE
  10. Click on the arrow in the upper right corner to view the options page
  11. Click on the Save button and your newly created Connect Pool will be listed.

"FEATURE EXPLAINATION"
  • Connect Pool Options
    • Auto-Login if enabled, the Cloud Account Password and the Instance Account Password will be synchronized for a single sign on experience. If not enabled, the authentication manager will always prompt for an instance account sign in.
    • Drive Pass is only valid for virtual machine sessions with the vmmax client software. If enabled, the local drives of the host client machine will be passed through to the virtual machine.
    • Printer Pass is only valid for virtual machine sessions with the vmmax client software. If enabled, the local printer of the host client machine will be passed through to the virtual machine.
    • Clipboard Pass is only valid for virtual machine sessions with the vmmax client software. If enabled, the host client machine and the virtual machine can exchange copy paste operations.
    • USB Pass is only valid for virtual machine sessions with the vmmax client software. If enabled, the usb ports of the host client machine will be passed through to the virtual machine.
    • Smartcard Pass is only valid for virtual machine sessions with the vmmax client software. If enabled, the smartcard ports of the host client machine will be passed through to the virtual machine.
    • Serial Pass is only valid for virtual machine sessions with the vmmax client software. If enabled, the serial ports of the host client machine will be passed through to the virtual machine.
    • DirectX Pass is only valid for windows virtual machine sessions with the vmmax client software. If enabled, the graphic performance will be shifted from the cloud node to the virtual machines CPU/GPU load.
    • Audio Pass is only valid for virtual machine sessions with the vmmax client software. If enabled, the audio will be decoded on the host client machine instead of the virtual machine.
    • Video Pass is only valid for virtual machine sessions with the vmmax client software. If enabled, the video will be decoded on the host client machine instead of the virtual machine.

8.5 KeyPass

The KeyPass Dialog is used to store credentials in a vault. KeyPass is required in Connect Pools to authenticate Admin Accounts during the configuration of a clone operation.

Creating a KeyPass is easy, just follow the following steps:

  1. Click on KeyPass in the left navigator
  2. Click on the Actions menu (three dots)
  3. Click on Create KeyPass
  4. Enter a name for the KeyPass
  5. Enter the username
  6. Enter the password
  7. Confirm the password
  8. Click on the Save button and your newly created KeyPass will be listed.

8.6 Setup Inventory

The Setup Inventory Dialog is used to add/remove access permissions from the Connect Pool. Each pool type requires a different set of Instance to User or User to Instance combination that links a user to an instance of a Virtual Machine or Container.

To open the Setup Inventory Dialog, just follow the following steps:

  1. Click on Connect Pools in the left navigator
  2. Select the pool you want to modify
  3. Click on the Actions menu (three dots)
  4. Click on Setup Inventory
  5. Add/Remove your entitlements
  6. Click on the Save button to apply the changes

8.7 Connect Client

Users can access the Connect Pool either through their favorite Internet Browser or the vmmax Connect Client for Windows software.

Connecting with a Internet Browser



Connecting with vmmax Connect Client

9. Users Last updated: 2022-01-24

The Users module in the vmmax Control Center manages Access and System User accounts. Access Account is defined as the email address that is used to sign in to the vmmax environment. The System User account is defined as the username that is used to sign into Virtual Machines and/or Containers. For example: The Access User user@demo.com has a system account as demo.user, this would mean:

  • The user uses user@demo.com to sign in to the vmmax environment
  • The user uses demo.user to sign into a Virtual Machine or Container
With the Single-Sign-On service integration (enabled with the Auto-Login option) in a Connect Pool, the sign in experience is seamless and no additional authentication will be prompted to the user.

9.1 Create Users

Creating a User is easy, just follow the following steps:

  1. Click on Users in the left navigator
  2. Click on the Actions menu (three dots)
  3. Click on Create User
  4. Enter the user email address (Access Account)
  5. Enter the system username (System Account)
  6. Enter the full name of the user
  7. Enter a password for the user
  8. Confirm the password for the user
  9. Select the access group of the user
    • Operator - can manage App Stacks, Databases, Virtual Machines, Containers, and Connect Pools
    • User - can access Connect Pools
  10. Optionally, but highly recommended, enable Two Factor Authentication
  11. Click on the Create button and your newly created User will be listed.

9.2 Access Groups

The vmmax Cloud Platform utilizes a very simple grouping of access permissions that we can explain with the following:

  • Administrator
    admin@system is the super user in the Administrator groups which is created during the installation/deployment of the vmmax Control Center. There is only one Administrator account which has full access to every module in the vmmax Control Center.
  • Operator
    is the Operator/Developer role which can manage only App Stacks, Databases, Containers, Virtual Machines, and Connect Pools
  • User
    is the end-user role which can only connect and access Connect Pools

9.3 2F Authentication

2F Authentication is an extra layer of security used to make sure that people trying to gain access to a vmmax account are who they say they are. First, a user will enter their username and a password. Then, instead of immediately gaining access, they will be required to provide a pin code from their Authenricator App on their smartphone. It is very easy to setup and we highly recommend to use 2F Authentication. vmmax 2F Authentication can be registered with your favorite Authenricator App like Microsoft Authenricator App, or our recommendation the 2FAS App, or any other Authenricator App that has support for TOTP (time-based one-time password).

To enabled 2F Authentication, please follow the following steps:

Administrator Steps

  1. In the Users module, select the user you want to edit
  2. Click on the Actions menu (three dots)
  3. Click on Edit User
  4. Enable Two Factor Authentication
  5. Click on the Save button to apply the changes
  6. Ask the user to sign out and back in again


User Steps
  1. In the login screen, enter your email address and password
  2. Click on the Sign In button
  3. Open your favorite Authenticator App on your smartphone
  4. Scan the QR-Code in the login screen (you have to do this step only once)
  5. If you can see your vmmax Cloud account in the Authenticator App, click on the Continue button
  6. Enter the pin code presented in the Authenticator App
  7. Click on the Sign In button

10. Connect Client Last updated: 2022-01-24

The vmmax Connect Client is a software that establishes a connection between endpoint devices and virtual desktops and applications. We define two connect clients' editions:

  • Internet Browser
    You can use your favorite HTML5 Browser to launch the vmmax Connect Client by simply signing in to the vmmax Control Center. The Internet Browser client supports mobile devices such as iPad and Android devices. This client is designed for convenient remote computing at anytime and anywhere.
  • vmmax Connect Client for Windows
    The vmmax Connect Client for Windows uses a custom HTML5 Browser as front-end but has many enhancement libraries included that for example allow Drive Passthroug, USB Passthrough, Printer Passthrough, and more importantly, continuously optimizes system metric such as connection speed and image quality with an AI-Engine for a optimal user experience.

10.1 Settings

The Settings Dialog is only available in the vmmax Connect Client for Windows that you can use to configure following client settings:

  • Performance/Quality Mode
    suggest a model for the AI-Engine to use for optimizations:
    • Performance - quality is completely ignored and only performance optimizations are calculated (recommended for WAN connections)
    • Fast - quality is partly ignored and mostly performance optimizations are calculated with additional image quality calculations (recommended for WAN connections)
    • Auto Adjust - (recommended) quality and performance are fine grain tuned and calculated for best user experience (best for LAN/WAN connections)
    • Quality - more image quality calculations are performed to increase picture quality (recommended for LAN connections)
    • High Quality - performance calculations are ignored and image quality calculations are performed for best picture quality (recommended for LAN connections)
  • Color Map - defines the maximum Color Map Bits
  • Allow H.264 Encoding - uses the H.264 Encoder to resolve image quality
  • Enable Local GPU - enables the local GPU to assist, if available
  • Auto-Adjust to Bandwidth - allow the AI-Engine for adjust the image quality according to the bandwidth available
  • Enable Compression - enables the compressed image transfer protocol
  • Enable Persistent Cache - enables to create a cache volume on the local host machine
  • Proxy Server - Enter here your https://proxyserver:port address

10.2 Launcher

Both vmmax Connect Client editions have the LAUNCH card for each instance that was defined in the Connect Pool for the user.

Launching a Desktop in the Internet Browser



Launching a Desktop with vmmax Connect Client for Windows

11. CLI Client Last updated: 2022-01-24

The vmmax CLI Client is a software that interacts with a cloud node directly and can be used to schedule and/or automate certain administrative tasks. The vmmax CLI Client is available for the Linux, Mac OSX, and Windows operating systems. The vmmax CLI Client can be used interactive as a console app to issue commands or as a batch processing tool that consumes a script file.


"IMPORTANT"
Your Node Token is visible in the console and in scripts, please use with care and in a safe environment to prevent the token to be seen or copied.

11.1 Interactive

The vmmax CLI Client has a set of commands that can be executed in the console app. To interact with a cloud node follow the following steps:

  1. Start the vmmax CLI console application
  2. Enter the following command to print the help information
    help
  3. First you need to connect to a cloud node. Enter the following command followed by the Node Token of the cloud node you want to connect to
    connect NODETOKEN
  4. After you see the OK message, you are connected and can start executing other commands
  5. To disconnect and exit, enter the following command
    exit

11.2 Scripts

You can automate with cron or a Scheduler software, tasks by entering commands to a text file and run it as a batch.
Below is an example script:

connect NODETOKEN
vm take snapshot masterMachine snap01
vm clone full masterMachine clonedMachine
vm start clonedMachine
exit

What happens in the above script?
  1. We connect to a cloud node
  2. We take a snapshot of the vm masterMachine and name the snapshot snap01
  3. We clone the vm masterMachine and name the new machine clonedMachine
  4. We start the newly cloned machine named clonedMachine
  5. We disconnect and exit
To execute a script with vmmax CLI Client follow the following steps:
  1. Create a script file and save it on your disk
  2. Now open your system console/terminal and change your directory to the location of vmmaxCLI executable
  3. Enter the following command to execute the script
    vmmaxCLI /path/to/your/script.file

12. Case Studies Last updated: 2022-01-24

In this section we share our accumulated experiences through our customers with a list of Case Studies that we think are important. In general. due to our simplistic design at core, moving to the vmmax Cloud Platform is not complicated and can be implemented rapidly. We have also a great Cloud Team that you can consult at any time, or alternatively, you might want to let us do all the work with our BOT (Build-Operate-Transfer) Team. No matter how you want to approach your project, here are our Case Studies insights. If you have any questions, just contact us.

12.1 Load Balancer

What makes a vmmax Cloud Node very secure and private is the fact that each vmmax Cloud Node has its own Security Gateway with a built in Load Balancer. First let's examine the features of the vmmax Security Gateway's built in Load Balancer:

  • Least Busy (default)
    keeps track of connections and diverts a new connection to the least busy destination unless the destinations are weighted. The Least Busy algorithm is the default for the Load Balancer.
  • Weighted Balancing
    keeps track of destinations specified limit (weight) and diverts a new connection to the next weighted or least busy destination.
  • HTTP/HTTPS
    automatically adjusts the protocol and certificate chain, HTTPS -> HTTP, HTTPS -> HTTPS, HTTP -> HTTPS, the connection always stays secure and encrypted.
  • Session Management
    automatically caches and diverts user sessions and cookie chains to the correct destination. No Session is lost.
  • Performance Booster
    automatic in memory caching for repeat connections that are identical.
There are three balancing models that can be applied here.
  1. Node to Node Model

    The Node to Node Model is very effective for workload balancing and redundancy of services.
                   Node 1
                      |
          --------------------------
          |                        |
       Node 2                   Node 3
    
  2. Node to Apps Model

    The Node to Apps Model is very effective for workload balancing, automatic scaling of services, and failover.
                    Node
                      |
          --------------------------
          |                        |
        App 1                    App 2
                        
  3. Node to Node to Apps Model

    The Node to Node to Apps Model is the mix of the first two models and is widely used to implement a full-scale redundant environment.
                    Node 1
                      |
          --------------------------
          |                        |
       Node 2                   Node 3
                                   |
                      --------------------------
                      |                        |
                    App 1                    App 2
                        
Example Implementation

In the example below, we will demonstrate a real-life Load Balancer setup that is used by us and our customers.
Our objective is:
  1. load balance and fail-safe the vmmax Control Center
  2. load balance and fail-safe a website
Inventory
Primary Node - yourdomain.com This is the main node that is in the DMZ and faces the Internet
   VM - vmmax Cloud Center (1.1.2.2) This is the vmmax Control Center on the Primary Node
Replica Node 1 - node1.yourdomain.com This is the replica node that is in the LAN
   VM - vmmax Cloud Center (1.1.2.2) This is the vmmax Control Center on the Internal Node 1
   VM - Web Server 1 (1.1.1.10) This is the Web Server 1 running on Internal Node 1
   VM - Web Server 2 (1.1.1.20) This is the Web Server 1 running on Internal Node 2
Replica Node 2 - node2.yourdomain.com This is the replica node that is in the LAN
   VM - vmmax Cloud Center (1.1.2.2) This is the vmmax Control Center on the Internal Node 2
   VM - Web Server 1 (1.1.1.10) This is the Web Server 1 running on Internal Node 2
   VM - Web Server 2 (1.1.1.20) This is the Web Server 2 running on Internal Node 2

vmmax Security Gateway Rules

Step 1
Our first objective is to load balance and fail-safe vmmax Control Center.
The following rule can be added:
  1. Open the Gateway Manager of the Primary Node
  2. Click on the NEW RULE button
  3. Select Domain Name Services
  4. Enter cc.yourdomain.com as the domain name
  5. Enter 1.1.1.2:80;node1.yourdomain.com:80;node2.yourdomain.com:80 in the destination field
  6. Enter vmmax CC in the comment field
  7. Click on the Save button
Step 2
Our second objective is to load balance and fail-safe a website.
The following rule can be added:
  1. Open the Gateway Manager of the Primary Node
  2. Click on the NEW RULE button
  3. Select Domain Name Services
  4. Enter yourdomain.com as the domain name
  5. Enter web1.yourdomain.com:8080;web2.yourdomain.com:8080 in the destination field
  6. Enter Web Server in the comment field
  7. Click on the Save button
At this point we have setup a load balance and fail-safe rule to the vmmax Control Center and a website. But we need to load balance the web server 1 and 2 on Replica Node 1 and 2

Step 3
On Replica Node 1:
  1. Open the Gateway Manager of the Replica Node 1
  2. Click on the NEW RULE button
  3. Select Domain Name Service
  4. Enter web1.yourdomain.com as the domain name
  5. Enter 1.1.1.10:8080;1.1.1.20:8080 in the destination field
  6. Enter Web Server 1 in the comment field
  7. Click on the Save button
Step 4
And finally on Replica Node 2:
  1. Open the Gateway Manager of the Replica Node 2
  2. Click on the NEW RULE button
  3. Select Domain Name Service
  4. Enter web2.yourdomain.com as the domain name
  5. Enter 1.1.1.10:8080;1.1.1.20:8080 in the destination field
  6. Enter Web Server 2 in the comment field
  7. Click on the Save button

"IMPORTANT"
Your external and internal domain names must resolve before you can setup above rules. Please also consider using Round-Robin A-Records/DNS Entries for domain names.

12.2 High Availability

Running server operations using clusters of either physical or virtual computers is all about improving both reliability and performance over and above what you could expect from a single, high-powered server. You add reliability by avoiding hanging your entire infrastructure on a single point of failure (i.e., a single server). And you can increase performance through the ability to very quickly add computing power and capacity by scaling up and out.

This might happen through intelligently spreading your workloads among diverse geographic and demand environments (load balancing), providing backup servers that can be quickly brought into service in the event a working node fails (failover), optimizing the way your data tier is deployed, or allowing for fault tolerance through loosely coupled architectures.

We’ll get to all that. First, though, here are some basic definitions:

Node: A single machine (either physical or virtual) running server operations independently on its own operating system. Since any single node can fail, meeting availability goals requires that multiple nodes operate as part of a cluster.

Cluster: Two or more server nodes running in coordination with each other to complete individual tasks as part of a larger service, where mutual awareness allows one or more nodes to compensate for the loss of another.

Server failure: The inability of a server node to respond adequately to client requests. This could be due to a complete crash, connectivity problems, or because it has been overwhelmed by high demand.

Failover: The way a cluster tries to accommodate the needs of clients orphaned by the failure of a single server node by launching or redirecting other nodes to fill a service gap.

Failback: The restoration of responsibilities to a server node as it recovers from a failure.

Replication: The creation of copies of critical data stores to permit reliable synchronous access from multiple server nodes or clients and to ensure they will survive disasters. Replication is also used to enable reliable load balancing.

Redundancy: The provisioning of multiple identical physical or virtual server nodes of which any one can adopt the orphaned clients of another one that fails.

Split brain: An error state in which network communication between nodes or shared storage has somehow broken down and multiple individual nodes, each believing it’s the only node still active, continue to access and update a common data source. While this doesn’t impact shared-nothing designs, it can lead to client errors and data corruption within shared clusters.

Fencing: To prevent split brain, the stonithd daemon can be configured to automatically shut down a malfunctioning node or to impose a virtual fence between it and the data resources of the rest of a cluster. As long as there is a chance that the node could still be active, but is not properly coordinating with the rest of the cluster, it will remain behind the fence. Stonith stands for “Shoot the other node in the head”. Really.

Quorum: You can configure fencing (or forced shutdown) to be imposed on nodes that have fallen out of contact with each other or with some shared resource. Quorum is often defined as more than half of all the nodes on the total cluster. Using such defined configurations, you avoid having two subclusters of nodes, each believing the other to be malfunctioning, attempting to knock the other one out.

Disaster Recovery: Your infrastructure can hardly be considered highly available if you’ve got no automated backup system in place along with an integrated and tested disaster recovery plan. Your plan will need to account for the redeployment of each of the servers in your cluster.

Active/Passive Cluster

The idea behind service failover is that the sudden loss of any one node in a service cluster would quickly be made up by another node taking its place. For this to work, the IP address is automatically moved to the standby node in the event of a failover. Alternatively, network routing tools like load balancers can be used to redirect traffic away from failed nodes. The precise way failover happens depends on the way you have configured your nodes.

Only one node will initially be configured to serve clients, and will continue to do so alone until it somehow fails. The responsibility for existing and new clients will then shift (i.e., “failover”) to the passive — or backup — node that until now has been kept passively in reserve. Applying the model to multiple servers or server room components (like power supplies), n+1 redundancy provides just enough resources for the current demand plus one more unit to cover for a failure.

Active/Active Cluster

A cluster using an active/active design will have two or more identically configured nodes independently serving clients.
Should one node fail, its clients will automatically connect with the second node and, as far as resources permit, receive full resource access.
Once the first node recovers or is replaced, clients will once again be split between both server nodes.

The primary advantage of running active/active clusters lies in the ability to efficiently balance a workload between nodes and even networks. The load balancer — which directs all requests from clients to available servers — is configured to monitor node and network activity and use some predetermined algorithm to route traffic to those nodes best able to handle it. Routing policies might follow a round-robin pattern, where client requests are simply alternated between available nodes, or by a preset weight where one node is favored over another by some ratio.

Having a passive node acting as a stand-by replacement for its partner in an active/passive cluster configuration provides significant built-in redundancy. If your operation absolutely requires uninterrupted service and seamless failover transitions, then some variation of an active/passive architecture should be your goal.

Shared-Nothing vs. Shared-Disk Clusters

One of the guiding principles of distributed computing is to avoid having your operation rely on any single point of failure. That is, every resource should be either actively replicated (redundant) or independently replaceable (failover), and there should be no single element whose failure could bring down your whole service.

Now, imagine that you’re running a few dozen nodes that all rely on a single database server for their function. Even though the failure of any number of the nodes will not affect the continued health of those nodes that remain, should the database go down, the entire cluster would become useless. Nodes in a shared-nothing cluster, however, will (usually) maintain their own databases so that — assuming they’re being properly synced and configured for ongoing transaction safety — no external failure will impact them.

This will have a more significant impact on a load balanced cluster, as each load balanced node has a constant and critical need for simultaneous access to the data. The passive node on a simple failover system, however, might be able to survive some time without access.
While such a setup might slow down the way the cluster responds to some requests — partly because fears of split-brain failures might require periodic fencing through stonith — the trade off can be justified for mission critical deployments where reliability is the primary consideration.

Availability

When designing your cluster, you’ll need to have a pretty good sense of just how tolerant you can be of failure. Or, in other words, given the needs of the people or machines consuming your services, how long can a service disruption last before the mob comes pouring through your front gates with pitch forks and flaming torches. It’s important to know this, because the amount of redundancy you build into your design will have an enormous impact on the downtimes you will eventually face.

Obviously, the system you build for a service that can go down for a weekend without anyone noticing will be very different from an e-commerce site whose customers expect 24/7 access. At the very least, you should generally aim for an availability average of at least 99% — with some operations requiring significantly higher real-world results. 99% up time would translate to a loss of less than a total of four days out of every year.

There is a relatively simple formula you can use to build a useful estimate of Availability (A). The idea is to divide the Mean Time Before Failure by the Mean Time Before Failure plus Mean Time To Repair. A = MTBF / (MTBF + MTTR) The closer the value of A comes to 1, the more highly available your cluster will be.

Example Implementation

Now that we know almost everything about High Availability, let's implement an Active/Active Cluster with No Single Point of Failure.

What is our objective?
We have 8 CAD Workstations with the following specs: 8 CPU Processor, 24 GB of RAM, with a disk size of 250 GB, that external engineers use to deliver CAD Designs for production. The customer wants these 8 machines to be high available since the engineers are located globally and some of them also work in the weekends. Our objective is to design a Active/Active Cluster that provides High Availability for all 8 CAD Workstations.

Inventory
Primary Node - cad.yourdomain.com (102.10.20.30) This is the main node that is in the DMZ and faces the Internet
   VM - vmmax Cloud Center - CC1 (1.1.2.2) This is the vmmax Control Center on the Primary Node
Replica Node - cad.yourdomain.com (102.10.20.40) This is the replica node that is in the DMZ and faces the Internet
   VM - vmmax Cloud Center - CC2 (1.1.2.2) This is the vmmax Control Center on the Replica Node
CAD Node 1 - cad1.yourdomain.local This is a CAD Node that is in the LAN
   VM - GoldCADImage (powered off) This is a CAD Workstation Virtual Machine
   VM - cad01 This is a CAD Workstation Virtual Machine
   VM - cad02 This is a CAD Workstation Virtual Machine
   VM - cad03 This is a CAD Workstation Virtual Machine
   VM - cad04 This is a CAD Workstation Virtual Machine
CAD Node 2 - cad2.yourdomain.local This is a CAD Node that is in the LAN
   VM - GoldCADImage (powered off) This is a CAD Workstation Virtual Machine
   VM - cad05 This is a CAD Workstation Virtual Machine
   VM - cad06 This is a CAD Workstation Virtual Machine
   VM - cad07 This is a CAD Workstation Virtual Machine
   VM - cad08 This is a CAD Workstation Virtual Machine
Our Approach:
  1. Setup Round-Robin A-Record to cad.yourdomain.com (102.10.20.30 and 102.10.20.40)
  2. Set the HA Option on Cloud Node 102.10.20.30 to Primary
  3. Set the HA Option on Cloud Node 102.10.20.40 to Replica
  4. Create an Automatic Connect Pool in the Primay vmmax Control Center (CC1) with following settings:
    • Display Name = CAD
    • Primary Node = cad1.yourdomain.local
    • Fail-Safe Node = cad2.yourdomain.local
    • Setup following inventory in the CAD Pool:
      • cad01 - user1
      • cad02 - user2
      • cad03 - user3
      • cad04 - user4
  5. Create a second Automatic Connect Pool in the Primay vmmax Control Center (CC1) with following settings:
    • Display Name = CAD
    • Primary Node = cad2.yourdomain.local
    • Fail-Safe Node = cad1.yourdomain.local
    • Setup following inventory in the CAD Pool:
      • cad05 - user5
      • cad06 - user6
      • cad07 - user7
      • cad08 - user8
Conclusion

With this setup we have:
  • Ensured that users come in on the same domain cad.yourdomain.com
  • In transparency to the user, we have a backup vmmax Control Center
  • We have 4 active users on CAD Node 1 and 4 active users on CAD Node 2 (Active/Active Cluster)
  • We have ensured that users can continue to work with the Fail-Safe alternate that will automatically divert 4 users

12.3 Backup Strategy

Protecting data is essential! A robust data backup strategy can, in the event of a disaster such as ransomware, flood, or power outage, help you get up and running as soon as possible. Here are the top 5 must-haves in a data backup strategy.

Onsite Backups: When a server crashes or fails, it is helpful to have data backups on hand for easy restoration. It's a cliché, but time is indeed money. Onsite backups are often faster to restore than cloud backups and almost always faster than offsite tape backups.

Offsite Backups: Onsite backups are valuable, but they cannot be counted on alone. Should something disastrous happen to the data center, it could also damage any backups you have in the building. For that reason, it is always wise to have copies of your backups offsite where they can be accessed manually or through the cloud.

Optimized Backup Schedule: Backups are not a one and done process. Key data in your data center must be regularly and consistently backed up according to to a clear and organized schedule. Check out our blog article on just a few backup rotation schemes for more information.

Backup Testing: Backups need to be tested and need to be tested regularly. In addition, the IT staff must be trained on how to access and restore their data backups as quickly as possible. A backup that fails or a team that is unable to restore the backup quickly undermines the company's investment in a backup solution in the first place.

Organized Storage System: Mostly applying to tape-based backup solutions, the storage repository for backups and labeling system must be clear and organized. The team cannot commit extra time digging through box after box of tape looking for a specific backup from a specific date several years ago.

The 3-2-1 Backup Strategy

The 3-2-1 backup strategy is well-known across the industry. Despite drastic changes to the technology powering backups and even calls for a 3-1-2, 3-2-2, and 3-2-3 configurations, the 3-2-1 backup strategy provides a baseline rule by which companies can protect the data on which they rely.

The 3-2-1 backup strategy states that you should keep:

  1. At least THREE copies of your data;
  2. Backed-up data on TWO different storage types;
  3. At least ONE copy of the data offsite.
Speed Is The Key

Central to all of these backup must-haves is speed. Backups not only need to be reliable and accessible, but the company needs to be able to restore the data quickly. When assessing possible data backup strategies in your environment, do not lose sight of this metric.

The Backup Manager

You can take manual backups of any Container or Virtual Machine with the Backup Manager and/or automate your backups with a scheduled backup script using the vmmaxCLI Client. However, additionally, we recommend the implementation of a professional backup solution like Veeam, Commvault, or Acronis.

12.4 Shared Stores

Shared Store is a single storage resource pool that is shared by multiple computer/server resources. It allows servers to save data and files on a shared storage system, designed to be independent of each server or computer. It is also designed to be much faster, more reliable and easier to scale. This basic concept has been utilized for years in order to save space and network bandwidth. Shared Storage technology simplifies the processes of accessing, migrating and archiving data. It is essential for achieving high-availability (HA) and to a large extent enables efficient “disaster recovery”, “continuous data protection” (CDP) and “business continuity” storage features.

Although we highly recommend for security and performance the compartmentalized approach where each Cloud Node has its own storage, there are situations where a shared storage may be beneficial for large volumes of data like large Backup Volumes, Hadoop Clustering, Data Science, or Big Data.

The vmmax Cloud Node supports the NFS, CEPH, and GLUSTERFS out of the box and you can use the vmmaxCLI Client to mount the Backup Store, VM Store, and the CN Store to an external high performance storage unit like Pure Storage, Dell EMC Isilon, or Hitachi Vantara.

It is important that the external storage unit must have a minimum of 2 x 10 Gbits network connection speed to be able to support the IO load of a running Virtual Machine or Container. Furthermore, please use only storage clusters with node/disk redundancy to eliminate single point of failure.

So what is a Shared Store? A Shared Store is “centralizing” data in one “place” however it is more than just that. In today's business environment, it is imperative that data be accessible on a 24/7 basis and not be objected to hardware issues. So for example, if a physical server fails, when the shared storage pool is available, you can power-up VMs and workloads from the failed server to a different host. In this way, the VMs/workloads will continue running, without any data loss, since their data was saved on the shared storage system, not on the local drives of the failed server.

Example Implementation

Our Objective is to setup 3 vmmax Cloud Nodes that utilize a shared VM/CN Store and Backup Store.

Our Approach:

  1. Setup 3 vmmax Cloud Nodes with the vmmax Cloud Platform Installer
  2. On our storage device we export the following nfs drives:
    • /vmmax/vms
    • /vmmax/cns
    • /vmmax/backup
  3. On each node we issue the follwoing commands with the vmmaxCLI Client:
    • To connect to the node
      connect YOURNODETOKEN
    • For the VM Store
      vm store mount nsf 10.10.10.10:/vmmax/vms
    • For the CN Store
      cn store mount nsf 10.10.10.10:/vmmax/cns
    • For the BAckup Store
      backup store mount nsf 10.10.10.10:/vmmax/backup
    • Finally we exit
      exit

12.5 SSL Certificates

What makes vmmax Cloud stand out, is the fact that it is designed from the ground up to be private and secure. Placing a system on the DMZ, to face the Internet, can be a challenging security task. Buying, configuring, and renewing SSL Certificates for example, can become costly and time consuming, especially if you provide many services for mobility. Our simplistic design of our cloud node system has eliminated these challenges with the built in Gateway technology.

Let's Encrypt Services

Let's Encrypt, a nonprofit Certificate Authority providing SSL/TLS certificates to 260 million websites, provides automated SSL Certificates for free. We support this organization with donations, please consider donating too.

We have integrated Let's Encrypt services in to our Gateway Manager which automatically installs and renews SSL Certificates for all you domain names facing the public Internet.

Note: You can read here more about how to setup a domain in which a certified vmmax node automatically installs/renews SSL Certificates for domains.