8601 Commits

Author SHA1 Message Date
Martin André
e2f7392c4a Use Timesync service instead of Ntp
At the moment the 'OS::TripleO::Services::Timesync' service is
synonymous to 'OS::TripleO::Services::Ntp'. Let's use the more generic
Timesync service to pick up the new default in the event the value for
'OS::TripleO::Services::Timesync' changes.

This better aligns with the rest of the roles.

Change-Id: I44f706ce7dd1909ffd3805337fc6d9a5ce6de80f
2018-10-12 16:36:20 +02:00
Martin André
a9f3874217 Add OS::TripleO::Services::Rhsm to OpenShift roles
The OpenShift roles should include the OS::TripleO::Services::Rhsm
service for Red Hat Subscription Management so that the provisioned
nodes can register with a Satellite or CDN.

Add the Podman service to OpenShifAllInOne to be more consistent with
other roles.

Change-Id: I08862635c68eddbb0940863c43867ece1b289ee5
2018-10-12 16:36:20 +02:00
Martin André
633379f779 Ensure the needed openshift resources are set
We expect the the Keepalived and HAproxy services to be deployed on the
OpenShift master nodes, let's require them in the openshift heat
environment file. This prevents an issue when the docker-ha environment
is loaded because it would redefine these resources.

Change-Id: I57a7ea854bd8db4e20af1a608a6937604c0e3bd2
2018-10-12 16:34:20 +02:00
Steven Hardy
52c1641e2c Convert *tasks from bootstrap_nodeid to short_bootstrap_node_name
The current approach has several disadvantages:
- Requires shelling out to the hiera CLI, and is coupled to the puppet hieradata
- The bootstrap_nodeid is only unique per Role, not per service, so if you
  deploy a service spanning more than one role it will evaluate true for
  every role, not only once.

Instead lets use the per-service short_bootstrap_node_name, which is
available directly via the ansible inventory now ref
https://review.openstack.org/#/c/605046/

This is the first part of a cleanup for inconsistent handling of
bootstrap node evaluation, triggered by bug #1792613

Change-Id: Iefe4a37e8ced6f4e9018ae0da00e2349390d4927
Partial-Bug: #1792613
Depends-On: Idcee177b21e85cff9e0bf10f4c43c71eff9364ec
2018-10-12 11:12:25 +01:00
Steven Hardy
b278f6c476 Remove unused tls-cert-inject.yaml template
This is no longer handled as the TLS handling tasks were converted
to ansible, and in the context of this series we need to remove it
because it references bootstrap_nodeid

Partial-Bug: #1792613
Change-Id: Ib32177b116f148f007574847320566e32240cf96
2018-10-12 11:12:25 +01:00
Juan Antonio Osorio Robles
3ecbf827ec Rename no-tls environment
It was using a wrong name, which came by accident since it was
introduced to the sample environment generator.

Change-Id: I154af6d0b7ebf5cd339d5d06eaaf9b1ab66814b0
Related-Bug: #1796022
2018-10-12 11:16:35 +03:00
Zuul
52960f30dc Merge "Honor --skip-deploy-identifier in common deploy tasks" 2018-10-12 01:00:28 +00:00
Alan Bishop
3f5ed998eb Improve support for deploying ceph on standalone system
The standalone deployer adds "ansible_connection: local" to facilitate
all-in-one deployments. This patch passes on this setting when generating
the inventory used by ceph-ansible.

Change-Id: I694c4b3c7fb98e11d7a52eed4072a37471c0e405
2018-10-11 17:13:04 -04:00
Sofer Athlan-Guyot
c8c45bec6a import_role takes name as a parameter, not role.
According to ansible documentation[1] the import_role task uses 'name'
as a parameter for import_role, not 'role'.

[1] https://docs.ansible.com/ansible/2.4/import_role_module.html

Change-Id: Ibda367ed44eb9ddca04c266f5c40134f10dfe945
Closes-Bug: #1797412
2018-10-11 17:57:31 +02:00
Zuul
0fd44e4713 Merge "Add SELinux configurations for a proper Standalone deploy" 2018-10-11 15:55:01 +00:00
Zuul
77e4ee3a8e Merge "Add posibilities to set tunnel_csum in ovs agent" 2018-10-11 15:54:59 +00:00
Zuul
bef800dc05 Merge "Remove deprecated Ram/Disk filters in NovaSchedulerDefaultFilters" 2018-10-11 15:54:56 +00:00
Zuul
20a5085ccb Merge "Do not reference ansible_hostname if it is undefined" 2018-10-11 15:54:53 +00:00
Ben Nemec
0244ae08cd Add sample designate environment for ha
The pool configuration for an ha deployment of designate looks quite
a bit different from the nonha one, so it's useful to provide a
separate example environment for it.

