223 Commits

Author SHA1 Message Date
shaofeng_cheng
0002de6909 Enabled pxe_ssh driver in ironic
XenServer drivers can be used to deploy hosts with Ironic by
using XenServer VMs to simulate bare metal nodes.

Ironic provides support via the pxe_ssh and agent_ssh drivers
for using a XenServer VM as a bare metal target and do provisioning on it.

Change-Id: Icd39f9f4573cf7c8c654591256f0228ef21d6117
2017-05-27 11:41:32 +08:00
James McCarthy
274291463e Change default permissions in jinja templates.
Many of the templates use 600, remove unnecessary permission
on these templates to bring them in line with the others.

Change-Id: I30fe1b3822b9c7bb6ab98729fc519dc1d603db27
2017-05-26 12:29:02 +01:00
Bertrand Lallau
afdd11b9a2 Generalize api_interface_address variable usage
Useful api_interface_address variable has been define here:
https://github.com/openstack/kolla-ansible/blob/master/ansible/group_vars/all.yml#L57
In order to simplify codebase we must use it as much as possible.

Change-Id: I18fec19bf69e05a22a4142a9cd1165eccd022455
2017-05-23 08:35:15 +00:00
Jeffrey Zhang
b1f015616c Add timeout parameter for precheck tasks
wait_for module waits 300 seconds for the port started or stopped.  This
is meaningless and useless in precheck. This patch change timeout to 1
seconds.

Change-Id: I9b251ec4ba17ce446655917e8ef5e152ef947298
Closes-Bug: #1688152
2017-05-04 09:02:25 +08:00
Sam Betts
9ba235f0ce Ensure that /tftpboot/pxelinux.cfg is owned by Ironic
The pxelinux.cfg directory gets created but isn't owned by the correct
user. This patch ensures that the permissions are correctly updated.

Change-Id: Ifcb80018b72d40c5d4eccf059d1c3442b71be6f8
2017-04-25 14:00:51 +01:00
Mark Goddard
07453f3460 Use ironic-inspector user for ironic inspector
This change updates the ironic_inspector container deployment tasks
to use the new kolla ironic-inspector image (see kolla change
Ibdc5ba35db61f4974d4282aff34bcb5ccd952d45). The new image uses the
ironic-inspector user rather than the ironic user to execute the
ironic inspector service as this more closely aligns with what is
typically done by downstream packagers (specifically, Ubuntu and
RDO).

This change sets the owner and group to ironic-inspector when
copying configuration files into place, and uses the log directory
/var/log/kolla/ironic-inspector.

Change-Id: I8579d5c2d741636406ff60bececc74b50743b83e
Depends-On: Ibdc5ba35db61f4974d4282aff34bcb5ccd952d45
Closes-Bug: #1624457
2017-04-17 09:00:00 +01:00
Jenkins
483f1c36fe Merge "Mount /lib/modules folder in ironic-conductor container" 2017-03-19 14:30:42 +00:00
Jeffrey Zhang
411fdb90d1 Mount /lib/modules folder in ironic-conductor container
/lib/modules is required for load kernel module. ironic-conductor
will load iscsi_tcp kernel module during starting.

Change-Id: Id953638f68e0fa1c268f173e3dd9b3390598bd93
Closes-Bug: #1672245
Depends-On: I1dd7d1a8cd67bbdfc1262b39aa96997c12681900
2017-03-13 12:21:19 +08:00
Jeffrey Zhang
d038f7f750 Access glance through vip rather than multi glance ips in ironic
* Ironic do not support multi glance ips.
* Write the nova-compute-ironic binary log to nova-compute-ironic.log
file

Change-Id: I87359c47a5845c4d7a6ab9daaefcc94a51c92eb0
Closes-Bug: #1671989
2017-03-12 15:18:21 +08:00
Jenkins
9d0daa015a Merge "Enable sanity checks from kolla-ansible" 2017-03-09 17:31:51 +00:00
Jenkins
bf12ad23a7 Merge "ironic_pxe bootstrap should run on all hosts" 2017-03-09 14:25:28 +00:00
Paul Bourke
5418ada148 Enable sanity checks from kolla-ansible
Add a new subcommand 'check' to kolla-ansible, used to run the
smoke/sanity checks.

Add stub files to all services that don't currently have checks.

Change-Id: I9f661c5fc51fd5b9b266f23f6c524884613dee48
Partially-implements: blueprint sanity-check-container
2017-03-09 10:37:06 +00:00
caoyuan
93a5a5c322 Fix the ironic tasks name
- add the missing "API"

Change-Id: I06ccf48047d1b4ea493d169f78d95c09b7945a27
2017-03-01 09:38:41 +08:00
Jenkins
f0811d96e3 Merge "Add the missing "ironic_inspector" into precheks" 2017-02-28 16:20:51 +00:00
caoyuan
a82aadd982 Add the missing "ironic_inspector" into precheks
- remove the unnecessary blank
- add "ironic_inspector" into its own prechecks and haproxy prechecks

Change-Id: Id542971057a9116eef679f1eb0827266eb18ba30
Closes-bug: #1668178
2017-02-27 07:57:30 +00:00
Jenkins
66e6f443d9 Merge "Fix typo in ironic task name" 2017-02-26 01:40:19 +00:00
Eduardo Gonzalez
fc387c9d62 Fix typo in ironic task name
Change-Id: Ica18edd8024b5e33d30a5196ef6698c85f02f9c0
2017-02-24 09:29:34 +00:00
caoyuan
8fd18abf9c Checking kernel and initramfs files for Ironic
There is not prechecks for Ironic kernel and initramfs files, this
patch add it.

Change-Id: I7e576eeff02310170d51a4585cbda6c465a29e0d
Closes-bug: #1667544
2017-02-24 10:31:35 +08:00
Jenkins
8fbc0df4c9 Merge "ironic-dnsmasq should use ironic-inspector group" 2017-02-23 10:59:30 +00:00
Jenkins
d734f162b0 Merge "ironic_dnsmasq doesn't support reconfiguration" 2017-02-23 09:26:16 +00:00
Jenkins
d9740e9c40 Merge "Remove unnecessary until in register.yml file" 2017-02-22 12:28:06 +00:00
Mark Goddard
aa8215c5ee ironic_pxe bootstrap should run on all hosts
Most bootstrap actions use the run_once flag to run on a single host
as they typically involve service-global operations such as database
syncs. The ironic_pxe container bootstrap is different, as it copies
pxelinux files into the ironic_pxe Docker volume. This should be done
on all hosts but currently is only done on one host.

This change performs the ironic_pxe bootstrap on all hosts in the
ironic-pxe group.

Change-Id: Iffd34e6ff26a0ba5140e5d477418cc8aebcdac62
Closes-Bug: #1667153
2017-02-22 11:02:18 +00:00
Mark Goddard
c37c1a5879 ironic-dnsmasq should use ironic-inspector group
The ironic_dnsmasq container is currently tied to the ironic-conductor
Ansible group. It is required only for Ironic inspector and should
really either be tied to the ironic-inspector group or have a new
ironic-dnsmasq group defined for it. This problem means that if all
hosts are removed from the ironic-inspector group I will still have an
ironic_dnsmasq container deployed.

This change uses the ironic-inspector group to determine where to place
the ironic_dnsmasq container.

Change-Id: I6af3f402795107b8b9d7a1619722f12cbf496257
Closes-Bug: #1666982
2017-02-22 10:29:30 +00:00
Mark Goddard
156b317c5f ironic_dnsmasq doesn't support reconfiguration
Currently the ironic_dnsmasq container does not support
reconfiguration. This change adds support for reconfiguration of
ironic_dnsmasq.

Change-Id: I7f121dca7d32e0b28c7531378dd0eef03ae4f1ce
Closes-Bug: #1667090
2017-02-22 10:17:35 +00:00
Serguei Bezverkhi
0cd872c9e5 Fix genconfig for ironic-dnsmasq for kolla-kubernetes
Fix genconfig for ironic-dnsmasq for kolla-kubernetes

