Performance optimization
Bridged networking configuration
When using bridged networking, VMs connect directly to your physical network as native devices, receiving their own IP address from your network’s DHCP server. This enables direct communication with other network devices without NAT. Requirements:- A working DHCP server on your network that can assign IPs to VMs
- Sufficient IP addresses in your subnet (one per VM)
- All existing VMs must be deleted before switching modes
- MacStadium VDI running Orka Engine 3.5+
- You cannot run NAT and bridged networking simultaneously
- All VMs in your cluster must use the same networking mode
- Switching modes requires deleting all VMs first
CVAD (on-prem Citrix) deployments require bridge networking for VDA enrollment. Without it, VMs receive NAT IPs (192.168.64.x) that the Citrix Delivery Controller cannot reach for enrollment, unless custom port-forwarding is configured on the customer side. For Citrix DaaS or Workspace/VDA testing without CVAD, NAT mode is sufficient.
cluster.yml on your MacStadium VDI management node:
nodes.yml:
hosts inventory file:
192.168.64.x.
Troubleshooting bridged networking:
If VMs have 192.168.64.x addresses instead of corporate IPs, bridge mode isn’t configured correctly:
- Verify
vm_network_mode: bridgeis set incluster.yml - Verify
osx_node_vm_network_interfaceis set correctly innodes.ymlorhosts - Confirm the interface name is correct: SSH to host and run
ifconfig - Rerun host configuration:
ansible-playbook -i inventory configure-hosts.yml - Delete and redeploy affected VMs
HDX tuning for latency-sensitive workloads
For users editing video, audio, or using graphics-intensive applications who report lag or stuttering: 1. Enable Adaptive Transport (Framehawk) for high-latency connections: Citrix Cloud Console → Policies → Create new policy → HDX Adaptive Transport → set “Adaptive Transport” to “Preferred” → apply to affected Delivery Groups. 2. Adjust visual quality settings: For users on high-bandwidth connections: Policies → Visual Display → Visual Quality → “Build to Lossless” For users on low-bandwidth connections: Policies → Visual Display → Visual Quality → “Medium” 3. Enable GPU acceleration (M4 Macs): M4 Macs support GPU passthrough for VMs. Requirements: Orka 3.5+, macOS 15.5+ on the host, specific VM configuration.GPU acceleration is not yet automated in the Orka Engine Ansible playbooks. Contact MacStadium support for GPU-enabled VM deployment guidance.
Resource allocation (CPU, memory, storage)
Default VM resources are inherited from the golden image, typically 4 CPU cores, 8 GB RAM, 90 GB storage. To change resources, modify the VM configuration and create a new golden image:Automation enhancements
Extending Ansible playbooks
The orka-engine-orchestration playbooks provide core functionality. Common extensions include: Automated image update workflow:Integrating with CI/CD pipelines
Automatically build and deploy updated golden images when application code changes. Example: GitHub Actions workflow:Scheduled maintenance tasks
Use this schedule as a baseline:Multi-tenant considerations
Isolation strategies
Option 1: Delivery Group separation Deploy all VMs from shared infrastructure. Separate users into different Citrix Delivery Groups with different policies per group. Simple and resource-efficient, but teams share hardware and one team’s resource spike affects others. Option 2: VM group separation Deploy separate VM groups per tenant (citrix-vda-finance, citrix-vda-engineering), each with its own golden image. Groups still share Orka hosts.
Option 3: Host-level separation
Allocate specific Orka hosts to specific tenants:
Chargeback and cost allocation
Track resources per tenant:Tenant-specific policies
Apply different Citrix policies per tenant:- Create separate Delivery Groups per tenant
- Create policies with appropriate settings per tenant (for example, Finance: no clipboard, no file transfer; Engineering: full access)
- Filter policies by Delivery Group name

