InfoScale™ 9.0 Cluster Server Bundled Agents Reference Guide - Linux
- Introducing bundled agents
- Storage agents
- About the storage agents
- DiskGroup agent
- DiskGroupSnap agent
- Dependencies for DiskGroupSnap agent
- Agent functions for DiskGroupSnap agent
- State definitions for DiskGroupSnap agent
- Attributes for DiskGroupSnap agent
- Notes for DiskGroupSnap agent
- Resource type definition for DiskGroupSnap agent
- Sample configurations for DiskGroupSnap agent
- Debug log levels for DiskGroupSnap agent
- Volume agent
- VolumeSet agent
- Dependencies for VolumeSet agent
- Agent functions for VolumeSet agent
- State definitions for VolumeSet agent
- Attributes for VolumeSet agent
- Resource type definition for VolumeSet agent
- Sample configurations for VolumeSet agent
- Agent notes for VolumeSet agent
- Inaccessible volumes prevent the VolumeSet agent from coming online
- Debug log levels for VolumeSet agent
- LVMLogicalVolume agent
- LVMVolumeGroup agent
- Dependencies for LVMVolumeGroup agent
- Agent functions for LVMVolumeGroup agent
- State definitions for LVMVolumeGroup agent
- Attributes for LVMVolumeGroup agent
- Resource type definition for LVMVolumeGroup agent
- LVMVolumeGroup agent notes
- Sample configurations for LVMVolumeGroup agent
- Debug log levels for LVMVolumeGroup agent
- Mount agent
- IMF awareness
- Dependencies for Mount agent
- Agent functions for Mount agent
- State definitions for Mount agent
- Attributes for Mount agent
- Resource type definition for Mount agent
- Notes for Mount agent
- Support for spaces in directory names
- Support for multiple bindfs
- High availability fire drill
- VxFS file system lock
- IMF usage notes
- Enabling Level two monitoring for the Mount agent
- RHEL 7 and RHEL 8: NFS file system version
- RHEL 7 and RHEl 8: Configuring bind mounts
- Support for Amazon EFS
- Sample configurations for Mount agent
- Debug log levels for Mount agent
- Mount agent limitations
- VMwareDisks agent
- SFCache agent
- AWS EBSVol agent
- AzureDisk agent
- GoogleDisk agent
- Network agents
- About the network agents
- IP agent
- NIC agent
- Dependencies for NIC agent
- Bonded network interfaces for NIC agent
- Agent functions for NIC agent
- State definitions for NIC agent
- Attributes for NIC agent
- Resource type definition for NIC agent
- Notes for the NIC agent
- Case 1
- Case 2
- Case 3
- Sample configurations for NIC agent
- Debug log levels for NIC agent
- IPMultiNIC agent
- MultiNICA agent
- Dependencies for MultiNICA agent
- IP Conservation Mode (ICM) for MultiNICA agent
- Performance Mode (PM) for MultiNICA agent
- Agent function for MultiNICA agent
- Attributes for MultiNICA agent
- Resource type definition for MultiNICA agent
- Sample configurations for MultiNICA agent
- IPv6 configuration for MultiNICA agent
- Mixed mode configuration - IPv4 and IPv6 for MultiNICA agent
- Debug log levels for MultiNICA agent
- DNS agent
- Dependencies for DNS agent
- Agent functions for DNS agent
- State definitions for DNS agent
- Attributes for DNS agent
- Resource type definition for DNS agent
- Agent notes for DNS agent
- About using the VCS DNS agent on UNIX with a secure Windows DNS server
- High availability fire drill for DNS agent
- Monitor scenarios for DNS agent
- Sample Web server configuration for DNS agent
- Secure DNS update for BIND 9 for DNS agent
- Setting up secure updates using TSIG keys for BIND 9 for DNS agent
- Sample configurations for DNS agent
- Debug log levels for DNS agent
- AWSIP agent
- AWSRoute53 agent
- AzureIP agent
- AzureDNSZone agent
- GoogleIP agent
- OCIIP agent
- File share agents
- About the file service agents
- NFS agent
- NFSRestart agent
- Share agent
- About the Samba agents
- NetBios agent
- Service and application agents
- About the services and applications agents
- Apache HTTP server agent
- Application agent
- IMF awareness
- High availability fire drill for Application agent
- Dependencies for Application agent
- Agent functions
- State definitions for Application agent
- Attributes for Application agent
- Resource type definition for Application agent
- Notes for Application agent
- Using Application agent with IMF
- Level two monitoring through MonitorProgram
- Using Application agent with ProPCV
- Requirement for programs
- Requirement for default profile
- Support for cloned Application agent
- Application monitoring inside Docker container
- Using the hadockersetup utility
- Requirement for systemd support
- Sample configurations for Application agent
- Debug log levels for Application agent
- AppMonHB agent
- AzureAuth agent
- CoordPoint agent
- KVMGuest agent
- Dependencies for KVMGuest agent
- Agent functions for KVMGuest agent
- State definitions for KVMGuest agent
- Attributes for KVMGuest agent
- Resource type definition for KVMGuest agent
- Notes for KVMGuest agent
- Support for guests created on RHEL 6, RHEL 7 (KVM environment), and SuSE Enterprise Linux 11 SP2 and SP3
- Storage and network configurations
- Guest live migration
- Managing virtual machines in RHEV environment
- Managing ISO image in SuSE KVM
- Using VCS to migrate virtual machines
- Configuring the KVMGuest agent for DR in a global cluster setup
- Configuring a non-admin user for RHEV-M that is using AD-based domain
- Virtual machine failover if host crashes
- KVMGuest agent requires curl and xpath commands in RHEV environment
- RHEV environment: If a node on which the VM is running panics or is forcefully shutdown, VCS is unable to start the VM on another node
- Sample configurations for KVMGuest environment
- Sample configurations for RHEV environment
- Sample Configuration for SuSE KVM
- Debug log levels for KVMGuest agent
- Process agent
- IMF awareness
- High availability fire drill for Process agent
- Dependencies for Process agent
- Agent functions for Process agent
- State definitions for Process agent
- Attributes for Process agent
- Resource type definition for Process agent
- Usage notes for Process agent
- Sample configurations for Process agent
- Debug log levels for Process agent
- ProcessOnOnly agent
- RestServer agent
- Infrastructure and support agents
- Testing agents
- Replication agents
- About the replication agents
- RVG agent
- RVGPrimary agent
- RVGSnapshot
- RVGShared agent
- RVGLogowner agent
- RVGSharedPri agent
- VFRJob agent
- Overview
- Dependencies for VFRJob agent
- High availability of scheduler and replicator daemons
- Agent functions for VFRJob agent
- State definitions for VFRJob agent
- Attributes for VFRJob agent
- Resource type definitions for VFRJob agent
- High availability of VFR daemons
- Configuration of VFRJob service groups on the source system
- Sample configuration of VFRJob agent on source system
- Configuration for VFRJob service groups on the target system
- Sample configuration of VFRJob agent on target system
- Changing file replication direction
- Notes for the VFRJob agent
AzureIP agent
The AzureIP agent manages the following networking resources in an Azure environment:
Private IP - A private IP is a private numerical address that networked devices use to communicate with one another. It is used for communication between an Azure virtual network (VNet) and an on-premises network. To extend an on-premises network to Azure, you use a VPN gateway or an ExpressRoute circuit.
Public IP - A public IP is a numerical address that is used for communication over the internet, including Azure public-facing services.
Overlay IP - An overlay IP provides IP failover functionality for the nodes that are spread across subnets. It lets you redirect IP address traffic to another cluster node belonging to different subnet within the same VNet. An overlay IP must be defined outside the VNet Classless Inter-Domain Routing (CIDR) block.
Note:
An overlay IP cannot be used to provide failover across Regions if VNet-to-VNet tunneling is used.
The AzureIP agent performs the following activities:
Gets the NIC details, creates the IP configuration, and associates and disassociates the private IP address.
Associates and disassociates the Public IP address with the Private IP address.
Manages the route table entries of the Overlay IP for failover across subnets.
The AzureIP agent uses Azure Python APIs to associate IP resources with an Azure VM.
An InfoScale deployment in Azure does not support IPv6 because of the following limitations:
Existing virtual machines (VMs) that are configured with IPv4 addresses cannot use IPv6 addresses; you must deploy new VMs and configure them with IPv6 addresses.
Public IPv6 addresses cannot be assigned to a VM.
VMs with IPv6 addresses cannot be members of an Azure cloud service. However, they can communicate with each other over their respective IPv4 addresses.
Configure the AzureAuth agent.
See AzureAuth agent.
Configure an authentication method for authenticating Azure subscription:
To use the AzureAuth agent for a service principal-based authentication, configure the AzureAuth agent.
See AzureAuth agent.
To use an Azure managed identity-based authentication, configure a user-assigned managed identity in the cluster.
To configure a public IP, create a static public IP resource in the Azure portal.
To configure an overlay IP, create a route table, and associate the subnets where the overlay IP fails over with the route table.
Note:
The subnets can be associated with a single route table.
The AzureIP resources depend on the AzureAuth resources.
If an Azure managed identity is configured for authenticating Azure subscription, the AzureIP resources do not depend on the AzureAuth resource.
If the AzureAuth agent is configured for a service principal-based authentication, the AzureIP resources depend on the AzureAuth resources.
Online |
|
|
|
Monitor |
|
ONLINE |
|
OFFLINE |
|
UNKNOWN | One of the following might be true:
|
FAULTED | Indicates that the IP resources cannot be brought online or abruptly stopped outside of VCS control. |
Table: Required attributes
Attribute | Description |
|---|---|
PrivateIP | Secondary private IP address of the Azure VM. This value is mandatory if OverlayIP is not provided. Type and dimension: string-scalar |
NICDevice | Name of the network device. Enter ip addr to list all network adapters. Example: eth0 Here, eth0 is specified to assign the private IP address to the next available alias of eth0. Type and dimension: string-scalar |
OverlayIP | Overlay IP provides IP failover functionality for the nodes that are spread across subnets. Overlay IP must be outside of the VNet CIDR block in which the nodes are present. This value is mandatory if PrivateIP is not provided. Type and dimension: string-scalar |
RouteTableResourceIds | Describes all route tables. You can add one or more route table IDs separated by a space. This attribute is required if the OverlayIP attribute is configured for the resource. Type and dimension: string-vector |
AzureAuthResName | Name of the authentication agent resource that handles Azure related authentication. This attribute is required only if the AzureAuth agent is configured for using a service principal-based authentication for Azure subscription. This attribute is not required if using managed identities for Azure authentication. Note: If both AzureAuth agent and user-assigned managed identity are configured in the cluster, the AzureAuth agent configuration takes precedence. The cluster defaults to using the AzureAuth service principal-based Azure authentication. Type and dimension: string-scalar |
ManagedIdentityClientID | ID of the user-assigned managed identity that is obtained from the Azure portal. This attribute is required only if using managed identity-based authentication for Azure subscription. This attribute is not required if the AzureAuth agent is configured for using a service principal for Azure authentication. Note: If both AzureAuth agent and user-assigned managed identity are configured in the cluster, the AzureAuth agent configuration takes precedence. The cluster defaults to using the AzureAuth service principal-based Azure authentication. Type and dimension: string-scalar |
Table: Optional attributes
Attribute | Description |
|---|---|
PublicIP | Static public IP created from the Azure Portal. This IP is used in IP configuration to map the Public IP address to a secondary private IP address. Type and dimension: string-scalar |
AzureVMName | Name of the VM in Azure on which agent is running. Type and dimension: string-scalar |
VMResourceGroup | Azure resource group where the Azure VM resides. Type and dimension: string-scalar |
type AzureIP (
static str ArgList[] = { tempVMName, PrivateIP, NICDevice,
PublicIP, tempPublicIPResourceId, AzureVMName, VMResourceGroup,
OverlayIP, RouteTableResourceIds, "AzureAuthResName:SubscriptionId",
AzureAuthResName:ClientId", "AzureAuthResName:SecretKey",
AzureAuthResName:TenantId", tempVMResourceGroupName }
str PrivateIP
str NICDevice
str PublicIP
temp str tempPublicIPResourceId
str AzureVMName
str VMResourceGroup
str OverlayIP
str RouteTableResourceIds[]
str AzureAuthResName
temp str tempVMName
temp str tempVMResourceGroupName
)type AzureIP (
static int FaultOnMonitorTimeouts = 0
static str ArgList[] = { tempVMName, PrivateIP, NICDevice, PublicIP,
tempPublicIPResourceId, AzureVMName, VMResourceGroup, OverlayIP,
RouteTableResourceIds, "AzureAuthResName:SubscriptionId",
"AzureAuthResName:ClientId", "AzureAuthResName:SecretKey",
"AzureAuthResName:TenantId", tempVMResourceGroupName,
ManagedIdentityClientID, tempSubscriptionId }
str PrivateIP
str NICDevice
str PublicIP
temp str tempPublicIPResourceId
str AzureVMName
str VMResourceGroup
str OverlayIP
str RouteTableResourceIds[]
str AzureAuthResName
temp str tempVMName
temp str tempVMResourceGroupName
str ManagedIdentityClientID
temp str tempSubscriptionId
)
Sample configuration with Private IP:
AzureIP azure-ip-res (
PrivateIP = "10.1.5.42"
NICDevice @ CLOUDVM1 = "eth0"
NICDevice @ CLOUDVM2 = "eth0"
AzureAuthResName = Auth_Res
)
Sample configuration with Public IP:
AzureIP azure-ip-res (
PrivateIP = "10.1.5.52"
NICDevice @ CLOUDVM1 = "eth0"
NICDevice @ CLOUDVM2 = "eth0"
PublicIP = "52.173.243.126"
AzureAuthResName = Auth_Res
)
Sample configuration with Overlay IP:
AzureIP overlay-ip-res (
NICDevice @ CLOUDVM1 = "eth0"
NICDevice @ CLOUDVM2 = "eth0"
OverlayIP = "192.168.3.88"
RouteTableResourceIds = {
"/subscriptions/6940a326-abc6-40dd-b616-d3f9bbdf1d63/
resourceGroups/azureRG/providers/Microsoft.Network/
routeTables/azureroute1",
"/subscriptions/6940a326-abc6-40dd-b616-d3f9bbdf1d63/
resourceGroups/azureRG/providers/Microsoft.Network/
routeTables/azureroute2"}
AzureAuthResName = Auth_Res
)
Sample configuration with Private IP:
AzureIP azure-ip-res (
PrivateIP = "10.1.5.42"
NICDevice @ CLOUDVM1 = "eth0"
NICDevice @ CLOUDVM2 = "eth0"
ManagedIdentityClientID = 1da89bd2-9735-4266-b920-27c23b98f022
)
Sample configuration with Public IP:
AzureIP azure-ip-res (
PrivateIP = "10.1.5.52"
NICDevice @ CLOUDVM1 = "eth0"
NICDevice @ CLOUDVM2 = "eth0"
PublicIP = "52.173.243.126"
ManagedIdentityClientID = 1da89bd2-9735-4266-b920-27c23b98f022
)
Sample configuration with Overlay IP:
AzureIP overlay-ip-res (
NICDevice @ CLOUDVM1 = "eth0"
NICDevice @ CLOUDVM2 = "eth0"
OverlayIP = "192.168.3.88"
RouteTableResourceIds = {"/subscriptions/6940a326-abc6-40dd-b616-
d3f9bbdf1d63/resourceGroups/azureRG/providers/Microsoft.Network/
routeTables/azureroute1",
"/subscriptions/6940a326-abc6-40dd-b616-d3f9bbdf1d63/resourceGroups
/azureRG/providers/Microsoft.Network/routeTables/azureroute2"}
ManagedIdentityClientID = 1da89bd2-9735-4266-b920-27c23b98f022
)
The AzureIP agent uses the DBG_1 and the DBG_2 debug log levels.