bosh-init deploy failes with 'No valid placement found for disks'


Neil Watson
 

What does this error mean and how can I fix it?

Starting registry... Finished (00:00:00)
Uploading stemcell 'bosh-vsphere-esxi-ubuntu-trusty-go_agent/3262.5'... Failed (00:00:08)
Stopping registry... Finished (00:00:00)
Cleaning up rendered CPI jobs... Finished (00:00:00)

Command 'deploy' failed:
creating stemcell (bosh-vsphere-esxi-ubuntu-trusty-go_agent 3262.5):
CPI 'create_stemcell' method responded with error: CmdError{"type":"Bosh::Clouds::CloudError","message":"No valid placement found for disks:\n- Size: 528, Target DS Pattern: /datastore[1-8]/, Current Location: N/A\n\nPossible placement options:\n- Cluster name: BOSH_CL\n Datastores:\n - Name: datastore1, free space: 1774121\n - Name: datastore8, free space: 1605822\n - Name: datastore7, free space: 1802097\n - Name: datastore5, free space: 1787646\n - Name: datastore4, free space: 635180\n - Name: datastore3, free space: 196208\n - Name: datastore2, free space: 611371\n - Name: datastore6, free space: 1170125\n\n","ok_to_retry":false}


Geoff Franks <geoff@...>
 

I believe it means that of the datastores you've specified for bosh disks, none are accessible by the ESX host that you tried to build the bosh director on. You might need to specify the datacenter/cluster for the bosh director as one that can access those datastores.

On Aug 24, 2016, at 3:39 PM, Neil Watson <neil(a)watson-wilson.ca> wrote:

What does this error mean and how can I fix it?

Starting registry... Finished (00:00:00)
Uploading stemcell 'bosh-vsphere-esxi-ubuntu-trusty-go_agent/3262.5'... Failed (00:00:08)
Stopping registry... Finished (00:00:00)
Cleaning up rendered CPI jobs... Finished (00:00:00)

Command 'deploy' failed:
creating stemcell (bosh-vsphere-esxi-ubuntu-trusty-go_agent 3262.5):
CPI 'create_stemcell' method responded with error: CmdError{"type":"Bosh::Clouds::CloudError","message":"No valid placement found for disks:\n- Size: 528, Target DS Pattern: /datastore[1-8]/, Current Location: N/A\n\nPossible placement options:\n- Cluster name: BOSH_CL\n Datastores:\n - Name: datastore1, free space: 1774121\n - Name: datastore8, free space: 1605822\n - Name: datastore7, free space: 1802097\n - Name: datastore5, free space: 1787646\n - Name: datastore4, free space: 635180\n - Name: datastore3, free space: 196208\n - Name: datastore2, free space: 611371\n - Name: datastore6, free space: 1170125\n\n","ok_to_retry":false}


Neil Watson
 

I'm certain that the Vsphere cluster has access to all of those datastores.


Neil Watson
 

I'm certain that the ESX host has access to those datastores. The directory was using one of them before when it was hard coded to use just the one. Then I changed the pattern so it would match all datastores and now this error.


Neil Watson
 

Turns out the problem is this:

datastore_pattern:

The RH syntax is not documented. I guessed '/regex/' and /regex/ but it turns out the regex is neither quoted or // delimited. e.g.

datastore_pattern: datastore[1-8]
persistent_datastore_pattern: datastore[1-8]