CloudFoundry colocate error while bosh deploy default cf openstack manifest

136 views
Skip to first unread message

Brice Vandeputte

unread,
Aug 9, 2013, 8:15:19 AM8/9/13
to bosh-...@cloudfoundry.org
Hi,
 (sorry for the flood) but i'm always following the Deploying Cloud Foundry on OpenStack guide 
 and now i'm in the last step : install cf (yeah ^^)

i have done and uploaded a cf release :
$ bosh create release --force
(...)
bosh upload release
(...)
$ bosh releases

+----------+-----------+-------------+
| Name     | Versions  | Commit Hash |
+----------+-----------+-------------+
| appcloud | 136.1-dev | 41751692+   |
| bosh     | 13.1-dev* | 952bb0c6+   |
+----------+-----------+-------------+
(...)
so i got an error while deploying cf with bosh :
$ bosh deployment cf
$ bosh deploy
(...)
  binding templates (00:00:00)                                                                      
  binding properties: Job `core' has specs with conflicting property definition styles between its job spec templates.  This may occur if colocating jobs, one of which has a spec file including `properties' and one which doesn't. (00:00:00)
Error                   7/9 00:00:00                                                                

Error 80010: Job `core' has specs with conflicting property definition styles between its job spec templates.  This may occur if colocating jobs, one of which has a spec file including `properties' and one which doesn't.
(...)


following the documentation i just wget the manifest like this
and i replace the floating ip and the director uuid (keeping dns and password unchanged for now..)

i just read some previous post p1 p2 about this error or issue281 (properties missing from template could produce this error) 
when i just read the related template is see some of them having no property :

jobs:
  - name: core
    template:
      - syslog_aggregator
      - nats
      - postgres <====  ~/src/cloudfoundry/cf-release/jobs/postgres/spec 
      - health_manager_next
      - collector
      - debian_nfs_server <==== ~/src/cloudfoundry/cf-release/jobs/debian_nfs_server/spec
      - uaa
      - login

I'm not sure on how to solve this : 
- is the cf manifest always ready-to-use ?
- should i adapt my current manifest to avoid this ? how ?

Thanks for your help
Regards
Brice








Brice Vandeputte

