VMware vSphere Plugin Installation#
This guide provides detailed instructions for installing the EDA Connect VMware vSphere plugin.
Prerequisites#
Before installing or deploying the VMware vSphere plugin components, ensure that:
- The Cloud Connect Core application is properly installed in the cluster (see Cloud Connect Installation)
- You have read-only access credentials to the VMware vCenter environment
Installation Steps#
To deploy the VMware vSphere plugin, complete the following tasks:
- Deploy the plugin EDA app
- Deploy the plugin instance
Step 1: Connect VMware vSphere Plugin App Deployment#
The VMware vSphere plugin app is an application in the EDA app ecosystem. It can be easily installed using the EDA Store UI.
Installation Using EDA Store UI#
- Navigate to the EDA Store in the EDA UI
- Locate the VMware vSphere Plugin App
- Click Install
- Complete the installation
Installation Using Kubernetes API#
If you prefer installing the plugin using the Kubernetes API, you can do so by creating the following Workflow resource:
Step 2: Connect VMware vSphere Plugin Deployment#
Create a Secret for VMware Credentials#
A prerequisite for creating a vmwarePluginInstance resource is a Secret resource with username and password fields that contain the account information for an account that can connect to the VMware vCenter environment and has read-only access to the cluster so that it can monitor the necessary resources.
Base64 encoding
Use the following command to base64 encode your username and password:
mandatory label
The secrets used by the EDA plugins must have the eda.nokia.com/backup: "true" label.
Create the VMware Plugin Instance#
As the VMware vSphere plugins are managed through the operator, you can use the EDA UI to create a new VmwarePluginInstance resource under the * System Administration > Connect > VMware Plugins* menu item.
As an alternative, you can also create the same VmwarePluginInstance using the following custom resource example. Make sure to replace the specified values with their relevant content.
apiVersion: vmware.eda.nokia.com/v1
kind: VmwarePluginInstance
metadata:
name: my-vmware-plugin-instance # A unique name for the plugin resource (can be the same as the spec.name, or different)
namespace: eda-system # The system namespace.
spec:
pluginNamespace: eda # The namespace in the EDA deployment holding the fabric associated with this plugin
externalId: example-external-id # A unique Identifier for the plugin (can be same as the name)
heartbeatInterval: 30
name: example-vSphere # A unique name for the plugin
vcsaHost: example-host # The IP address of the vCenter Server
vcsaTlsVerify: true # To verify TLS of the VCSA
vcsaCertificate: "" # If the VCSA certificate is self signed, add it here to be able to verify from the plugin
authSecretRef: my-vmware-creds # Credentials are hosted in a separate Secret
kubectl apply -f - <<EOF
apiVersion: vmware.eda.nokia.com/v1
kind: VmwarePluginInstance
metadata:
name: my-vmware-plugin-instance # A unique name for the plugin resource (can be the same as the spec.name, or different)
namespace: eda-system # The system namespace.
spec:
pluginNamespace: eda # The namespace in the EDA deployment holding the fabric associated with this plugin
externalId: example-external-id # A unique Identifier for the plugin (can be same as the name)
heartbeatInterval: 30
name: example-vSphere # A unique name for the plugin
vcsaHost: example-host # The IP address of the vCenter Server
vcsaTlsVerify: true # To verify TLS of the VCSA
vcsaCertificate: "" # If the VCSA certificate is self signed, add it here to be able to verify from the plugin
authSecretRef: my-vmware-creds # Credentials are hosted in a separate Secret
EOF
Name and External ID constraints
The plugin name and external ID must comply with the regex check of '([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]' and can only contain alphanumerical characters and ., _ and -. It must start with an alphanumerical character, and have a length of 63 characters or fewer.
Configuration Parameters#
The VmwarePluginInstance resource supports the following key parameters:
| Field | Description | Required |
|---|---|---|
name | Name of the plugin instance in EDA. | Yes |
externalID | Unique identifier of the Plugin. | Yes |
pluginNamespace | The namespace in the EDA deployment holding the fabric associated with this plugin. | Yes |
vcsaHost | URL of the VCSA (e.g vcenter.mydomain.com). Note that no URI scheme should be provided. | Yes |
authSecretRef | Name of the Kubernetes Secret containing VCSA credentials | Yes |
heartbeatInterval | Interval in seconds for plugin heartbeat to EDA (default: 30s). | No |
vcsaTlsVerify | Whether to verify the TLS certificate of VCSA (default: true). | No |
VCSACertificate | PEM encoded certificate for VCSA if self-signed (default: empty). | No |
Post-Installation Verification#
After deploying the plugin, verify that it is running:
Check that the plugin has registered with Connect:
You should see your VMware plugin listed with status information.
Next Steps#
After installation, proceed to:
- Configure distributed Port Groups in vCenter
- Set up Custom Attributes for EDA-managed mode (if required)
- Make sure LLDP is enabled on the distributed vSwitch (at least advertise in Discovery protocol settings)
- Review the VMware vSphere Plugin documentation for usage and operational modes