DCImanager Administrator

BMC proxy module operation

ISPSystem

The BMC proxy module allows you to connect to BMC or Intel AMT with internal IP addresses on DCImanager locations. The module consists of the client and server parts.  Both parts are docker images. The client part is installed on the server with DCImanager, the server part is installed on locations. VNC-connection via SSH tunnel is established for connecting to a server with the BMC or Intel AMT. You can connect to the BMC web interface or console.

The client module part includes:

  • ipmi_proxy_service this service interacts with DCImanager;
  • noVNC HTML5 VNC-client;
  • goproxy — service for transferring VNC session data to noVNC and proxying Websocket client requests to a VNC server via SSH tunnel.

The server module part includes: 

  • scripts for managing module services — up.sh, down.sh;
  • TigerVNC — the VNC-server;
  • Chromium the browser for accessing the BMC (Intel AMT) web-interface;
  • Java — it is used for opening jnlp-files in the browser. 

Connecting to BMC (Intel AMT)


  1. ipmi_proxy_service on the server with DCImanager:
    1. Checks that the server is accessible on the location.
    2. Checks available SSH-port for connection both on the client and server sides.
  2. The up.sh script on the location:
    1. Creates a temporary user for the VNC session in the operating system.
    2. Adds the links to the BMC (Intel AMT) web-interface through http and https into the inclusions list.
    3. Runs TigerVNC with the permissions of the temporary user.
  3. TigerVNC on the location:
    • to connect to the web interface — opens the BMC (Intel AMT) web interface in Chromium automatically. If you select IPMI v1.5/v2, Chromium will support the java plug-in;
    • to connect to the console — downloads the jnlp file of the terminal application into the user directory and launches it.
  4. ipmi_proxy_service on the server with DCImanager:
    1. Creates a temporary user for the VNC session in the operating system.
    2. Runs noVNC with the permissions of the temporary user.
  5. goproxy service on the server with DCImanager:
    1. Proxies Websocket requests to a VNC server via SSH tunnel;
    2. Transfers VNC session data to noVNC.  As a result, the BMC (Intel AMT) web-interface will be accessible from the client browser.
  6. In the client browser, a new window with the URL https://domain.com/ipmiproxy/web/ will open, where domain.com is the address of the DCImanager platform. On this page the client will interact with the BMC server.

Closing connection to BMC (Intel AMT)


The down.sh script performs the following operations on the location: 

  1. Terminates the VNC session.
  2. Terminates the processes of the temporary user created for this VNC session.
  3. Deletes the temporary user and his home directory from the operating system.
Thank you for your feedback!
Was the article useful?
Tell us why not:

it does not match the title

it was hard to understand

I didn't find the answer

recommendations from the article did not help

other

Tell us what you didn't like in the article: