In Fuel 7.0 we dropped classic provisioning mode,
fully switching to IBP. Remove pre-provision task
of downloading of debian-installer parts and related
script.
Related-Bug: #1549346
Depends-On: I36ff56c1e4a0437b33fc8e31da3df6f311607307
Change-Id: I1001225edd737a29edc263fee48715ba52f53af7
* add 'pxe' property to the nic db model
* collect 'pxe' property during the
bootstrap stage
* forbid to assign admin net to non pxe interfaces
* allow to assign admin net only to bond interface
what containing pxe interface
Change-Id: I70dcaed66607728b76ae3d93c59048c310ddb22c
Implements: blueprint admin-network-on-bond
Gather available offloading modes for physical interfaces
during the bootstrap stage. In this commit 'ethtool' util
output parsing approach has been used. Nailgun agent
collects modes and sent it to the nailgun API. These modes
will be parsed via nailgun and will be put into
offloading_modes JSON field of the interface db model.
Change-Id: I172b61d3fccc00e5951616646fa82e33b8322997
Implements: blueprint selectable-offloading-type
Gather available offloading modes for physical interfaces
during the bootstrap stage. In this commit 'ethtool' util
output parsing approach has been used. Nailgun agent
collects modes and sent it to the nailgun API. These modes
will be parsed via nailgun and will be put into
offloading_modes JSON field of the interface db model.
Change-Id: Ic58abf4e4da30e6fd7320dd385c9ddee74057ee1
Implements: blueprint selectable-offloading-type
Currently if debian netboot installer is already downloaded we skip
downloading and start provisioning. It's an error-prone approach
because the installer may stuck if its kernel version mismatch
archive's kernel version. This patch starts to download debian
installer each time we start provisioning.
Closes-Bug: #1461206
Change-Id: Ia6b8653461e604ae05f306406e8a3515a593fc53
Signed-off-by: Igor Kalnitsky <igor@kalnitsky.org>
mcollectived can be launched via upstart job or systemd unit.
Fortunately the service command hides those gory details.
Change-Id: Iad4c8bc5d89176513b4d3bcc37a4161a9d900caf
Related-Bug: #1454741
This patch prevents nailgun-agent from doing anything
until cloud-init has finished its magic.
/etc/nailgun-agent/nodiscover file is created during provisioning stage
and then it is removed in /etc/rc.local which guarantees
that nailgun-agent doesn't change mcollective config at the
same time when cloud-init does this. Otherwise, we can
end up with corrupted mcollective config.
Related-Patch: I5fca4ca39abdc273f6958f2643fae6c5c99fba68
Change-Id: If8d1252e6d351ad073de26afc13a19de76f531fb
Closes-Bug: #1449186
Instead of freeze we got all data without disks now.
Current timeout - 30 sec.
Co-Authored-By: Mike Scherbakov (mihgen) <mscherbakov@mirantis.com>
Change-Id: I65d1b570cd01e12b521403c6d6e990043eb2c2ab
Closes-Bug: #1396086
Node should not wait after checking '/var/run/nodiscover' file
when reboot is started, it should give Astute time to react
(and to create this file) and only then check it and reboot.
Change-Id: I2c6464262e100244bc525f8e8b456eb26d35e3a1
Related-Bug: #1371225
In case we have any interface down (like generic bond0 interface),
we fail with 'undefined method each for nil:NilClass' error in the
middle of _master_ip_and_mac method. And it can happen before we
find needed info thus failing to update Nailgun.
So we just need to skip interfaces that do not have 'addresses'
key.
Change-Id: Ieb1de216931fa9334f07bd21f1a4096bf429afb0
Closes-bug: #1429807
We are going to download debian-installer initrd and kernel
from one of user defined ubuntu repos. We implemented this
as a pre-provision task which is supposed to run a shell
script.
This patch introduces this script for downloading
debian-installer initrd image.
Change-Id: I9e7ac50d19ea8b984e1ad2831c73f2cb88ddbd54
Implements: blueprint consume-external-ubuntu
Adding driver and bus info interface parameters support with
these changes:
1. Adding driver and bus_info parameters into nailgun DB
and nailgun agent.
2. Adding driver and bus_info parameters into UI dialogs
and publishing it to astute yaml.
3. Publishing user physical interfaces and vlan mappings
to astute yaml.
Partially implements: blueprint support-infiniband-network
Change-Id: I4e91447a99a7ada35a2af4507725e2705aaa69d6
* String.inject does not exist any more (String is not Enumerable any
more, and it doesn't get automatically splitted).
* Ohai::System.fetch is gone
blueprint support-ubuntu-trusty
Change-Id: I0271ac5a3c991b093ddce2050cd195d047c1be39
Signed-off-by: Sergii Golovatiuk <sgolovatiuk@mirantis.com>
Biggest part of agent logs is information about disks discovery
which is DEBUG level
Any changes with disks will be available in nailgun api log
Change-Id: Idecbb1a4b045ea126acd04b6164b93e9c1fb1d0f
Closes-Bug: 1393115
Modified agent to checking if node was before registered, based on existence
of nailgun_uid file. If file exist, only put is call, in other case when we
try made post (if call was succes-201 or node exist 409, we call put method)
Change-Id: I98680be7355e77512addb97f301c713cbf13c23c
Closes-Bug: #1305017
The usage of /usr/bin/env ensures that the first interpreter
found in the environment's $PATH variable is used. This should
be preferred.
Change-Id: I692afbf4ac4ea0c546e4d7480dcf1a7ac158af85
Modified agent to checking if node was before registered, based on existence
of nailgun_uid file. If file exist, only put is call, in other case when we
try made post (if call was succes-201 or node exist 409, we call put method)
Change-Id: Id1ef1650cf47c8e5fd7e844362b3fb41afad8fdd
Closes-Bug: #1305017
Remove interfaces like eth0.101-hapr,
eth1-hapr which are created in ha mode.
Change-Id: I0085f06dab2f90af7d876a2c335e180f8d983eef
Closes-bug: #1322208
Boostrap nodes don't sends syslog message to master. We use a special
script (send2syslog.py) for this purpose. Unfortunely, it knows nothing
about netprobe, so the log wasn't sent.
Since now, the problem is fixed.
Depends on: https://review.openstack.org/#/c/90338/
Closes-Bug: #1291663
Change-Id: If8e350f981fb01e117163e460dd5f8e4774e2dc5
The regular expression used in ohai to determine interface type
doesn't work with interfaces containing more than one digit (e.g.
eth10). Consequently the "type" is returned as eth1 instead of eth
for all interfaces above eth9 and the agent skips them.
Ohai bug here: https://tickets.opscode.com/browse/OHAI-571
Change-Id: Ib302542255ec25bee43e4f012d66658219ec1710
Closes-bug: #1308036
Some Adaptec controllers shipped with IBM hardware have
VendorID changed to IBM.
Change-Id: Id23e1bdfa45ac4533aa101dff1e44ad5d0e5f5d7
Closes-Bug: #1294222
- added dedicated handler for node agents update only requests
- caching data from agents to avoid db update with same data
- nailgun responses with appropriate http statuses
- changed agent update logic. Now it tries to update first and respects
nailgun response statuses
Change-Id: I2658cf7561cd8c9116acced2443d072d471f3bdb
Implements: blueprint nailgun-agent-handler
Closes-Bug: #1274614
The problem was that we try to find by-path and by-id
links comparing them with cciss!c0d0 instead of cciss/c0d0.
Change-Id: I2ba76ff615cd94dfef8a275779a1fb917ec70150
Closes-Bug: #1291692
When we call method IPAddr.new("some non api string")
it stuck on several seconds in VMware, with several
interfaces we have several minutes additional timeout.
Change-Id: I25e784eef2e471922cb5128c0cbf94eff8ba3726
Closes-bug: #1284571
This is workaround for the case when Adaptec RAID
controller is mappet into sysfs as removable device.
Change-Id: I3a8f08040b0eaa972ab5f4c1bfc6342c29480822
Closes-bug: #1282068
Extra parameters, which actually are the id names
of hard drives, allow to find them under ubuntu
kernel.
Closes-bug: #1277151
Change-Id: I01c0a3cd47ebf0ec8f8a723321ca8452c623994e
It is to address the issue which appears when centos
udev names smart array devices like this
/dev/disk/by-path/pci-0000:06:00.0-cciss-disk0
and debian-installer udev names them like this
/dev/disk/by-path/pci-0000:06:00.0 and can not
find device.
Change-Id: I052ae1839b49f4abbd12f44582d53923e0836411
For physical HW that would be unique chassis id (from BIOS settings).
For kvm guests that would be virsh domain uuid. Used with fence_virsh agent.
For other hypervizors - not tested.
Implements: blueprint facter-uuid
Change-Id: Idd92a3e0dc41040c76243f92fa84e14b9da03b6d
Signed-off-by: Bogdan Dobrelya <bogdando@mail.ru>
Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
Based on nailgun agent, should be installed the same way
To run unit tests use:
rspec ./bin/fencing-agent_spec.rb --color --format documentation
Requirements for tests:
ruby 1.9.3p429 / 1.8.7p371
rspec 2.14.7
---------------------
httpclient (2.3.4.1)
json (1.8.1)
logger (1.2.8)
ohai (6.20.0)
rethtool (0.0.3)
Depends on: https://review.openstack.org/66607
Implements blueprint: fencing-in-nailgun-agent
Change-Id: Iceee47c47d35969f4ff08a0eb5b1e74b12b8b92f
Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
Fix typo in agent mac fallback when no interface is inside the network
that also contains the api address
Resolves-bug: #1270963
Change-Id: I7744c9fae3db2df63c8e73b0e557a7ff992efe0e