Deploy the Nutanix Event Notification Service
Now you can deploy the service that monitors the Nutanix infrastructure and triggers AWX jobs.
Deploy the Nutanix Event Notification Service
Before you can deploy the Nutanix Event Notification Service, you need to download and load the Nutanix Plug-in Image.
- Download and Load the Nutanix Plugin Image
- Option A: Import the .tgz file directly into the containerd (recommended)
- Option B: Transfer from Docker daemon to containerd:
- Deploy the Nutanix Event Notification Service
- Deployment Options
- Configuration Input
- Monitor Deployment
Download and Load the Nutanix Plugin Image
Before deploying the Nutanix Event Notification Service you must obtain the official container image from Juniper and make it available to Docker and the Kubernetes node. The image is not pulled from a public registry — it must be loaded manually.
- Identify Your Plugin Version
- Download the Plug-in Package
- Load the Image into Docker
- Make the Image Available on the Kubernetes Node (Kubernetes Deployment Only)
Identify Your Plugin Version
All commands below show <PLUGIN_VERSION> as a placeholder — substitute 6.0.0 or 6.1.0 according to the table above.
| Apstra Versions | Plug-in Package | Image Tag | Approximate Size |
|---|---|---|---|
| 6.0 | juniper-nutanix-plugin-6.0.0.tgz | event-notification-service:6.0.0 | ~63 MB |
| 6.1 | juniper-nutanix-plugin-6.1.0.tg | event-notification-service:6.1.0 | ~63 MB |
Download the Plug-in Package
Open a browser and go to: https://support.juniper.net/support/downloads/?p=apstra
Sign in with your Juniper support account.
Under "Nutanix" (or "Juniper Nutanix Plugin"), locate the release that matches your Apstra version: Apstra 6.0 → Juniper Nutanix Plugin 6.0.0 Apstra 6.1 → Juniper Nutanix Plugin 6.1.0
Download the .tgz archive (for example, juniper-nutanix-plugin-6.1.0.tgz).
Download the associated Checksums file and verify integrity:
# Replace <PLUGIN_VERSION> with 6.0.0 or 6.1.0 sha256sum juniper-nutanix-plugin-<PLUGIN_VERSION>.tgz # Compare output against the checksum listed on the download page
docker images | grep event-notification-service # Expected output: # event-notification-service 6.0.0 <image-id> ... (for Apstra 6.0) # event-notification-service 6.1.0 <image-id> ... (for Apstra 6.1)
Load the Image into Docker
# Replace <PLUGIN_VERSION> with your version (6.0.0 or 6.1.0) docker load -i juniper-nutanix-plugin-<PLUGIN_VERSION>.tgz
Confirm the image was loaded and note the tag printed by Docker:
docker images | grep event-notification-service # Expected output: # event-notification-service 6.0.0 <image-id> ... (for Apstra 6.0) # event-notification-service 6.1.0 <image-id> ... (for Apstra 6.1)
If the loaded tag differs from event-notification-service:<PLUGIN_VERSION>, re-tag it before proceeding: docker tag <loaded-name>:<loaded-tag> event-notification-service:<PLUGIN_VERSION>
Make the Image Available on the Kubernetes Node (Kubernetes Deployment Only)
Kubernetes uses containerd as its container runtime (installed by k8s_deploy.sh). You must import the image directly into containerd's k8s.io namespace — simply loading it into Docker is not sufficient for Kubernetes pods to find it.
Option A: Import the .tgz file directly into the containerd (recommended)
# Replace <PLUGIN_VERSION> with 6.0.0 or 6.1.0 sudo ctr -n k8s.io images import juniper-nutanix-plugin-<PLUGIN_VERSION>.tgz
Verify the image is visible to containerd:
sudo ctr -n k8s.io images ls | grep event-notification-service
Option B: Transfer from Docker daemon to containerd:
# Replace <PLUGIN_VERSION> with 6.0.0 or 6.1.0 docker save event-notification-service:<PLUGIN_VERSION> | sudo ctr -n k8s.io images import -
Verify the Image is Ready
# For Docker deployments — replace <PLUGIN_VERSION> with 6.0.0 or 6.1.0 docker inspect event-notification-service:<PLUGIN_VERSION> --format '{{.Id}}' | head -c 12 # For Kubernetes deployments — confirm containerd can see it sudo crictl images | grep event-notification-service # or sudo ctr -n k8s.io images ls | grep event-notification-serviceDeploy the Nutanix Event Notification Service
Now you can deploy the service that monitors the Nutanix infrastructure and triggers AWX jobs.
# Ensure you're in the scripts directory cd deploy/nutanix/scripts/ chmod +x deploy_nutanix_service.sh ./deploy_nutanix_service.sh
The script will first ask which Apstra version you are running and will select the correct plugin image (event-notification-service:6.0.0 or event-notification-service:6.1.0) automatically for the rest of the deployment.
Deployment Options
This script will prompt you to choose between Option 1 Kubernetes Deployment (Recommended) or Option 2 Docker Container
-
Option 1: Kubernetes Deployment (Recommended)
-
Deploys as Kubernetes pod
-
Uses ConfigMaps and Secrets for configuration
-
Automatic restart and health monitoring
-
Better for production environments
-
-
Option 2: Docker Container
-
Deploys as a standalone Docker container
-
Uses environment file for configuration
-
Simpler for development and testing
-
Configuration Input
This script will automatically detect the AWX configuration and will prompt you for the following information:
-
Nutanix Configuration
-
Prism Central IP address
-
Port (default: 9440)
-
Username
-
Password
-
-
Additional Settings
-
Kubernetes namespace (if using Kubernetes deployment)
-
Blueprint name (optional, default: apstra-ntx-bp)
-
-
AWX configuration is automatically detected
-
Host: Kubernetes node IP
-
Port: AWX NodePort
-
Username: admin
-
Password: Extracted from the AWX secret
Monitor Deployment
To monitor a Kubernetes Deployment, issue the following commands:
# Check pod status kubectl get pods -l app=event-notification-service # View logs kubectl logs -f deployment/event-notification-service # Check configuration kubectl get configmap nutanix-eda-config -o yaml kubectl get secret nutanix-eda-secrets -o yaml
To monitor a Docker Deployment, issue the following commands:
# Check container status docker ps | grep nutanix-event-service # View logs docker logs -f nutanix-event-service # Check environment variables docker exec nutanix-event-service env | grep NUTANIX