aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2017-01-20Merge "Move nova::placement to common nova manifest"Jenkins2-2/+1
2017-01-20Implement Nova ec2api profileSven Anderson4-1/+92
Change-Id: If4b091e1ca02f43aa9c65392baf8ceea007b7cfb
2017-01-20Merge "Add base profile for Octavia services"Jenkins4-0/+365
2017-01-20Merge "Remove unused variable in certmonger/mysql manifest"Jenkins1-10/+0
2017-01-20Make sure we bind the rabbit inter-cluster to a specific interfaceMichele Baldessari3-7/+63
Currently the inter-cluster communication port listens to all ip addresses: tcp 0 0 0.0.0.0:25672 0.0.0.0:* LISTEN 25631/beam.smp In order to limit it to listen only to the network assigned to rabbitmq we need to add the following: {kernel, [ ... {inet_dist_use_interface, {172,17,0,16}}, ... ]} In order to do the conversion from an ip address to the Erlang representation we add a function that takes a string and returns a converted output. The (~400 randomly generated) IPv6/4 addresses at [1] have been parsed both via erl's built-in inet:parse_address() function and our ruby implementation. All converted ip addresses resulted in the same output [2], [3]. The only difference is that Erlang's parse_address() considers network ip addresses (e.g. 10.0.0.0) invalid whereas the ruby function does not. This should not be a problem as the use case here is to bind a service to a specific ip address on an interface and if anything we likely prefer the less strict behaviour, given that at least in theory it is perfectly valid for an interface to have a network address assigned to it. [1] http://acksyn.org/files/tripleo/ip-addresses.txt [2] http://acksyn.org/files/tripleo/ip-addresses-ruby.txt [3] http://acksyn.org/files/tripleo/ip-addresses-erl.txt Change-Id: I211c75b9bab25c545bcc7f90f34edebc92bba788 Partial-Bug: #1645898
2017-01-20Fix typo in endpoint.ppzhangyanxian1-1/+1
TrivialFix Change-Id: I8ea2f108d6f98167217b31284c84dbdf23f55f36
2017-01-19cinder: move glance params into commonEmilien Macchi4-5/+7
glance params are also used by cinder-volume. This patch aims to use cinder::glance in common roles for cinder, so we can split cinder api and cinder volume. Depends-On: Id81c029318016068481dd614ed62cc4bfaf0f3e8 Change-Id: I9703efb38c2a3166c7f21c5c1b942f33abb9e76c
2017-01-20Move nova::placement to common nova manifestEmilien Macchi2-2/+1
nova::placement needs to be declared on more than placement api node, because credentials are used by different services (at least nova-compute now). This patch moves the class to base/nova.pp, at the same step. So compute nodes will have the credentials and will be able to use Placement API on multinode environments. Change-Id: Iada8e9fcccec7dbfe7ac0ec0f9ec6eac1581290e
2017-01-19Merge "Adds etcd"Jenkins3-0/+96
2017-01-19Merge "Implement NTP profile"Jenkins2-0/+32
2017-01-19Add base profile for Octavia servicesbeagles4-0/+365
Adds initial base profile and profile for API service. Partially-implements: blueprint octavia-service-integration Change-Id: I77783029797be4fb488c6e743c51d228eba9c474
2017-01-19Implement NTP profileCarlos Camacho2-0/+32
This puppet manifest will install and configure by default the NTP service. It will also make sure chrony is purged, because it's present on the EL7 images. Change-Id: If3cf7d9690001b051465ea25cf8a8c3bc6f7c33a
2017-01-19Add retries to the ::pacemaker::stonith propertyMichele Baldessari1-1/+7
Let's set a default number of retries also for the stonith property creation. Just like we do for most of the composable HA resource creation. Change-Id: Ie6e19cc838a3f45100f6c98a350bdf6a37d40590 Depends-On: I20098c5d69cde356fe79f6d8dbdc03ae42ecb3ef
2017-01-18Adds etcdFeng Pan3-0/+96
etcd is used by networking-vpp ML2 driver as the messaging mechanism. This patch adds etcd service which can be used by other services. Implements: blueprint fdio-integration-tripleo Change-Id: Idaa3e3deddf9be3d278e90b569466c2717e2d517 Signed-off-by: Feng Pan <fpan@redhat.com>
2017-01-19Use network entries for nova placementJuan Antonio Osorio Robles1-1/+6
Having these available from t-h-t, we should be able to use these now. Change-Id: I7272df25c4fdba152fe15d40444311bc35ace4d9 Depends-On: Id0d34c7c3939ee81126ffd26d0658c0a87805a44
2017-01-18Merge "Remove legacy flag and use composable interface"Jenkins2-20/+3
2017-01-18Add Ceph RBD mirror Pacemaker profileGiulio Fidente2-0/+141
This change adds a profile for the Ceph RBD mirror service, which should be managed by Pacemaker to make sure there is always a single instance running. Change-Id: Ic63dc5cffece38942d305f538f71dd58a5d50789 Partial-Bug: #1652177
2017-01-18Remove legacy flag and use composable interfacePradeep Kilambi2-20/+3
We dont need this flag anymore as we will disable api using composable interface instead. See I67900f7e6816212831aea8ed18f323652857fbd3 Closes-bug: #1656364 Change-Id: Ib6aea02bde6ad7e5223336579f0a99d6cd3ee98f
2017-01-18updates to collectd supportLars Kellogg-Stedman3-48/+80
Based on Steve Hardy's comments in https://review.openstack.org/#/c/413748/, we need to move handling of the list of plugins out of the heat templates and into puppet. This module now uses the service_names variable to look up information on per-service collectd plugins. Change-Id: Ie5fba01e1f91ffdc39eb0eb1be9b1464c797b04f
2017-01-18Do not depend on bootstrap_nodeid for any pacemaker profileMichele Baldessari8-14/+20
When we create a pacemaker resource it must happen from a single node. If it happens from multiple nodes an immediate error will be returned by pcs. For the pacemaker roles we enforce this by leveraging the recently introduced <SERVICE_NAME_bootstrap_short_node_name> which gives us the first hostname per-service, regardless of the role. (introduced via I03e8685f939e8ae1fcd8b16883b559615042505d) With this approach if a pacemaker service belongs to two different roles (say role Controller on node A and role galera on node B), it will only create the resource from one of the two and not both (which would return an error). Only setting Partial-Bug for this one, because it addresses the issue from the pacemaker resource creation POV (which is always affected). But the issue itself is a race that we're theoretically affected by since the composable roles work landed. While I have tried to fix the more general case in previous attempts, I think it is best if we start a discussion on how to fix it, because each approach has a bunch of potential drawbacks and is quite invasive on how we do things. A discussion slot for this has been proposed for the Atlanta PTG. Change-Id: I662398cab60d523d204b57a5674ca8f5c0f2e68a Partial-Bug: #1615983
2017-01-18Merge "Set ceph key when using manila ceph backend"Jenkins1-1/+36
2017-01-17Merge "Call VF configuration from udev rules"Jenkins3-4/+33
2017-01-17Merge "Add missing Swift base class"Jenkins1-0/+1
2017-01-16Merge "Include swift::storage::loopbacks class"Jenkins1-0/+1
2017-01-16Merge "Set memcache_servers in /etc/swift/object-expirer.conf"Jenkins1-1/+3
2017-01-16Merge "Enable object-expirer on Swift proxy profile"Jenkins1-0/+2
2017-01-16Merge "Implement Nova Placement API profile"Jenkins4-0/+133
2017-01-16Merge "Include ::heat at step 3"Jenkins1-2/+0
2017-01-14nova: disable ::nova::db::sync_cell_v2Emilien Macchi2-13/+17
This feature is broken for us now and there is work in progress in Nova to improve nova cell deployment. Until it's fixed upstream, we need to disable cells deployment for now, so we can promote our CI. Change-Id: I379ba9e94a92ed225a03a67fc975b542447a9c8b Related-Bug: #1649341
2017-01-13Include ::heat at step 3James Slagle1-2/+0
Since we include ::heat::keystone::domain at step 3, and that class requires heat.conf since it uses the heat_config resource, we need to also include ::heat at step 3. The ::heat class will take care of installing openstack-heat-common that provides heat.conf. Closes-Bug: #165389 Partially-implements: blueprint split-stack-software-configuration Change-Id: I5ba34ca96ca84d3f1cf3785ed8bbef6720f7bd42
2017-01-11Set ceph key when using manila ceph backendJan Provaznik1-1/+36
Manila ceph driver reads ceph's client configuration (keyring is the most important) from ceph.conf file (or any other file set by cephfs_conf_path). ceph.conf should be updated with keyring location. If ceph is deployed by tripleo then also manila ceph key is added into ceph and ceph filesystem is created. Depends-On: I18436a64fc991b9e697a1d79e369ac110cf8fe20 Change-Id: Iac4a260af6738ed6afd4bcb107221a736d07c1b5 Partial-Bug: #1644784 Closes-Bug: #1646147
2017-01-11Add support for fence_ironic fencing agent.Chris Jones1-0/+3
We now support creating Pacemaker stonith fencing using the fence_ironic fencing agent. Partial-Bug: #1649695 Depends-On: I315f9bb78a1296f691dadaeb39fb0a48df1d5f06 Change-Id: I596eef68820f16516feeda147d3689f0da85d7ac
2017-01-11Implement Nova Placement API profileEmilien Macchi4-0/+133
Allow TripleO to deploy Nova Placement API with a new profile. Change-Id: I5e25a50f3d7a9b39f4146a61cb528963ee09e90c
2017-01-10Merge "Rspec tests for nova profiles"Jenkins12-1/+801
2017-01-10Merge "Add Docker Registry profile"Jenkins2-0/+84
2017-01-10Merge "Move nova cells db sync into nova-api profile"Jenkins3-65/+26
2017-01-10Merge "Add support for not using admin_token in Ceph/RGW"Jenkins4-9/+51
2017-01-09Rspec tests for nova profilesAlex Schultz12-1/+801
This change fixes the hiera calls in the base nova profile to use the parameter rather than continue to call hiera. Additionally this change includes basic test coverage for the various nova profiles. Change-Id: If393606eeb3c39ed3a2655bd89c5c276a9cf106e
2017-01-09Move nova cells db sync into nova-api profileDan Prince3-65/+26
Having the db_sync code live in the mysql profile causes coupling that doesn't work unless your MySQL server has the latest Nova packages installed. This may not work for some baremetal setups (where an isolated database exists) or with containers where the MySQL container definately doesn't have nova packages installed. Moving this code into the nova-api role also matches where we were already db syncing the normal API database so it should be fine and safe. Change-Id: Ib625e2ac9c8d6bd1d335c58e291facc4ea5839ae Co-Authored-By: Alex Schultz <aschultz@redhat.com>
2017-01-09Add support for not using admin_token in Ceph/RGWKeith Schincke4-9/+51
This patch add the option for using Keyston V3 authention with the Ceph/RGW service instead of using the admin_token Change-Id: I42861afcac221478dcb68be13b6dbc2533a7f158
2017-01-09Use THT to define cell0 creationAlex Schultz1-4/+1
As part of the initial implementation, we hard coded the cell0 setup in puppet. This change switches it to leverage the defined value in the tripleo-heat-templates Change-Id: I896a124d91d06ca85b77c9fbe24fd252815a2d28 Depends-On: I08119d781ef60750cc19753bc03190e413159925 Related-Bug: #1649341
2017-01-09Add Docker Registry profileMartin André2-0/+84
The profile was moved out of instack-undercloud puppet manifest and changed to install a v2 Docker registry rather than the old, deprecated v1 registry. Change-Id: Iecf7a4c7e86349e6ecaa0a8ee6d37223e3af7862
2017-01-09Add haproxy firewall rules for galera and redisMichele Baldessari1-0/+18
This change adds haproxy rules for galera and redis. They are not there because these haproxy entries do not use the ::tripleo::haproxy::endpoint function which does this automatically. Rabbit does not need them because it does not go through haproxy. Closes-Bug: #1654280 Change-Id: If995d5c36341f3c089cbda9a0827ea28c19c796b
2017-01-07Merge "Ensure panko::db class is initialized"Jenkins1-0/+1
2017-01-07Merge "Fix puppet warning for empty value"Jenkins1-0/+2
2017-01-06Ensure panko::db class is initializedPradeep Kilambi1-0/+1
Change-Id: If2f6559a7d76b26fa9b0a3ecfa2e2101aae93e3c
2017-01-06Merge "glance/api: cleanup on dbsync"Jenkins1-8/+1
2017-01-06Fix puppet warning for empty valueEmilien Macchi1-0/+2
Unknown variable: 'haproxy_ssl_firewall_rules' when public_ssl_port is empty. Fixing it by setting an empty hash in this case. Change-Id: If864732262852ef79ebb91ee77902c86b847072a
2017-01-05firewall: add IPv6 supportEmilien Macchi2-18/+84
This patch adds support for ip6tables rules in TripleO, in a intuitive and flexible fashion. 1) Default firewal rules 'source' parameter to undef. It was 0.0.0.0/0 before but now undef, so we don't need complex logic to support ipv6 rules. undef will create empty source, which is the same as 0.0.0.0/0 or ::/0. 2) Automatically convert icmp rules to ipv6-icmp for ipv6 rules. 3) Automatically create IPv6 rules like it's for IPv4. 4) Only create rules that can be created, depending on source/destination ip version. This patch should be backward compatible and adds a layer of security for IPv6 deployments. If previous deployments were manually creating Ipv6 rules, it's possible that this patch will override them. Our framework is able to configure any rule, so it shouldn't be a problem for upgrades. Co-Authored-By: Ben Nemec <bnemec@redhat.com> Closes-Bug: #1654050 Change-Id: I98a00a9ae265d3e5854632e749cc8c3a1647298c
2017-01-05glance/api: cleanup on dbsyncEmilien Macchi1-8/+1
Cleanup some code that were useful in the effort of removing Glance Registry service from TripleO. Change-Id: I2a4bdc413e953b8b713d9a12bba74ca18487fe0d