Tuesday, January 10, 2017

Text or graphical user interface for DRAC access :
DRAC stands for DELL Remote Access Controller. It is an out-of-band management platform on certain DELL servers typically those that host Windows but by no means are restricted to just Windows.  There are two important things to note about DRAC
1) It is out-of-band.  The operating system on the server be it Windows or Linux does NOT matter.  It uses separate resources from the main server resources  for managing the server
2) It is dedicated to the server and provides access only to that server and not to any other server. Consequently the notion of serial port aggregator across multiple VMs  as from VMWare do not hold here.  This is specific to each hardware resource. The DRAC is available as an Expansion card or as an integrated controller on the motherboard in which case it's called iDRAC.

Furthermore, the access to this out-of-band server management platform is enabled over IP usually with the help of an SSH access. The RACADM command as well as the console session commands can both be issued at the same level over this vt100 text based terminal console  RACADM stands for Remote Access Controller Admin command that gives a set of commands for remote or local management of the managed system. The console session commands are for interaction with the managed system to its prompts. This remote management is done over the IP layer with the help of SSH access. 

The vt100 console typically provides the many Control Escape sequences some of which include:
Query Device code = Requests a Report Device Code response from the device.
Report Device code = Generated by the device in response to Query Device Code request.
Query Cursor position = Requests a Report Cursor Position response from the device.
Report Cursor position = Generated by the device in response to a Query Cursor Position request; reports current cursor position.
Reset Device = Reset all terminal settings to default.
Cursor Home  = Sets the cursor position where subsequent text will begin.
Cursor Up = Moves the cursor up by COUNT rows; the default count is 1.
Cursor Down = Moves the cursor down by COUNT rows; the default count is 1.
Cursor Forward  = Moves the cursor forward by COUNT columns; the default count is 1.
Cursor Backward  = Moves the cursor backward by COUNT columns; the default count is 1.
Scroll Screen = Enable scrolling for entire display.
Scroll Down = Scroll display down one line.
Scroll Up = Scroll display up one line.
Set Display Attributes Sets multiple display attribute settings. The following lists standard attributes:
Sets multiple display attribute settings. The following lists standard attributes:
0 Reset all attributes
:
Foreground Colours
30 Black
:
37 White

Background Colours
40 Black
:

47 White


The upshot is that the DRAC access over SSH enables console interaction in text mode using serial and telnet commands as done locally on the server. This enables quick and easy server management for the most routine management operations on the server and lends itself to easy automation given the ssh connectivity and text based interaction. More on configuring and using this access is provided in the DRAC manual here : http://www.dell.com/support/article/us/en/19/SLN285488 
The DRAC 5 console redirection feature enables us to access the local console remotely in either graphic or text mode. When we open a console redirection session, the Dell Virtual KVM Viewer Application starts and the remote system's desktop appears in the viewer. Using the Virtual KVM Viewer Application, we can control the system's mouse and keyboard functions from a local or remote management station. This is initiated with the "connect" command.

In addition to the ssh access, the browser based access is tightly coupled and provided by the manufacturer. It can be hosted as is in an iFrame on any client side application but requires the use of a java applet that demands additional security privileges from any browser. However, this is not as cost-effective to automate as the text based mode for the same routine management operations. Currently, there are very few KVM libraries that can be used directly as a client side technology for working with any remote based system including the DELL Remote Access Controller because most of it is proprietary. However, it is not impossible to reverse engineer the interactions between the Java applet and the remote access controller. That is why this is a more expensive route.
Moreover, the benefit of using ssh command is that we can now use ssh relay to access it from anywhere. we do this with the following command:
ssh -f user@drac_ipv4_address -L localport:jumpserver:remoteport -N

This way we only access the intermediary server for all DRAC ip address.

Additionally, we overcome firewall limitations in the cloud which makes it all the more desirable for ubiquitous but secure access.

#codingexercise
Print Right View of  Binary Tree

void RightView(Node root, int level, ref int max)
{
if (root == null) return;

if (max < level)
{
Console.Write("{0}", root.data);
max = level;
}
RightView(root.right, level + 1, ref max);
RightView(root.left, level + 1, ref max);
}

Print Left View of  Binary Tree

void LeftView(Node root, int level, ref int max)
{
if (root == null) return;

if (max < level)
{
Console.Write("{0}", root.data);
max = level;
}
LeftView(root.left, level + 1, ref max);
LeftView(root.right, level + 1, ref max);
}
these methods could also be used in conjunction with a method that prints leaves of the tree for finding the nodes on the boundary of the tree

No comments:

Post a Comment