Skip to content

Commit 2d06431

Browse files
Keystone integration
1 parent 7841151 commit 2d06431

File tree

7 files changed

+89
-22
lines changed

7 files changed

+89
-22
lines changed

enroll-baremetal.sh

-19
Original file line numberDiff line numberDiff line change
@@ -3,31 +3,12 @@
33
# Enroll baremetal machine
44

55
set -e
6-
export OS_CLOUD=bifrost
7-
86
python3 -m venv os-venv
97
source os-venv/bin/activate
108
pip install -U pip
119
pip install -U setuptools
1210
pip install python-openstackclient python-ironicclient python-ironic-inspector-client
1311

14-
INTERFACE=${INTERFACE:-breth1}
15-
IP=$(ip a show dev $INTERFACE | grep 'inet ' | awk '{ print $2 }' | sed 's/\/.*//g')
16-
17-
if [[ ! -f ~/.config/openstack/clouds.yaml ]]; then
18-
mkdir -p ~/.config/openstack
19-
cat << EOF | sudo tee ~/.config/openstack/clouds.yaml
20-
---
21-
clouds:
22-
bifrost:
23-
auth_type: "none"
24-
endpoint: http://$IP:6385
25-
bifrost-inspector:
26-
auth_type: "none"
27-
endpoint: http://$IP:5050
28-
EOF
29-
fi
30-
3112
openstack baremetal node create \
3213
--driver redfish \
3314
--driver-info redfish_system_id=$1 \

etc/kolla/config/ironic.conf

+10
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,13 @@ enabled_boot_interfaces = ipxe,redfish-virtual-media,redfish-https
44
enabled_power_interfaces = ipmitool,redfish
55
enabled_management_interfaces = ipmitool,redfish
66
enabled_inspect_interfaces = agent,redfish
7+
default_network_interface = noop
8+
9+
[conductor]
10+
deploy_kernel = file:///etc/kolla/config/ironic/ironic-agent.kernel
11+
deploy_ramdisk = file:///etc/kolla/config/ironic/ironic-agent.initramfs
12+
bootloader = file:///var/lib/ironic/httpboot/esp.img
13+
14+
[neutron]
15+
cleaning_network = none
16+

etc/kolla/globals.yml

+5-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ kolla_group: "{{ lookup('env', 'USER') }}"
66
# Set to either 'source' or 'binary'.
77
kolla_install_type: source
88

9-
openstack_release: 2024.1
9+
openstack_release: master
1010

1111
# Set $INTERFACE to your network interface.
1212
api_interface: "{{ lookup('env', 'INTERFACE') | default('breth1', true) }}"
@@ -20,6 +20,10 @@ enable_haproxy: "no"
2020
enable_ironic: "yes"
2121
enable_ironic_ipxe: "yes"
2222
enable_memcached: "no"
23+
enable_keystone: "yes"
24+
enable_ironic_inspector: "no"
25+
26+
ironic_enable_keystone_integration: "yes"
2327

2428
# Set $DHCP_RANGE to a DHCP range for dnsmasq.
2529
ironic_dnsmasq_dhcp_ranges:

etc/kolla/inventory/all-in-one

+3-1
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@ control
3030
[ironic:children]
3131
control
3232

33+
[keystone:children]
34+
control
35+
3336
# iSCSI
3437
[iscsid:children]
3538
ironic
@@ -42,7 +45,6 @@ ironic
4245
ironic
4346

4447
[ironic-inspector:children]
45-
ironic
4648

4749
[ironic-tftp:children]
4850
ironic

kolla-deploy.sh

+3-1
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,6 @@ docker ps || (echo "Cannot communicate with docker engine. Have you logged out a
66
source kolla-venv/bin/activate
77
kolla-ansible -vv -i /etc/kolla/inventory/all-in-one prechecks -e ansible_python_interpreter=~/bikolla/kolla-venv/bin/python
88
kolla-ansible -vv -i /etc/kolla/inventory/all-in-one pull -e ansible_python_interpreter=~/bikolla/kolla-venv/bin/python
9-
kolla-ansible -vv -i /etc/kolla/inventory/all-in-one deploy -e ansible_python_interpreter=~/bikolla/kolla-venv/bin/python
9+
kolla-ansible -vv -i /etc/kolla/inventory/all-in-one deploy -e ansible_python_interpreter=~/bikolla/kolla-venv/bin/python
10+
kolla-ansible -vv -i /etc/kolla/inventory/all-in-one post-deploy -e ansible_python_interpreter=~/bikolla/kolla-venv/bin/python
11+

provision-overcloud.yml

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
- name: Provision overcloud
2+
hosts: localhost
3+
tasks:
4+
- openstack.cloud.baremetal_node_action:
5+
name: "test-vm"
6+
config_drive:
7+
meta_data:
8+
hostname: node1
9+
network_data:
10+
links:
11+
- id: port-
12+
type: phy
13+
ethernet_mac_address:
14+
networks:
15+
- id: network0
16+
type: ipv4
17+
link: port-
18+
ip_address: "192.168.122.42"
19+
netmask: "255.255.255.0"
20+
network_id: network0
21+
instance_info:
22+
image_source: "https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.img"
23+
image_checksum: "989151e612cde6876b0ef9fbc8051c0e22c32c59dd51cbac2b8691fbb79c399a"
24+
image_disk_format: "qcow2"
25+

sushy.conf

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
SUSHY_EMULATOR_STORAGE = {
2+
"f84aa5b8-b1ef-4478-81e8-0fe530a7fdde": [
3+
{
4+
"Id": "1",
5+
"Name": "Local Storage Controller",
6+
"StorageControllers": [
7+
{
8+
"MemberId": "0",
9+
"Name": "Contoso Integrated RAID",
10+
"SpeedGbps": 12
11+
}
12+
],
13+
"Drives": [
14+
"32ADF365C6C1B7BD"
15+
]
16+
}
17+
]
18+
}
19+
20+
SUSHY_EMULATOR_DRIVES = {
21+
("f84aa5b8-b1ef-4478-81e8-0fe530a7fdde", "1"): [
22+
{
23+
"Id": "32ADF365C6C1B7BD",
24+
"Name": "Drive Sample",
25+
"CapacityBytes": 899527000000,
26+
"Protocol": "SAS"
27+
}
28+
]
29+
}
30+
31+
SUSHY_EMULATOR_VOLUMES = {
32+
('f84aa5b8-b1ef-4478-81e8-0fe530a7fdde', '1'): [
33+
{
34+
"libvirtPoolName": "default",
35+
"libvirtVolName": "vbmc-node-test3.qcow2",
36+
"Id": "1",
37+
"Name": "vbmc-node-volume",
38+
"VolumeType": "File",
39+
"CapacityBytes": 1073741824
40+
}
41+
]
42+
}
43+

0 commit comments

Comments
 (0)