VMware Cloud Community
RMHiran
Contributor
Contributor

Unable to deploy VIO OpenStack due to anti-affinity rule

Hello,

I am trying to deploy OpenStack through vSphere web client. The deployment fails due to an error "Deploy OpenStack instance failed. Insufficient number of ESXi hosts to meet the anit-affinity rule."

I saw a previous post related to the same issue where it is mentioned that you need atleast 800GB of datastore space on the hosts combined in a cluster.

I have 2 Hosts in Management cluster adding up to 1000GB and 2 Hosts in Computer Cluster about 800GB datastore space combined. I have one host in Edge Cluster with datastore space of 250GB.

How much datastore space should each cluster comprise off to deploy OpenStack instances without failing? Are there any other credentials like CPU/Memory/Disk space that must be considered for the deployment?

I would really appreciate any help.

Thanks,

Radhika

16 Replies
admin
Immortal
Immortal

U Need min of 3hosts in mgmt cluster. U can move the 1 host from compute cluster to the mgmt cluster. Compute cluster will be fine with 1host.

Reply
0 Kudos
RMHiran
Contributor
Contributor

Thanks for the response. If we need 3 minimum hosts, does datastore space matters? If so, how much should each host have the storage space?

Thanks.

Reply
0 Kudos
MHyvonen
Contributor
Contributor

Is there any/a lots of trouble in the future if u add the 3rd host to the mgmt cluster during the deploying, and then move the 3rd host back to compute cluster afterwards?

There's a plenty of resources in the mgmt cluster with 2 hosts only.

Reply
0 Kudos
KarolSte
Enthusiast
Enthusiast

Hi RMHiran,

The requirement for datastores is to have at least one shared datastore. You need around 650GB space for mgmt cluster, but it doesn't have to be on one datastore - as long as cumulative space available for cluster is larger, you should be ok (note however, that one VM can take up to ~80GB, so datastore with less available space won't be used).

Reply
0 Kudos
KarolSte
Enthusiast
Enthusiast

Hi MHyvonen,

3 ESXi hosts are required for DB cluster, it consists of 3 nodes, and each node must be placed on separate host in production environment. You might not be able to remove that 3rd host from cluster once you deploy VIO, because of anti-affinity rules. You could remove those rules, but this is not supported configuration. If you are deploying PoC environment, you can edit file /opt/vmware/vio/etc/omjs.properties on management server (before deploying VIO cluster), and change the value of oms.disable_hosts_anti_affinity parameter from false to true. This should let you deploy VIO on 2 hosts. Again, please note that this configuration is not supported by VMware.

Best Regards,

Karol

Reply
0 Kudos
RMHiran
Contributor
Contributor

Hi,

What does this mean in the file  /opt/vmware/vio/etc/omjs.properties ?

oms.disable_datastores_anti_affinity = false

oms.disable_hosts_anti_affinity = false

What do you mean by shared datastore? If you consider 2/3 hosts, are the hosts in different cluster or same cluster?

Thanks,

Radhika

Reply
0 Kudos
admin
Immortal
Immortal

Hi