Change-Id: I69b3c44b368bab3fff885e67fa6523fbb1c80347
2018-10-11 15:15:11 +00:00
Juan Antonio Osorio Robles
d6a5c04b72 Update no-tls environment in ssl/ directory
It was out of date (including extra entries)

Change-Id: Ib1258b8b9d8141cf534ab674c494c82f64f9ad9b
2018-10-11 15:30:18 +03:00
Alan Bishop
2040d4f284 Recreate cinder LVM loopback device on startup
Add a systemd service that creates the loopback device required by
cinder's iSCSI backend on system startup.

This patch also consolidates the host_prep_tasks for the HA and non-HA
versions of the cinder-volume service. The list of tasks is identical,
and rather than repeating it in each template, the tasks are defined
once in cinder-common.yaml.

Closes-Bug: #1581092
Change-Id: Icc04003a9e90b66720d968c6c8f1c687156b677e
2018-10-11 12:18:27 +00:00
Martin André
429bc3ca70 Use different base virtual_router_id on openshift
With the default setting, the keepalived that we deploy on the master
node collides with the one that is setup on the undercloud. We simply
need to use a different virtual_router_id_base to prevent
virtual_router_id collision.

Change-Id: I92ef081a111f93ddce4ec42400bcb648b7f7def0
2018-10-11 11:53:20 +02:00
Martin André
73c3cd4181 Fix update tasks for openshift
While introducing the openshift-node service in 7373adc72e, some code
was moved around and that broke the OpenShift external_deploy_task
playbook in the case of a stack update due to undefined ansible
variable.

Rename the new_masters var into new_master_nodes and introduce the
has_new_nodes boolean var that indicates there is at least one new node
in the deployment.

Related-Bug: 1794824

Change-Id: I2f386b5507836deda0816616dd7add8a0b53dfd3
2018-10-11 11:53:20 +02:00
Flavio Percoco
a4b31b28e9 Use openshift-ansible container instead of RPMs
This allows us to deploy openshift without the need to install
openshift-ansible in the mistral container image or in the undercloud.

Co-Authored-By: Martin André <m.andre@redhat.com>
Depends-On: Ied75bfbeed71aca83962e60bfc801a2527f5dfba
Change-Id: I1e28e63c8a3a30dfe1e95924f9b4086fcf9513fb
2018-10-11 11:53:20 +02:00
Martin André
39df80b332 Use glusterfs for registry when deploying with CNS
The OCP documentation [1] recommends to use a dedicated GlusterFS
cluster for the image registry. Let it be the default when deploying
with CNS.

[1] https://docs.openshift.com/container-platform/3.10/install_config/persistent_storage/persistent_storage_glusterfs.html#install-advanced-installer

Change-Id: Ife73d7c50c304cff7cd05e08f74855cb107f3c46
2018-10-11 11:53:20 +02:00
Martin André
81ca843ee7 Deploy openshift all in one in scenario009
Previously we were only deploying a master node. This commit adds the
worker and infra service to the deployed node and configures it as an
all-in-one node. In order to do so, we need to disable HAproxy when
deploying in all-in-one as the HAproxy instance Openshift deploys on
the infra node conflicts with the one we normally set up. They both
bind ports 80 and 443.

Also removes the useless ComputeServices parameter that only makes
sense in a multinode environment.

Change-Id: I6c7d1b3f2fa5c7b1d9cf695c9e021a4192e5d23a
Depends-On: Ibc98e699d34dc6ab9ff6dce0d41f275b6403d983
Depends-On: I0aa878db62e28340d019cd92769f477189886571
2018-10-11 11:53:20 +02:00
Jiri Stransky
7a438651af Remove obsolete code for handling Pacemakerized resource restarts
Remove scripts and templates which dealt with Pacemaker and its
resource restarts before we moved to containerized deployments. These
should all now be unused.

