Previous logic did excluded possibility for ceilometer-polling agent
to poll multiple namespaces at the same time. This resulted
in a wrong config for AIO metal scenario.
Change-Id: I2ad3f748d18bf571dc7b82422fbcd8269cbe168e
Closes-Bug: #2018619
The example file was removed from ceilometer in
318c54648c2c85d4f4f5425c5ffc5e5f3dda86f2
Signed-off-by: Matthew Thode <mthode@mthode.org>
Change-Id: Ic23655e793aca9db344354ef95460858534c518c
All references to Gentoo, SUSE, Debian stretch and Centos-7 are removed.
Conditional tasks, ternary operators and variables are simplified where possible
OS specific variables files are generalised where possible
Change-Id: Ia0b927fe775d5638cd09ecb91af550892764353d
This aims to make possible to define ceilometer_pipeline_user_content
filepath instead of making huge overrides. In the meanwhile default
behaviour should be kept with minimal influence on the existing
deployments.
Change-Id: I0a0ac1b9bbdb8b6a68f870f0ae03edbee8c63d68
We use the same condition, which defines against what host some "service"
tasks should run against, several times. It's hard to keep it the same
across the role and ansible spending additional resources to evaluate
it each time, so it's simpler and better for the maintenance to set
a boolean variable which will say for all tasks, that we want to run
only against signle host, if they should run or not now.
Change-Id: I6247f86b26d1e0dac55fa863a19405ff171c82ff
we need separate redhat-8.yml file to handle libvirt libraries condition.
Also as we've fully migrated to py3, no need to install py2 libraries.
Change-Id: I2db9cdfa2500c9a4858fd4b43e636d728c8dec6d
Instead of bothering with definition of python lib dirs per distro,
we can just get ceilometer library directory with python command.
`ceilometer_lib_dir` variable is mainly used by post_install task.
This variable is not set correctly at the moment if role is ran with
ceilometer-config tag. So this patch also fix running role with that tag
Change-Id: Id4fe9a8eef27bdd1c71104007e6b493f3f5109d5
When src is provided to config_template module, content is simply
ignored. So we should set tmp_f only when content is not provided.
This also means that we should use native file lookup instead of
pipe.
Additionally when statements shouldn't include Jinja2 delimiters.
Change-Id: I9ff2fdea02ca71068dab9cfcab10ca60785821de
Unfortunatelly CentOS 7 do not have libvirt libraries
for py3, so isntead of symlinking them, we have to install devel package
and build them inside venv.
Change-Id: Ibcfb82f2b34c0f9db299262ed3b200f87953e043
Beginning in the Stein release, Ubuntu distro packages are now using
Python3.
Install the 'python3-ceilometer' package instead of individual service
packages since they provide service config files that conflict
with the ones OSA provides, and to avoid running ceilometer central
services across all compute hosts.
Change-Id: I8ded76de3c81d6995ed9b57bd21773433bead21b
This patch updates the meta to reflect it's support
of Debian accordingly as well as rename ubuntu vars
file to debian.
Depends-On: Icf91eee6e369d9a6a95dd0c8772c2760eaff5bd2
Change-Id: Ib5ae09823dccc4531557e3fbd1e55aa5fda7d244
Packages from ceilometer_developer_mode_distro_packages were moved
to ceilometer_devel_distro_packages list.
Change-Id: Ia47c56d7fccb36d99a6368b836b48613500beea6
The files and templates we carry are almost always in a state of
maintenance. The upstream services are maintaining these files and
there's really no reason we need to carry duplicate copies of them. This
change removes all of the files we expect to get from the upstream
service. while the focus of this change is to remove configuration file
maintenance burdens it also allows the role to execute faster.
* Source installs have the configuration files within the venv at
"<<VENV_PATH>>/etc/<<SERVICE_NAME>>". The role will now link the
default configuration path to this directory. When the service is
upgraded the link will move to the new venv path.
* Distro installs package all of the required configuration files.
To maintain our current capabilities to override configuration the
role will fetch files from the disk whenever an override is provided and
then push the fetched file back to the target using `config_template`.
Change-Id: Ia467e20c32732152a03579216a0ced0dbb4038c4
This change will allow deployer to override meters.yaml and
event_definitions.yaml files, if he would like to change layout/data,
which will be stored in gnocchi, and the way it will be
updated/stored.
Change-Id: I6bfe03dc1f5ad795d91534b1a51c4d8889bb3ed1
gnocchi_resources.yaml has been defined in main.yml, had all required
variables, but user overrides were not actually deployed on containers
Also, it had an absolete path in GIT repo.
Change-Id: Id32789b59f913cfbb78c1cb4a73b18df85c36655
The libvirt-python library has C bindings which are very particular
about the version of its companion package (libvirt). To ensure
things run smoothly for stable releases, we opt to use the distro
packages for these and symlink the appropriate library files and
binding into the venv.
This approach has been used successfully for the ceph and libvirt
python bindings in other roles.
Change-Id: I23bf430087af8b16a3d77d96f6ceb3d7f6d8a9d5
Currently the devel packages are installed everywhere,
but they only need to be where the wheels are built.
Also, there is already a task to install the packages
needed on the target hosts when installing - so we do
not need to give the same list to the venv install role
because they will already have been installed.
Change-Id: I8d13d6c59cdce3f9ff7642a6b92444b473ccec6d
A buch of defaults oslomsg related variables were configured.
In case of enabling ceilometer for services, role failed unless
all required vars has been specified manually by deployer.
Also vars ceilometer_oslomsg_rpc_servers
and ceilometer_oslomsg_notify_servers were removed
They were not used anywhere except ceilometer.conf.j2
and might be easily replaced with host_group vars.
Their removal allowed to simplify macros.
Fixed distro_install functional test for ubuntu,
as ceilometer-agent-notification package was missing.
Change-Id: I148ccaff9576b09d33d889b79963e88ca84d2ffe
Closes-Bug: 1794688
To make the transition between versions easier,
we rename the vars file. This also resolves
issues when meta-dependent role inclusions do
not pick up the correct file when using the
include_vars task with multiple search paths.
Depends-On: https://review.openstack.org/602924
Depends-On: https://review.openstack.org/602920
Change-Id: I8d4fd6ee9c7df71fc2d79ac67fce494dc2c89b37
Now that we no longer use our own keystone module, but
instead make use of the ansible runtime venv's shade
library and upstream ansible modules, we can eliminate
this package/library being installed on the host.
Change-Id: I016a22a8b827a247c3962007aabffe04868058ad
The systemd journal would normally be populated with the standard out of
a service however with the use of uwsgi this is not actually happening
resulting in us only capturing the logs from the uwsgi process instead
of the service itself. This change implements journal logging in the
service config, which is part of OSLO logging.
OSLO logging docs found here: <https://docs.openstack.org/oslo.log/3.28.1/journal.html>
Change-Id: I5ae4ee8b0f69a4ed9b6088f043abaa1c4b1291d8
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
The devel packages are only needed to build the pip pacakges so we don't
need them when we install packages straight from the distro repos.
Change-Id: I84bb4c07d2a2abdf517ba24477c2b22a32564129
Implements: blueprint openstack-distribution-packages
The keystoneclient package is being installed on the host by PIP but
that means that a whole bunch of required dependencies are being pulled
in as well.
This brings the host to a rather messed up state when installing
keystone from distro packages, since distribution and
PIP packages are being mixed together. We only need the client to
register the service with keystone so we can simply use the distro
package for that to avoid installing lots of PIP packages on the
host.
Change-Id: I1247ae07035451087e70f3e1782dd9c25fe1c554
Implements: blueprint openstack-distribution-packages
Distributions provide packages for the OpenStack services so we add
support for using these instead of the pip ones.
Change-Id: I3edabacc3978cd42988a6c0c04a011c22159b9fa
Implements: blueprint openstack-distribution-packages
Ceilometer no longer stores any data so the MongoDB installation
playbook is not used. In addition, it no longer has an API so
the api-paste file is useless as well.
Closes-Bug: #1747612
Change-Id: I20104cc357f78b01e2b1246a3f51d609bb2f4f24
Add support for the openSUSE Leap distributions. Nothing special is
required for this except for adding the appropriate distro variables
file and also update the zypper cache before package installation.
Moreover, for tests to pass, we need to use the OBS repository to
install the MongoDB packages since they are not provided in the default
openSUSE distribution repositories for Leap < 42.3
Change-Id: Ifa3968f7f578174cf12737c758fa2bca30393fb0
Instead of sourcing the paste/policy files from the role,
the deploy host will first be checked, then the git source.
The current mechanism uses a lookup, causing the fetch of
the default templates to happen via curl from the deployment
node. This causes problems if the deployment node does not
have access to the repo server web service, which may be the
case in high security environments.
This patch changes the mechanism to only use the lookup
module for the file content that is on the deployment node,
then falls back to using the uri module to fetch the default
content. This ensures that the deployment node does not have
to reach into the environment for the content.
Additionally, the following variables and related tasks are
removed as the files they applied to no longer exist in the
source git repository:
- ceilometer_event_definitions_yaml_overrides
- ceilometer_event_pipeline_yaml_overrides
The pattern applied is the same as that used in the
combination of the following two reference patches:
- https://review.openstack.org/446235
- https://review.openstack.org/463390
The rootwrap.conf template is re-added because it cannot be
used verbatim from the upstream repository. It requires the
addition of the service venv bin in the exec_dirs. A mechanism
to implement this dynamically will be figured out in a later
review along with an implementation which will fetch the
rootwrap files directly from the git source too.
Change-Id: I248910a544f611b590bc93449aea98434802cae3
Ceilometer API is now deprecated in favor of using
Gnocchi, Aodh, and Panko to pull telemetry information.
Change-Id: I4464fc6bd4ad3ef14e2638abcdb86180e82615e1
Closes-Bug: 1666640
Ceilometer now has a requirement on libxml2-dev and libxslt1-dev in
order to install lxml pip package.
Change-Id: I55a00db4350f05b96bb3b48a0e9d5d96b6792908
The package lists within the role should be alphabetized.
This makes reading the list and adding packages easier.
Change-Id: Ib9ed21fa6e9bc79537f76c7a2fc7842afa91a7c7
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
Because Ceilometer is deployed with impacts on some deploy hosts,
Apache presents an undesirable surface area to deploying it seems to
be contraindicated.
Change-Id: I494875017509516e50af594c53430f5db90f5322
With the dependent change merged Ceilometer API will no longer run
without a stand-alone wsgi engine. It is too late in the cycle right
now to bring over changes for nginx and/or uwsgi for this project so
only this deployment option is being supported at this time.
Change-Id: I3cff6b183feae3c346cd56602d7b733a6dd9a01b
Depends-On: I8812ea1a92d6dc7f41a490e971bb7a09dee9b304
In order to make it easier to differentiate between the lists of
python packages, distribution packages, downloaded packages,
package pins and other similar variables the variable names are
being changed to ensure that they have a more explicit suffix
that defines the purpose and makes the naming more consistent.
This is to facilitate a lookup plugin which will be able to look
up all the package lists and present them as a consolidated piece
of data which may be used for artifact preparation.
Change-Id: Ia44a7a5eefdba72a55ffa877d92cdda2732d4c73