2016-01-05 2 views
0

Я пытаюсь настроить сервис-брокера, чтобы добавить postgres к нашей установке Cloud Foundry. Мы запускаем нашу систему на vmWare. Я использую эту версию для того, чтобы сделать это:Cloud Foundry bosh Ошибка 140003: неизвестный пул ресурсов

cf-contrib-release

Я добавил выпуск в чушью:

#bosh releases 
Acting as user 'director' on 'microbosh-ba846726bed7032f1fd4' 

+-----------------------+----------------------+-------------+ 
| Name     | Versions    | Commit Hash | 
+-----------------------+----------------------+-------------+ 
| cf     | 208.12*    | a0de569a+ | 
| cf-autoscaling  | 13*     | 927bc7ed+ | 
| cf-metrics   | 34*     | 22f7e1e1 | 
| cf-mysql    | 20*     | caa23b3d+ | 
|      | 22*     | af278086+ | 
| cf-rabbitmq   | 161*     | 4d298aec | 
| cf-riak-cs   | 10*     | 5e7e46c9+ | 
| cf-services-contrib | 6*     | 57fd2098+ | 
| docker    | 23*     | 82346881+ | 
| newrelic_broker  | 1.3*     | 1ce3471d+ | 
| notifications-with-ui | 18*     | 490b6446+ | 
| postgresql-docker  | 4*     | a53c9333+ | 
| push-console-release | console-du-jour-203* | d2d31585+ | 
| spring-cloud-broker | 1.0.0*    | efd69612 | 
+-----------------------+----------------------+-------------+ 
(*) Currently deployed 
(+) Uncommitted changes 

Releases total: 13 

я установка мои пулы ресурсов и рабочих мест в моем файле YAML в соответствии с этим doumentation : http://bosh.io/docs/vsphere-cpi.html#resource-pools

Это как наш кластер выглядит:

vmware cluster

А вот то, что я положил в файл YAML:

resource_pools: 
- name: default 
    network: default 
    stemcell: 
    name: bosh-vsphere-esxi-ubuntu-trusty-go_agent 
    version: '2865.1' 
    cloud_properties: 
    cpu: 2 
    ram: 4096 
    disk: 10240 
    datacenters: 
    - name: 'Universal City' 
     clusters: 
     - USH_UCS_CLOUD_FOUNDRY_NONPROD_01: {resource_pool: 'USH_UCS_CLOUD_FOUNDRY_NONPROD_01_RP'} 


jobs: 
    - name: gateways 
    release: cf-services-contrib 
    templates: 
    - name: postgresql_gateway_ng 
    instances: 1 
    resource_pool: 'USH_UCS_CLOUD_FOUNDRY_NONPROD_01_RP' 
    networks: 
     - name: default 
     default: [dns, gateway] 
    properties: 
     # Service credentials 
     uaa_client_id: "cf" 
     uaa_endpoint: http://uaa.devcloudwest.example.com 
     uaa_client_auth_credentials: 
     username: admin 
     password: secret 

И я получаю сообщение об ошибке, когда я бегу «Бош развернуть», который говорит:

Error 140003: Job `gateways' references an unknown resource pool `USH_UCS_CLOUD_FOUNDRY_NONPROD_01_RP' 

Вот мой YAML файл в полном комплекте:

name: cf-22b9f4d62bb6f0563b71 
director_uuid: fd713790-b1bc-401a-8ea1-b8209f1cc90c 

releases: 
    - name: cf-services-contrib 
    version: 6 

compilation: 
    workers: 3 
    network: default 
    reuse_compilation_vms: true 
    cloud_properties: 
    ram: 5120 
    disk: 10240 
    cpu: 2 

update: 
    canaries: 1 
    canary_watch_time: 30000-60000 
    update_watch_time: 30000-60000 
    max_in_flight: 4 

networks: 
- name: default 
    type: manual 
    subnets: 
    - range: exam 10.114..130.0/24 
    gateway: exam 10.114..130.1 
    cloud_properties: 
     name: 'USH_UCS_CLOUD_FOUNDRY' 


#resource_pools: 
# - name: common 
# network: default 
# size: 8 
# stemcell: 
#  name: bosh-vsphere-esxi-ubuntu-trusty-go_agent 
#  version: '2865.1' 