Many environments had this mapping:

    OS::TripleO::Tasks::ControllerPreConfig: OS::Heat::None
    OS::TripleO::Tasks::ControllerPostConfig: OS::Heat::None
    OS::TripleO::Tasks::ControllerPostPuppetRestart: ../../extraconfig/tasks/post_puppet_pacemaker_restart.yaml

The ControllerPostPuppetRestart is only ever referenced from
ControllerPostConfig, so if ControllerPostConfig is OS::Heat::None, it
doesn't matter what ControllerPostPuppetRestart is mapped to.

Change-Id: Ibca72affb3d55cf62e5dfb52fe56b3b1c8b12ee0
Closes-Bug: #1794720
2018-10-11 10:41:15 +02:00
Zuul
e3a17cb067 Merge "Add heat param for openshift prerequisites playbook" 2018-10-11 07:53:21 +00:00
Zuul
344e65815e Merge "Remove 3node from CI" 2018-10-10 17:11:03 +00:00
Zuul
cab8cd5556 Merge "Tag container image prepare tasks to allow running them for updates/upgrades" 2018-10-10 16:30:37 +00:00
Zuul
1f1c0f3dec Merge "Fix list concatenation of routes in bond-with-vlan" 2018-10-10 16:30:35 +00:00
Martin Schuppert
f290a92533 Use nova_api DB for [placement_database] -> connection
With OOO we configure a separate DB for placement for the undercloud and
overcloud since the beginning.
But the placement_database config options were reverted with
https://review.openstack.org/#/c/442762/1 , which means so far even if
the config option was set, it was not used. With rocky the options were
introduced again which is not a problem on a fresh installed env, but on
upgrades from queens to rocky.
We should use the same DB for both fresh deployments on and upgrades to
rocky before we switch to the new DB as part of the extraction of placement.

Closes-Bug: #1797119

Change-Id: I6eb8cb62d337fa4f6e6542391de251519e246923
2018-10-10 16:00:29 +02:00
John Fulton
d556fd68d8 Do not reference ansible_hostname if it is undefined
Change-Id: I59c3de74c41b97ed1803d82c69db52199f27393e
Closes-Bug: #1797117
2018-10-10 15:18:32 +02:00
Cédric Jeanneret
245da47a9d Add SELinux configurations for a proper Standalone deploy
With this patch, we're able to deploy a "standalone" stack using
podman on a fully-enabled SELinux system.

Change-Id: I4bfa2e1d3fe6c968c4d4a2ee1c2d4fb00a1667a1
2018-10-10 11:57:21 +00:00
Alex Schultz
88b7347fd6 Add nova-scheduler worker support
Rocky added nova-scheduler worker support so we need to be able to
configure (and tune it) as necessary.

Change-Id: Idd702e01b67a2f25eb621d1251e8457ea376f51b
Closes-Bug: #1796933
2018-10-09 11:00:51 -06:00
Brent Eagles
5c8617beb8 Set octavia log directory permissions to octavia user
The octavia services need to set the owner of their log directories and
files to the octavia user.

Closes-Bug: #1796934

Change-Id: I6d7ac0630cc586794469ab5c572933825de0dc20
2018-10-09 14:26:15 -02:30
James Slagle
a7955832df Honor --skip-deploy-identifier in common deploy tasks
To match the previous functionality when not using config-download, the
common deploy step tasks should be skipped for already deployed nodes
when using --skip-deploy-identifier.

This patch adds a task to check if one of the json configuration files
created by the common tasks already exists. If it does, and
--skip-deploy-identifier has caused an empty DeployIdentifier parameter
value, the tasks will be skipped for that node.

Change-Id: I711dbb00a9c34dbd96ef179ef41bff281b0001d1
Closes-Bug: #1796924
2018-10-09 11:55:13 -04:00
Marios Andreou
0ec9a3db94 Remove deprecated Ram/Disk filters in NovaSchedulerDefaultFilters
As reported in the related bug below and merged for the undercloud
with https://review.openstack.org/#/c/598167 the Ram/Disk filters
are deprecated since [1] so we should stop using them.

[1] https://review.openstack.org/#/c/596502/
Related-Bug: 1787910
Change-Id: Ib3585b4c04c974c34d61b868d0454df03c1a2aed
2018-10-09 12:09:03 +00:00
hanish gogada
a800ee0c11 Implements: liquidio-containerization
Modified heat templates to add support for containerization for
Liquidio compute service. Fixed a issue in the ProviderMappings
in Liquidio heat templates.