Change-Id: Icdf6f0aabb2b587437238e52305b06f424044546
Closes-Bug: #1665343
2017-02-16 22:33:05 -05:00
Serguei Bezverkhi
35fee342f0 Changing ironic-inspector configuration for kolla-kubernetes
Changing ironic-inspector configuration for kolla-kubernetes

Change-Id: Ib1ff99d2d58ca9f910b8e68e6076359e2e7ec5a0
Closes-Bug: #1664726
2017-02-14 16:50:51 -05:00
Serguei Bezverkhi
d4af2e27d2 Fixing ironic configs for kolla-kubernetes
Fixing ironic configs for kolla-kubernetes

Change-Id: Id1b1cc3bb3c1790a77f9449ec5b0b5d1c67f91e4
Closes-Bug: #1664269
2017-02-13 10:11:53 -05:00
Jenkins
000e850933 Merge "Add the missing pull image for ironic-dnsmasq" 2017-02-07 14:43:45 +00:00
caoyuan
e58a2d85ca Add the missing pull image for ironic-dnsmasq
Change-Id: I7c5188c8b13b4dc728b201a29b6d304a7d396201
2017-02-06 22:35:37 +08:00
Jeffrey Zhang
38ad05a872 Remove unnecessary until in register.yml file
Change-Id: I1577cc3afef4dadd3a188c8ba749c9cdfad313ae
2017-02-04 14:38:54 +08:00
jangpro2
de3ea9c78b This feature is supporting for collecting log from IPA.
Ironic supports collecting log from IPA for debugging,
But it's not defined in kolla.

This is default settings about collecting log from IPA.

Closes-Bug: #1661468

Change-Id: Iccb47a70b12effb5a704435f334faee29538f9d2
Signed-off-by: jangpro2 <jangseon.ryu@gmail.com>
2017-02-03 08:21:54 +00:00
jangpro2
d4c8e2d01f This feature is supporting for workers config in ironic-api.
Currently it's not working in ironic-api, in spite of
setting openstack_service_workers config in globals.yml.

Because it's not implement about workers in ironic.

Closes-Bug: #1661173

Change-Id: I89de95fe03813ae44bcdbf9aac22b7337ffe4968
Signed-off-by: jangpro2 <jangseon.ryu@gmail.com>
2017-02-02 08:06:28 +00:00
Jeffrey Zhang
8155d74d8d Refactor register.yml files
Co-Authored-By: Mauricio Lima <mauriciolimab@gmail.com>
Change-Id: I9a4a6b6523dee4b388513386b7d85d421f2b7b89
2017-01-26 17:10:27 +00:00
Mauricio Lima
57365f16e3 Fix ironic inspector
Co-Authored-By: Jeffrey Zhang <zhang.lei.fly@gmail.com>
Depends-On: Id03619b4e26a0a77c2a39e2de21efd13be0e9200
Change-Id: I723345c1b23cb92ad94cefd965f07b94095ebb41
Closes-Bug: #1650345
2017-01-20 07:01:52 +00:00
Jenkins
3f8cb8adda Merge "Refactor bootstrap.yml file" 2017-01-18 10:17:50 +00:00
Jeffrey Zhang
7233b45d29 Refactor bootstrap.yml file
Change-Id: I00d2dcb0895548ba169ab85764cf546c2214cbf5
2017-01-12 23:37:50 +08:00
caoyuan
efb0561930 Move ironic precheck into its own role
Change-Id: Iba8a87757ac9ead27c90c9d426977077d442a04e
Partially-implements: blueprint condition-pre-check
2017-01-04 09:50:18 +08:00
Eduardo Gonzalez
775d8019b6 Add custom policies in service.json
Include custom policy.json files in service-api.json.j2 files

