This change adds support of the all versions of the nmcli command.
Change-Id: Icc5f93d052c451116b23c2922fe18e23e3f72746
Closes-Bug: #1617453
Signed-off-by: Maksim Malchuk <mmalchuk@mirantis.com>
This commit adds an ability to use ssh public key authentication for
the Fuel master node by uploading your ssh public key to it. The path
to the public key file can be provided in the 'config.sh' file.
Closes-Bug: #1579123
Change-Id: I93560126940457518fc4385c0518ab00c0cac01a
This commit adds the new parameter to the wait_for_exec_in_bootstrap
function for always return success when this parameter non-empty.
This functionality will be used in the last step of the installation
when we need to wait when Fuel master node installation ends.
Change-Id: I399000821a4a9aeed4d359da8d0e723ea1642c88
Closes-Bug: #1569537
Signed-off-by: Maksim Malchuk <mmalchuk@mirantis.com>
Using the user-defined ssh_config configurations bring more problems
instead of enchancements.
Change-Id: Icfd720e8d691b72a52e78e531eaf5aea9cdfb12a
Closes-Bug: #1569032
Signed-off-by: Maksim Malchuk <mmalchuk@mirantis.com>
Since we assign public gateway address on master node, all public
traffic goes through it. Unfortunately, it doesn't reach destination due
to rejecting rule in FORWARD chain:
ACCEPT all -- 10.20.0.0/24 anywhere
ACCEPT all -- anywhere anywhere
REJECT all -- anywhere anywhere
ext-filter-forward all -- anywhere anywhere
The commit fixes that problem by inserting (-I), not appending (-A)
ext-filter-forward entry. In that case that rule will have higher
priority and won't break routing.
ACCEPT all -- 10.20.0.0/24 anywhere
ACCEPT all -- anywhere anywhere
ext-filter-forward all -- anywhere anywhere
REJECT all -- anywhere anywhere
Change-Id: I7887f08a175fa0ce06654dc1fc18ab412cb296f5
Closes-Bug: #1566968
Firewall rules should be managed by Puppet, which will purge current
firewall ruleset and replace it by the one provided by a corresponding
manifest.
We need to move rules introduced by product.sh to separate user-defined
chains which are not purged by Puppet so they will be retained after the
manifest gets applied.
Change-Id: I57e9f58c6bad32b23b179499f0514edf5357bd31
Partial-Bug: #1524750
Fuel don't support IPv6 yet, so we shouldn't use IPv6 DNS servers
from the local /etc/resolv.conf.
Change-Id: Ia6ec6bf0bf3c100c591f82cd9b8785a00e93f016
Closes-Bug: #1553568
This commit adds check for the file 'dumpkeys.cache' because it
should be exist in the main directory and in some cases it can't
be recreated. Also, this commit contains some enchancements for
all other checks and for the functions/*.sh modules.
Change-Id: Iaa55921709e0575e924af042f4322b759847d097
Closes-Bug: #1547019
This commit include changes:
* using the VirtualBox scripts the Fuel master node now always
booted with kernel option 'wait_for_external_config=yes' to
provide the same deployment functionality as in the 'fuel-qa'.
* settings for the kernel command line moved to the top config
file, because the settings wich could be edited should be placed
there.
* because of configuration task moved to the correct place there
is no need to parse 'bootstrap_admin_node.log' and always follow
the changes in the 'fuel-library', so all parsing logic removed
from the scripts. This also simplifies networking changes and
there is no need to patch the files on the fly and restart
docker containers if they used.
* variable 'vm_master_nat_gateway' removed from the 'config.sh'
and from the 'enable_outbound_network_for_product_vm' because
gateway should be set from the DHCP lease.
* the sysconfig configuration files on the fuel master node now
configured the right way. the backup files for configuration
files are created. also added some comments for changes in the
scripts.
* now the default routing on the fuel master node correctly
configured without creating the second default route. also
ZeroConf route creation and NetworkManager now switched off
to correct work of the network service.
* the 'resolv.conf', 'dnsmasq.upstream' and 'astute.yaml' now
correctly modified and could contain up to three DNS nameservers.
* added support for the new dockerless 9.0 Fuel.
Implements blueprint: get-rid-docker-containers
Change-Id: I8f32fb8105d0781938757fa13d5dcbbacbf9c845
Closes-Bug: #1544241
Partial-Bug: #1323365
This commit increase timeouts for 'expect' to wait for the
command prompt after the Cobbler container restart which
in some cases takes too long time.
Change-Id: Ic9861cc08f6411f8b126a02432422ad07f49d22a
Closes-Bug: #1542320
This commit fixes parsing of $goodline and $badline strings
in the 'bootstrap_admin_node.log' which causes incorrect
behaviour of VirtualBox scripts under Windows 10.
Change-Id: Ib90582adf4d5b3aa03ade081d788e5177add4b93
Closes-Bug: #1538143
Master node needs an outbound internet connection to download repository
metadata during admin node bootstrap process. We need to wait until it
starts building docker containers, then enable the connection and wait
until the bootstrap process completes.
This change depends on another patch, which makes 'dockerctl build all'
much more verbose (https://review.openstack.org/#/c/261062/36).
Change-Id: Ibcc50bb47bd95dc1675aaf1abddbac375a434e2a
Depends-On: I77a1d3a32633390c1fe37bbeb81da5d0996972df
Closes-Bug: 1525967
Master node needs an outbound internet connection to download repository
metadata during admin node bootstrap process. We need to wait until it
starts building docker containers, then enable the connection and wait
until the bootstrap process completes.
Partial-Bug: 1525967
Change-Id: I0ca296cb5f727d2b6a5708355956c30e4ccf283b
CentOS7 comes with pre-defined REJECT rule in FORWARD chain
that doesn't allow to access external networks from public
network.
When deploying ISO with virtualbox scripts slave nodes are trying
to connect to external networks via public net, with default
gateway on master node. However, they can't establish a connection
because there is no explicit rule in FORWARD chain to allow it,
so they are rejected.
This commit adds rules to allow connection to ext networks in
that usecase.
Compatible with CentOS6 & CentOS7 master node.
Blueprint: master-on-centos7
Change-Id: I5b61ae6e7562ea5b446809027c487acc11119889
In centos 7 grep aliased to
grep --color=auto
which causes line matching error in product.sh
Blueprint: master-on-centos7
Breaks: nothing
Closes-Bug: #1517140
Change-Id: If7b351834535a5dbe900ec5387d48fcb81885458
Use virtualbox built-in keyboardputscancode instead of using
ssh to master node and kill fuelmenu.
Change-Id: Ie3a12b7ca54e4c606f4c88145cc3cbad5822480a
Closes-bug: #1501796
It is useful in case if there is 2 machines:
the main that has limited resources and used only for development and
the second, that has enough resources to use it for deployment.
enable feature VRDP for virtual machine
Change-Id: Ib34a188311cc04250d29e685bf5b9f12ac2aeb05
Closes-Bug: #1491925
When we execute the installation of the Fuel master node we are
launching ssh commands and checking messages in the file
bootstrap_admin_node.log. If the ssh processes accumulate in the
operating system you could see the following error: “The system
has no more ptys”.
Also Cygwin does not work correctly with the command
"send "res=$(for i in 1 2 3 4...)"
Change-Id: I30aab51452505e88c18abc866f88efde2d7650fb
Closes-Bug: #1457956
The scripts work without any firewall tuning on the user's computers.
The Fuel master node is forwarding the public network through
the existing NAT interface.
Change-Id: I2962bccb39828da4ff011889f990a67d89322ca3
Closes-Bug: #1288135
We restart all the NICs of master node after we ensure Cobbler is
ready. Restarting NIC breaks network connection between Cobbler
and outgoing physical network. Added another restart of the docker
container after network restart.
Change-Id: I0bbba2fbad801e109f52ee5fbcf203b8ba7d1dd8
Closes-Bug: #1427227
Fixed checking for Internet connectivity on the host computer,
fixed bug call ping utility with different arguments and under
different systems. Added check run docker container cobbler
on the master node.
Change-Id: If8a8862faca083f038d184e11c5a0d057eb91b56
Closes-Bug: #1412459
Puppet apply for Fuel Master deployment runs with
--detailed-exitcodes in order to capture any failures
and fails if any resource fails to apply, including
docker containers.
Cleaned up some obsolete lines about hiera and astute.yaml.
Fixed automated environment deployment scripts to detect
failed deployments and fail as well.
Change-Id: I29238a27f1335d63a6c82274a6dab9b25e1ecf0a
Related-Bug: #1390129
Creating docker container images during iso build, put them on the
ISO, deploy fuel node with containers.
New variables added to config.mk:
PRODUCTION
DOCKER_PREBUILT
DOCKER_PREBUILT_SOURCE
They determine if we should build containers during "make iso" or
just download/copy them from some prebuilt source. Please see
config.mk for more details.
Variable PRODUCTION determines the way we build ISO:
- "docker": build iso with docker containers
- "prod" and "dev": build iso without containers
Modifies workflow to tell automated scripts when
deployment is complete from completion of puppet
run to "Fuel node deployment complete!"
Depends on: https://review.openstack.org/#/c/90087/
blueprint fuel-containerization-of-services
Change-Id: Iae6b77909e78f3f617623a7a3022ce53895dab9a