Depends-On: Ice2baafae2fb1011e16d83c83b5c85f721f6d679
Change-Id: Id4c754f402091e17a974972408919332aa06cd11
2018-10-09 12:10:02 +05:30
sunnyve
973395d4a6 Exposing NeutronDhcpOvsIntegrationBridge
Using this, users can assign already available parameter
ovs_integration_bridge in dhcp_agent.ini

Change-Id: I45cc0032ebaaab7022e8a692ecd63045fe08eea2
2018-10-08 16:58:02 -04:00
Zuul
ec227891bd Merge "scenario010: enable Ceph RBD" 2018-10-08 20:18:08 +00:00
Zuul
535fce237c Merge "Use valid_interfaces instead of os_interface for placement" 2018-10-08 19:49:28 +00:00
Zuul
9db9411af0 Merge "Load openvswitch module from the host" 2018-10-08 19:49:26 +00:00
Zuul
53f6f57732 Merge "Load dm-multipath module from the host." 2018-10-08 19:49:24 +00:00
Zuul
bc0d490b8a Merge "Load ip_vs module from the host" 2018-10-08 19:47:03 +00:00
Zuul
50c76e2d72 Merge "Load iscsi_tcp module from the host." 2018-10-08 19:17:32 +00:00
Zuul
7fd52ebcc4 Merge "ironic: enable noop management interface by default" 2018-10-08 16:13:50 +00:00
Zuul
8fd90c2d45 Merge "Set virt queue size as 1024 for all OVS-DPDK roles" 2018-10-08 12:25:41 +00:00
Zuul
925c5ded54 Merge "Add role definition for ComputeOvsDpdkSriov role" 2018-10-08 12:18:25 +00:00
Juan Antonio Osorio Robles
cb3c72f37d Remove references to logging_source
This has been unused for a while, and even deprecation was scheduled
(although the patch never merged [1]). So, in order to stop folks
getting confused with this, it's being removed.

[1] https://review.openstack.org/#/c/543871/

Change-Id: Iada64874432146ef311682f26af5990469790ed2
2018-10-08 13:43:47 +03:00
Jiri Stransky
e81878bc04 Run online migrations via "external-upgrade run"
This will pull the online data migrations out of the upgrade
maintenance window and let them be performed after the main upgrade
phase while the cloud is already operational.

The online part of the service upgrades can be run using:

    openstack overcloud external-upgrade run --tags online_upgrade

or per-service like:

    openstack overcloud external-upgrade run --tags online_upgrade_nova
    openstack overcloud external-upgrade run --tags online_upgrade_cinder
    openstack overcloud external-upgrade run --tags online_upgrade_ironic

Change-Id: I35c8d9985df21b3084fba558687e1f408e5a0878
Closes-Bug: #1793332
2018-10-08 11:09:20 +02:00
Martin André
46246e8745 Add heat param for openshift prerequisites playbook
Previously the path to the openshift-ansible's prerequisites playbook
was hardcoded to
/usr/share/ansible/openshift-ansible/playbooks/prerequisites.yml. This
commit introduces the `OpenShiftPrerequisitesPlaybook` heat parameter
to make it configurable.

Also add more explicit description for the other playbook path
parameters and update the default path for OpenShiftUpgradePlaybook
that was broken since the move to openshift-ansible 3.10.

Change-Id: I2260cb8b0cef9650c707d4db917a3281a697912d
2018-10-08 09:25:04 +02:00
Cédric Jeanneret
2b2e5a88ec Load openvswitch module from the host
Until now, it's loaded from within the container, this doesn't
work with SELinux separation.

Change-Id: I70ff5acd7913f9c5f5ead2d9dee83bab49f1f949
2018-10-08 08:37:59 +02:00
Cédric Jeanneret
c80ca5e7dc Load dm-multipath module from the host.
Until now, it's loaded from within the container, this doesn't
work with SELinux separation.

Change-Id: I3d63d1df7496d3b8a5883b07e9d40aa21153c086
Related-Bug: 1794550
2018-10-08 08:37:51 +02:00
Cédric Jeanneret
694b8d3756 Load ip_vs module from the host
Currently the ip_vs module is loaded from the keepalived container,
and if it works in a non-selinux separated env, it doesn't work with
podman.

Change-Id: I71e638bedde3836e05cffab53ad80bfd35313a31
Related-Bug: 1794550
2018-10-08 08:37:42 +02:00