I would recommend that you consult the Quick Start Guide. Stick with the requirements mentioned in the guide. And start there. Since these are initial steps, I would not recommend mucking with the underlying config files etc. (thats just my suggestion so that you don't get stuck)

Just check out the quick start guide, follow the infra requirements and you should be able to get everything installed.

arvind

Reply
0 Kudos
RMHiran
Contributor
Contributor

Hi,

I have followed the OpenStack Quick Start Guide and deployed hosts and enabled DRS, host monitoring  etc along with enabling vMotion and FT. I did deploy another ESXi host under Management cluster. Now, management cluster comprises of 3 Hosts with total 1080GB datastore space, Compute cluster with 2 hosts and about ~800GB datastore space and Edge cluster with 1 Host - 250GB datastore space.

Now, while deploying the OpenStack, it fails due to "Cannot find datastore with enough space and meets datastore anti-affinity rule for [VIO-Controller 0]"

Attached is the error message. Datastore has enough space, but I don't understand why I am getting this. How do I fix this?

Thanks,

Radhika

Reply
0 Kudos
admin
Immortal
Immortal

Hi Radhika,

Could you please attach the log in oms server /var/log/oms/oms.log? Thanks.

Reply
0 Kudos
RMHiran
Contributor
Contributor

Hi,

Sorry for taking such a long time. Here is the log file. I really appreciate the help.

Thanks,

Radhika

Reply
0 Kudos
jbrowne
VMware Employee
VMware Employee

Hi Radhika,

Looking down through the OMS logs , I can see the following :

[2015-04-09T15:40:50.196+0000] ERROR tomcat-http--28| com.vmware.openstack.placement.PlacementService: Hosts (after placed above nodes): [{"name":"mm199328-srvd5.e535lab.mitre.org"

,"datastores":[{"name":"d5_229GB","freeSpace":132,"shared":false}],"numLogicalProcessors":32,"totalSpaceInGB":132},{"name":"mm199329-srvd6.e535lab.mitre.org","datastores":[{"name":

"d6_110GB","freeSpace":65,"shared":false},{"name":"d6_2.5GB","freeSpace":1,"shared":false}],"numLogicalProcessors":32,"totalSpaceInGB":66},{"name":"mm179409-srv.e535lab.mitre.org",

"datastores":[{"name":"mm179409_1.63TB","freeSpace":1444,"shared":false}],"numLogicalProcessors":24,"totalSpaceInGB":1444}]

Host mm199329-srvd6.e535lab.mitre.org has 2 datastores ( I am going to discount d6_2.5GB since it has only 1  GB free ) and datastore d6_110GB has only 65GB free. Requirement is 80 GB.

Since we deploy a Database Cluster of 3 nodes ( the anti-affinity meaning that a DB node will be on different ESXi hosts ) , the disk requirement of at least 80 GB free needs to be met.

Hope this helps,

John Browne.

Reply
0 Kudos
RMHiran
Contributor
Contributor

Hi John,

Thanks for the reply. There is more than 80GB in each cluster. I have attached the datastore space image to view how much space is free. So, that should not be issue. I started getting anti-affinity error as the nodes can't be placed into same datastore.

Any help is appreciated.

Thanks,

Radhika

Reply
0 Kudos
KarolSte
Enthusiast
Enthusiast

Hi Radhika,

AFAIK the requirement is to have at least three datastores available, each should have at least 80GB space available, They don't have to be shared datastores, they can be local, only one of them have to be shared. This is because DB cluster in VIO consists of 3 nodes, and anti-affinity rule requires to place each of them on different host and different datastore.


Best Regards,

Karol

Reply
0 Kudos
C0mm4nd3r
Enthusiast
Enthusiast

Hello,

normally you need at least 3 hosts for VIO.

If you want to test VIO, you can change the setting on the management server.

1. Login via Console or SSH to the management server as user "viouser"

2. You need root rights "sudo su"

3. Edit the file which is responsible for the anti-affinity rule. "vi opt/vmware/vio/etc/omjs.properties"

4. Search for "oms.disable_hosts_anti_affinity = false" and change it to "oms.disable_hosts_anti_affinity = true"

5. Restart the vApp and try it again.

Regards,
Patrick

enekux
Contributor
Contributor

Hello,

I am unable to use the workaround provided here for OpenStack version 2.5.

After rebooting the vApp, I am unable to connect to the "management-server". I have also tried rebooting vCenter but I get the same answer:

"Connection failed!

Please check the network connection between the vCenter server and the OpenStack management server."

If I deploy a new vApp without doing any change, everything works...

any ideas?

Thank you,

Reply
0 Kudos
enekux
Contributor
Contributor

Also I have realized that I don't meet the requirement of having ESXi hosts with 8 CPU cores (I have 2 with 6 CPU cores)...

Is there anyway we can bypass this restrictions so the poor men labs can give a try to VIO?

Reply
0 Kudos