Remove RabbitMQ support from Bifrost
During the Train cycle, Bifrost switched to using JSON-RPC by default for Ironic's internal communication [1], avoiding the need to install RabbitMQ. This simplifies things, so we may as well remove our custom configuration of RabbitMQ. [1] https://review.openstack.org/645093 Change-Id: I3107349530aa753d68fd59baaf13eb7dd5485ae6
This commit is contained in:
parent
d93c604d7a
commit
33564a0097
@ -15,9 +15,7 @@
|
||||
- name: Bootstrap bifrost (this may take several minutes)
|
||||
command: >
|
||||
docker exec bifrost_deploy
|
||||
bash -c 'source /bifrost/env-vars
|
||||
&& cp /etc/bifrost/rabbitmq-env.conf /etc/rabbitmq/rabbitmq-env.conf &&
|
||||
chown rabbitmq:rabbitmq /etc/rabbitmq/rabbitmq-env.conf &&
|
||||
bash -c 'source /bifrost/env-vars &&
|
||||
ansible-playbook -vvvv -i /bifrost/playbooks/inventory/target
|
||||
/bifrost/playbooks/install.yaml -e @/etc/bifrost/bifrost.yml
|
||||
-e @/etc/bifrost/dib.yml -e skip_package_install=true'
|
||||
|
@ -24,15 +24,6 @@
|
||||
- "dib"
|
||||
- "servers"
|
||||
|
||||
- name: Copying over rabbitmq config
|
||||
template:
|
||||
src: "{{ item }}"
|
||||
dest: "{{ node_config_directory }}/bifrost/{{ item }}"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_items:
|
||||
- "rabbitmq-env.conf"
|
||||
|
||||
- name: Template ssh keys
|
||||
template:
|
||||
src: "{{ item.src }}"
|
||||
@ -43,17 +34,3 @@
|
||||
- { src: "id_rsa", dest: "id_rsa" }
|
||||
- { src: "id_rsa.pub", dest: "id_rsa.pub" }
|
||||
- { src: "ssh_config", dest: "ssh_config" }
|
||||
|
||||
# NOTE(mgoddard): The following task was lifted from a Bifrost play
|
||||
# (playbooks/roles/bifrost-ironic-install/tasks/bootstrap.yml). Because
|
||||
# Bifrost cannot modify /etc/hosts from within the container we must do it
|
||||
# here.
|
||||
- name: "Ensure /etc/hosts has good defaults"
|
||||
lineinfile:
|
||||
dest: "/etc/hosts"
|
||||
regexp: "{{ item.regexp }}.*({{ ansible_hostname }}|localhost).*"
|
||||
line: "{{ item.contents }}"
|
||||
with_items:
|
||||
- { regexp: '^127\.0\.0\.1', contents: '127.0.0.1 {{ ansible_hostname }} {{ ansible_fqdn }} localhost' }
|
||||
- { regexp: '^::1', contents: '::1 {{ ansible_hostname }} {{ ansible_fqdn }} localhost ipv6-localhost ipv6-loopback' }
|
||||
become: true
|
||||
|
@ -15,5 +15,4 @@
|
||||
- "bifrost_httpboot:/httpboot/"
|
||||
- "bifrost_ironic:/var/lib/ironic/"
|
||||
- "bifrost_mariadb:/var/lib/mysql/"
|
||||
- "bifrost_rabbitmq:/var/lib/rabbitmq/"
|
||||
- "bifrost_tftpboot:/tftpboot/"
|
||||
|
@ -1,15 +0,0 @@
|
||||
# Defaults to rabbit. This can be useful if you want to run more than one node
|
||||
# per machine - RABBITMQ_NODENAME should be unique per erlang-node-and-machine
|
||||
# combination. See the clustering on a single machine guide for details:
|
||||
# http://www.rabbitmq.com/clustering.html#single-machine
|
||||
#NODENAME=rabbit
|
||||
|
||||
# By default RabbitMQ will bind to all interfaces, on IPv4 and IPv6 if
|
||||
# available. Set this if you only want to bind to one network interface or#
|
||||
# address family.
|
||||
#NODE_IP_ADDRESS=127.0.0.1
|
||||
|
||||
HOME=/var/lib/rabbitmq
|
||||
|
||||
# Defaults to 5672.
|
||||
#NODE_PORT=5672
|
@ -0,0 +1,7 @@
|
||||
---
|
||||
upgrade:
|
||||
- |
|
||||
Removes support for RabbitMQ from the Bifrost container. During the Train
|
||||
cycle, Bifrost switched its default to use JSON-RPC rather than RabbitMQ
|
||||
for internal Ironic communication. This simplifies the deployment and
|
||||
should improve reliability.
|
@ -12,7 +12,7 @@ function test_bifrost {
|
||||
# TODO(mgoddard): Use openstackclient when clouds.yaml works. See
|
||||
# https://bugs.launchpad.net/bifrost/+bug/1754070.
|
||||
attempts=0
|
||||
while [[ $(sudo docker exec bifrost_deploy bash -c "source env-vars && ironic driver-list" | wc -l) -le 4 ]]; do
|
||||
while [[ $(sudo docker exec bifrost_deploy bash -c "OS_CLOUD=bifrost openstack baremetal driver list -f value" | wc -l) -eq 0 ]]; do
|
||||
attempts=$((attempts + 1))
|
||||
if [[ $attempts -gt 6 ]]; then
|
||||
echo "Timed out waiting for ironic conductor to become active"
|
||||
@ -20,9 +20,9 @@ function test_bifrost {
|
||||
fi
|
||||
sleep 10
|
||||
done
|
||||
sudo docker exec bifrost_deploy bash -c "source env-vars && ironic node-list"
|
||||
sudo docker exec bifrost_deploy bash -c "source env-vars && ironic node-create --driver ipmi --name test-node"
|
||||
sudo docker exec bifrost_deploy bash -c "source env-vars && ironic node-delete test-node"
|
||||
sudo docker exec bifrost_deploy bash -c "OS_CLOUD=bifrost openstack baremetal node list"
|
||||
sudo docker exec bifrost_deploy bash -c "OS_CLOUD=bifrost openstack baremetal node create --driver ipmi --name test-node"
|
||||
sudo docker exec bifrost_deploy bash -c "OS_CLOUD=bifrost openstack baremetal node delete test-node"
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user