I previously posted about how it is easy to mix Hyper-v and VMware SDSs and present them to ScaleIO (here). In my second post of Hyper-V and VMware mixing triplet, I will be talking about Mixing MDMs.
In my lab setup , I have 3 nodes MDM cluster running on 3 ScaleIO VMs on ESXi 5.5 and one Hyper-v Physical server. I will replace the Secondary MDM node with the Hyper-v Physical server.
At the beginning, Let’s check the current cluster configuration I have:So before node replacement we should switch the cluster to Single mode then query the cluster status:
At this stage, we can remove the old Secondary MDM: Before adding the new MDM node, It is highly recommended to stop the MDM service on the old secondary node. The reason behind this is that when a secondary MDM is removed, It might still try to login to primary MDM. Although primary MDM will reject it, It will still occupy the connection and won’t let any new secondary MDM to connect. so we need to stop the secondary MDM service to clear this connection. To do so, from the old secondary MDM, cd to /opt/scaleio/ecs/mdm/bin and run delete_service.shNow, we should add the new secondary MDM node, For windows, interface_name parameter is not supported so we just add the secondary mdm node by specifying the IP address:Switching back to Cluster mode and querying the cluster status: Now, I will switch MDM ownership to the Windows machine:From Windows Hyper-v MDM node, querying the cluster and querying all SDSs to test the mdm functionality:
Yaay, The MDM nodes Mixing is completed and as you can see it worked fine with no issues 🙂
- The general practice is to implement ScaleIO MDM nodes as Virtual machines and lock them to separate hosts so in a case of a failover, they do not end up running on the same physical host.
- SDCs will become disconnected after changing the MDM IPs. To fix this you will need to update drv_cfg.txt located at /bin/scaleio/ecs and also run drv_cfg executable located at /opt/scaleio/ecs/sdc/bin The command should be: ./drv_cfg –mod_mdm_ip –ip <old_mdm_ip> –new_mdm_ip <new MDMs_ip>. After running this command you will need to restart the scini service by running: /etc/init.d/scini restart. These steps should be repeated on each SDC.
- MDM Cluster Virtual IP is not supported in Windows.
- To reuse the old Secondary MDM node you will have to run create_service.sh script in the same directory as delete_service.sh.