Change-Id: Ic55bfc6f61131aa72c3497ce8b2282056bcc7f92
Partially-Implements: blueprint custom-policies
2016-12-02 16:22:17 +00:00
Duong Ha-Quang
b5d1e4b457 Fix placement of policy.json
Currently, policy.json is put in
"{{ node_config_directory }}/{{ service_name }}"
in target nodes.

Relocation policy.json to "{{ node_config_directory }}/{{ item }}"
with item is corresponding service compoment config directory.

Currently, the policy.json is copied to all services, but it
should be reviewed and left only in neccesary service
(at many cases, only API service needs that).

Redundant files will be removed in follow up patchset.

Change-Id: I0e997dccf4ec438c9c0436db71ec2fd06650f50d
Closes-Bug: #1639686
2016-11-29 16:00:09 +07:00
Jenkins
dbc881456b Merge "Custom policy files" 2016-11-04 13:42:55 +00:00
Jeffrey Zhang
fa45801946 Move precheck into its own role
* Merge prechecks.yml and site.yml playbook
* Create empty precheck.yml into all roles.

Change-Id: I8a138558a26c0a2a66c5fd48ed37be657c99c1dd
Implements: blueprint condition-pre-check
2016-11-03 14:48:58 +08:00
Eduardo Gonzalez
ef1fd6b8c0 Custom policy files
Allow operators to use their custom policy files.
Avoid maintain policy files in kolla repos, only copying
the files when an operator add their custom config.

Implements: blueprint custom-policies
Change-Id: Icf3c961b87cbc7a1f1dd2ffbfffcf271d151d862
2016-10-28 10:47:05 +01:00
Jeffrey Zhang
b11504d4e1 Fix invalid json in ironic service
Change-Id: Idbf10404606dd17be334056c95b6e5f9ae800495
Partial-Bug: #1631503
2016-10-20 13:11:50 +08:00
Jenkins
0e22ec5d2b Merge "Fix ironic upgrade permission issue" 2016-10-18 07:00:06 +00:00
Jeffrey Zhang
1a57ab0343 Fix ironic upgrade permission issue
Change-Id: I8af7c842e9b0afdc035bb64d3350f6ad65682377
Partial-Bug: #1631503
2016-10-17 14:28:06 +08:00
Jeffrey Zhang
ce5a11a374 Fix stale namespace removal issue
When using both /run and /run/netns in docker container, mount
propagation won't work when delete namespace after the containers are
restarted. This PS makes /run mount as shared.

Closes-Bug: #1616268
Change-Id: Ie16699e1b193b2bf1263d89ea634e89ea69add9e
2016-10-15 01:49:13 +08:00
Jenkins
45b0f2cf63 Merge "Remove do_reconfigure.yml file for all roles" 2016-10-13 16:20:30 +00:00
Jeffrey Zhang
903b0ff211 Fix ironic failed
* Mount system folder in ironic-conductor
* Add package need in ironic-conductor
* Fix the log path issue
* Add ironic sudoer in ironic-base
* Fix credential issue
* Do not start nova-compute when enable ironic

Closes-Bug: #1629334
Change-Id: If9d478c6513de37465403d458a88cf0da7ebd8a6
2016-10-03 07:53:21 +00:00
Jeffrey Zhang
fa856556d5 Remove do_reconfigure.yml file for all roles
do_reconfigure.yml is introduced to use serial directive. But we use
it in wrong. Now serial has moved to playbook file. So it is time to
remove the do_reconfigure.yml file

Closes-Bug: #1628152
Change-Id: I8d42d27e6bc302a0e575b0353956eaef9b2ca9fd
2016-09-27 15:04:00 +00:00
Waldemar Znoinski
326327acba fix ironic-inspector setup
* add ironic-inspector(-archive) source to docker image
* pip install from above source code
* move in-container config files to /etc/ironic-inspector
* add sudoers file to allow ironic-rootwrap
* copy rootwrap conf and filters from source repo

Change-Id: Ie3cce19810b9940d06bb636b28015160fea6ddfb
Closes-bug: #1624457
Closes-bug: #1624833
Closes-bug: #1624845
2016-09-25 22:15:04 +00:00