unread,
Aug 9, 2013, 10:18:11 AM8/9/13
to bosh-...@cloudfoundry.org
I found an other thread on this subject : grokbase with this gist
then i try to adapt the core job and got a new error :
  Error 170002: Resource pool `medium' is not big enough: 3 VMs needed, capacity is 2
i think that my openstack instance hasn't enough resource available (bosh already produce 9 instance to run). sic.

Ferran Rodenas

unread,
Aug 9, 2013, 10:31:02 AM8/9/13
to bosh-...@cloudfoundry.org
Brice,

The deployment manifest at the install cf guide is outdated. Try instead using the bosh-cloudfoundry gem for an up to date CF deployment manifest (or look at the templates dir for some examples).

The 'resource pool is not big enough' error means that at your deployment manifest you have a resource pool named 'medium' with a size of 2, but you have 3 jobs that are using this resource pool. Change the resource pool size to 3.

BTW, you don't need to deploy a full bosh in order to deploy CF, you can use the microBOSH (so you can save the 9 vms required for a full bosh).

- Ferdy


2013/8/9 Brice Vandeputte <bvand...@gmail.com>

Brice Vandeputte

unread,
Aug 12, 2013, 9:23:30 AM8/12/13
to bosh-...@cloudfoundry.org
Hi,
 thanks Ferdy for your answer so i delete my previous bosh deployment :
bosh deployment ~/bosh-workspace/deployments/bosh-openstack/bosh-openstack.yml
bosh delete deployment bosh-openstack

 I think that the documentation is a little bit confusing (first for me ^^ : eg. on this page for openstack, maybe it should be better to talk about "deploying BOSH" at the end of the page like the wordpress reference.)
 

 then i was going under bosh-cloudfoundry to get a template
 here is the way i get a cf manifest :

pre-requisite : 
- "10.192.36.35" is the reserved floating ip i choose
- "cloudfoundry" security group exists 

cd ~/bosh-workspace
vi cf.yml  
---
name: cf
director_uuid: (my_bosh_uid_from_bosh_status)
releases:
 - name: appcloud
   version: latest
networks: {}
properties:
  cf:
    ip_addresses: ['10.192.36.35']
    deployment_size: medium
    security_group: cloudfoundry
    persistent_disk: 4096
    common_password: c1oudc0w



bosh deployment cf.yml
bosh diff deployment_file.yml.erb

Would you like to keep the new version? [yn]
y


bosh deployments
bosh deploy
bosh deployments

+------+----------------+-------------------+
| Name | Release(s)     | Stemcell(s)       |
+------+----------------+-------------------+
| cf   | cf-release/134 | bosh-stemcell/877 |
+------+----------------+-------------------+

Deployments total: 1



The next step is to have a "cf target" success.

i could ping directly the target cf ip 
PING api.9r1eru.xip.io (10.192.36.35) 56(84) bytes of data.
64 bytes from api.cfcloud.os (10.192.36.35): icmp_req=1 ttl=59 time=10.0 ms

but while "cf target" (with or without proxy env vars) i got a connection Timeout:

Errno::ETIMEDOUT: Connection timed out - connect(2)
cat ~/.cf/crash # for more details
 
cat ~/.cf/crash
Time of crash:
  2013-08-12 15:11:43 +0200

Errno::ETIMEDOUT: Connection timed out - connect(2)

cf-5.2.0/lib/cf/cli.rb:319:in `initialize'
cf-5.2.0/lib/cf/cli.rb:319:in `new'
cf-5.2.0/lib/cf/cli.rb:319:in `sane_target_url'
cf-5.2.0/lib/cf/cli.rb:340:in `client_target'
cf-5.2.0/lib/cf/cli.rb:408:in `client'
cf-5.2.0/lib/cf/cli.rb:194:in `save_token_if_it_changes'
cf-5.2.0/lib/cf/cli.rb:186:in `block in execute'
cf-5.2.0/lib/cf/cli.rb:122:in `wrap_errors'
cf-5.2.0/lib/cf/cli.rb:182:in `execute'
mothership-0.5.1/lib/mothership.rb:45:in `start'
cf-5.2.0/bin/cf:16:in `<top (required)>'
ruby-2.0.0-p247/bin/cf:23:in `load'
ruby-2.0.0-p247/bin/cf:23:in `<main>'
ruby-2.0.0-p247/bin/ruby_noexec_wrapper:14:in `eval'
ruby-2.0.0-p247/bin/ruby_noexec_wrapper:14:in `<main>'

what do i miss ? 
i remove ~/.cf directory : does exist another cache config on the cf client ?

with a "strace cf target <ip>" i could show that "cf target" try to connect an EC2 instance 107.23.166.11 ?? could i workaround this ? [i can't go out without proxy..]

other tests :

{
    • code10000,
    • description"Unknown request"
}

http://uaa.10.192.36.35.xip.io/login give me a login page (i can't login here)

on target cf vm the following command is a success :
 # monit status 


Regards
Brice

 

Brice Vandeputte

unread,
Aug 12, 2013, 9:43:53 AM8/12/13
to bosh-...@cloudfoundry.org
In addition -right now- i just edit the cf client like this :

vi /home/bvandeputte/.rvm/gems/ruby-2.0.0-p247/gems/cf-5.2.0/lib/cf/cli.rb  (line 319)
#          TCPSocket.new(url, Net::HTTP.https_default_port)
#          url = "https://#{url}"
#        rescue Errno::ECONNREFUSED, SocketError, Timeout::Error
(3 lines commented)

this seems workaround https validation and use http URI instead : 
  with this workaround i could cf target/login/create-org/create-space/switch-space) 
voilà ^^

Regards
Reply all
Reply to author
Forward
0 new messages