~celebdor/charms/trusty/nova-cloud-controller/trunk

170 by James Page
15.10 Charm release
1
# nova-cloud-controller
2
3
Cloud controller node for OpenStack nova. Contains nova-schedule, nova-api, nova-network and nova-objectstore.
4
5
The neutron-api interface can be used join this charm with an external neutron-api server. If this is done
6
then this charm will shutdown its neutron-api service and the external charm will be registered as the
7
neutron-api endpoint in keystone. It will also use the quantum-security-groups setting which is passed to
8
it by the api service rather than its own quantum-security-groups setting.
9
10
If console access is required then console-proxy-ip should be set to a client accessible IP that resolves
11
to the nova-cloud-controller. If running in HA mode then the public vip is used if console-proxy-ip is set
12
to local. Note: The console access protocol is baked into a guest when it is created, if you change it then
13
console access for existing guests will stop working
14
15
**Special considerations to be deployed using Postgresql**
16
17
    juju deploy nova-cloud-controller
18
    juju deploy postgresql
19
    juju add-relation "nova-cloud-controller:pgsql-nova-db" "postgresql:db"
20
    juju add-relation "nova-cloud-controller:pgsql-neutron-db" "postgresql:db"
21
22
## Deploying from source
23
24
The minimum openstack-origin-git config required to deploy from source is:
25
26
    openstack-origin-git: include-file://nova-juno.yaml
27
28
    nova-juno.yaml
29
        repositories:
30
        - {name: requirements,
31
           repository: 'git://github.com/openstack/requirements',
32
           branch: stable/juno}
33
        - {name: nova,
34
           repository: 'git://github.com/openstack/nova',
35
           branch: stable/juno}
36
37
Note that there are only two 'name' values the charm knows about: 'requirements'
38
and 'nova'. These repositories must correspond to these 'name' values.
39
Additionally, the requirements repository must be specified first and the
40
nova repository must be specified last. All other repositories are installed
41
in the order in which they are specified.
42
43
The following is a full list of current tip repos (may not be up-to-date):
44
45
    openstack-origin-git: include-file://nova-master.yaml
46
47
    nova-master.yaml
48
        repositories:
49
        - {name: requirements,
50
           repository: 'git://github.com/openstack/requirements',
51
           branch: master}
52
        - {name: oslo-concurrency,
53
           repository: 'git://github.com/openstack/oslo.concurrency',
54
           branch: master}
55
        - {name: oslo-config,
56
           repository: 'git://github.com/openstack/oslo.config',
57
           branch: master}
58
        - {name: oslo-context,
59
           repository: 'git://github.com/openstack/oslo.context',
60
           branch: master}
61
        - {name: oslo-db,
62
           repository: 'git://github.com/openstack/oslo.db',
63
           branch: master}
64
        - {name: oslo-i18n,
65
           repository: 'git://github.com/openstack/oslo.i18n',
66
           branch: master}
67
        - {name: oslo-log,
68
           repository: 'git://github.com/openstack/oslo.log',
69
           branch: master}
70
        - {name: oslo-messaging,
71
           repository: 'git://github.com/openstack/oslo.messaging',
72
           branch: master}
73
        - {name: oslo-middleware,
74
           repository': 'git://github.com/openstack/oslo.middleware',
75
           branch: master}
76
        - {name: oslo-rootwrap',
77
           repository: 'git://github.com/openstack/oslo.rootwrap',
78
           branch: master}
79
        - {name: oslo-serialization,
80
           repository: 'git://github.com/openstack/oslo.serialization',
81
           branch: master}
82
        - {name: oslo-utils,
83
           repository: 'git://github.com/openstack/oslo.utils',
84
           branch: master}
85
        - {name: pbr,
86
           repository: 'git://github.com/openstack-dev/pbr',
87
           branch: master}
88
        - {name: stevedore,
89
           repository: 'git://github.com/openstack/stevedore',
90
           branch: 'master'}
91
        - {name: sqlalchemy-migrate,
92
           repository: 'git://github.com/stackforge/sqlalchemy-migrate',
93
           branch: master}
94
        - {name: python-cinderclient,
95
           repository: 'git://github.com/openstack/python-cinderclient',
96
           branch: master}
97
        - {name: python-glanceclient,
98
           repository': 'git://github.com/openstack/python-glanceclient',
99
           branch: master}
100
        - {name: python-neutronlient,
101
           repository': 'git://github.com/openstack/python-neutronclient',
102
           branch: master}
103
        - {name: keystonemiddleware,
104
           repository: 'git://github.com/openstack/keystonemiddleware',
105
           branch: master}
106
        - {name: nova,
107
           repository: 'git://github.com/openstack/nova',
108
           branch: master}