resource_pools: 
- name: default 
    network: default 
    stemcell: 
    name: bosh-vsphere-esxi-ubuntu-trusty-go_agent 
    version: '2865.1' 
    cloud_properties: 
    cpu: 2 
    ram: 4096 
    disk: 10240 
    datacenters: 
    - name: 'Universal City' 
     clusters: 
     - USH_UCS_CLOUD_FOUNDRY_NONPROD_01: {resource_pool: 'USH_UCS_CLOUD_FOUNDRY_NONPROD_01_RP'} 

jobs: 
    - name: gateways 
    release: cf-services-contrib 
    templates: 
    - name: postgresql_gateway_ng 
    instances: 1 
    resource_pool: 'USH_UCS_CLOUD_FOUNDRY_NONPROD_01_RP' 
    networks: 
     - name: default 
     default: [dns, gateway] 
    properties: 
     # Service credentials 
     uaa_client_id: "cf" 
     uaa_endpoint: http://uaa.devcloudwest.example.com 
     uaa_client_auth_credentials: 
     username: admin 
     password: secret 


    - name: postgresql_service_node 
    release: cf-services-contrib 
    template: postgresql_node_ng 
    instances: 1 
    resource_pool: common 
    persistent_disk: 10000 
    properties: 
     postgresql_node: 
     plan: default 
    networks: 
     - name: default 
     default: [dns, gateway] 

properties: 
    networks: 
    apps: default 
    management: default 

    cc: 
    srv_api_uri: http://api.devcloudwest.example.com 

    nats: 
    address: exam 10.114..130.11 
    port: 25555 
    user: nats #CHANGE 
    password: secret 
    authorization_timeout: 5 

    service_plans: 
    postgresql: 
     default: 
     description: "Developer, 250MB storage, 10 connections" 
     free: true 
     job_management: 
      high_water: 230 
      low_water: 20 
     configuration: 
      capacity: 125 
      max_clients: 10 
      quota_files: 4 
      quota_data_size: 240 
      enable_journaling: true 
      backup: 
      enable: false 
      lifecycle: 
      enable: false 
      serialization: enable 
      snapshot: 
       quota: 1 

    postgresql_gateway: 
    token: f75df200-4daf-45b5-b92a-cb7fa1a25660 
    default_plan: default 
    supported_versions: ["9.3"] 
    version_aliases: 
     current: "9.3" 
    cc_api_version: v2 
    postgresql_node: 
    supported_versions: ["9.3"] 
    default_version: "9.3" 
    max_tmp: 900 
    password: secret 

И вот суть с отладочной от этой ошибки:

postgres_2423_debug.txt

ответ

1

docs для jobs блоков говорят:

  • resource_pool [String, required]: A valid resource pool name from the Resource Pools block. BOSH runs instances of this job in a VM from the named resource pool.

Это должно соответствовать name одного из ваших resource_pools, а именно default, а не имя пула ресурсов в Vsphere.

Единственными разделами, которые имеют прямые ссылки на IaaS, являются вещи, которые говорят cloud_properties. Конкретные названия ресурсов (например, сети, кластеры или датацентры в вашем vSphere, или подсети, AZ и типы экземпляров в AWS) отображаются только в местах, которые говорят cloud_properties.

Эти данные используются для определения «сетей» и «пулов ресурсов» на более высоком уровне абстракции, который является IaaS-агностиком, например. кроме облачных свойств, спецификации, которые вы даете для пулов ресурсов, одинаковы, независимо от того, развертываетесь ли вы в vSphere, AWS, OpenStack и т. д.

Затем ваши задания ссылаются на эти сети, пулы ресурсов и т. д. по логическому имени, которое вы «Придается абстракциям. В частности, задания не требуют какой-либо конфигурации, специфичной для IaaS, просто ссылки на логическую сеть (сети) и пул ресурсов, которые вы определили в другом месте вашего манифеста.

+0

Hi Amit! Хорошо спасибо, это было очень ясно. Я смог получить эту работу, назвав имя ресурса_пустом везде, где «config_pool» упоминается в конфиге. Спасибо, я многому научился из этого поста. – bluethundr

Смежные вопросы