Overview
HyperCloud™ Platform (HCP) VM Agent is a small Java program that runs under admin login, packaged as an executable jar. HCP VM Agent is optional, but its presence greatly enhance manageability and monitoring of Virtual Machine from within VM. HCP VM Agent is required to enable containerized application deployment and HCP-Kube vms status is sent back to the queue, Management Service picks up the status and records the status. If HCP VM-Agent is installed, the agent periodically sends “i-am-alive”, its IP, and metrics to a Queue which then gets picked up by Management Service for recording as displayed in VM Monitoring. HCP VM-Agent communicates over secure (TLS) connection with RabbitMQ.
Deployment
HCP support deployment of HCP Agent over Linux and Windows platform via SSH and cloud-init
Installation of Agent is done via shell script on Linux and PowerShell over windows platform
Currently deployment supported on
- All flavor of Linux: RHEL, Centos, Ubuntu, Fedora, Oracle
- All flavor of Windows: Win10x, Win2012, Win2K16
VM Agent Purpose
Purpose | Description |
---|---|
Performance Monitoring | HCP VM Agent provides an inside-view of VM performance for CPU, Memory and Disk. Additionally, captures VM system information such as mounted volumes, OS etc.. |
VM Heart Beat or Keep Alive to HCP | HCP VM Agent sends “i-am-alive” periodically. Allowing HCP to handle scenarios where VM OS is hanged but VM state is still running on hypervisor |
Plugin Execution | HCP VM Agent Allows platform agnostic execution of HCP plugins on virtual machine. HCP plugins allows HCP to perform application workflow executed at various application lifecycle hooks such as adding addition web-tier application configuring LB to route traffic to this |
Script Execution | HCP VM Agent allows execution of raw script with VM for custom script execution |
Disk / Volume mounting | HCP VM Agent allows file-system mounting/dismounting of disk attached. Upon mounting it also creates a file-system on the newly attached disk or vol. Works across OS platform Linux or Windows |
VM Storage Resize | HCP VM Agent allows resizing of root or attached volumes for cases where VM is resized for storage. Otherwise, it has to be done manually |
Container Life cycle Management | With the help of Agent, HCP provides complete Application lifecycle management of containerized application on VM |
HCP VM Functionality Agent comparison
HCP VM Functionality | With Agent | Without Agent |
---|---|---|
VM Provisioning | Yes | Yes |
VM Start/Stop/Resize/Move | Yes | Yes |
VM Disk / Volume - attached / detach | Yes | Yes |
Performance Monitoring | Yes | No |
VM Heart Beat or Keep Alive to HCP | Yes | No |
Plugin Execution | Yes | No |
Script Execution | Yes | No |
Disk / Volume FS Mounting | Yes | No |
VM Storage Resize | Yes | No (Yes with certain VM template) |
Container Lifecycle Management | Yes | No |
Technology Stack
Technology/ Framework | Usage |
---|---|
Java/ JVM | Primary Programming Language / Runtime environment. |
Spring | Widely used for dependency Injection, REST template and Spring Boot |
Logging | Using slf4j API specification with log back-classic implementation (uses Native implementation) |
Performance Monitoring | OSHI is a free JNA-based (native) Operating System and Hardware Information library for Java. Sigar (software) |
Rabbit MQ Client | HCP Agent communicate with HCP Substem over TLS connection with rabbitMQ |
Deployment support | All flavor of Linux: RHEL, Centos, Ubuntu, Fedora, Oracle All flavor of Windows: Win10x, Win2012, Win2K16 |