Skip to main content

Primary links

  • Home
  • AI
  • Kubernetes
  • Incus
  • Ansible
  • Terraform
  • OpenStack
  • Virtualization
  • Linux
  • SmartHome
  • HowTo

Misc

  • Linux
  • Hardware
  • Programming
  • Databases
  • Multimedia
  • Windows

Cloud

  • OpenStack
    • Application credentials
    • Authentificaton
    • Barbican (Secret)
    • CLI client (OSC)
    • Cleanup OpenStack
    • Cloud images
    • Designate (DNSaaS)
    • DevStack
    • Gerrit / OpenDev
    • Glance (image)
    • Heat
    • Horizon
    • Ironic / Bifrost
    • Magnum
    • MicroStack
    • Mistral
    • Neutron (network)
    • Object storage
    • Octavia (loadbalancer)
    • OpenStack GPU passthrough
    • OpenvSwitch (OVS)
    • Quota
    • RabbitMQ
    • VPN
    • block storage volume (cinder)
    • compute (nova)
    • control
    • diskimage-builder
    • flavor
    • gnocchi
    • kolla-ansible
    • project
    • resource provider
    • server (VM)
    • user
  • cloud-config
  • nextcloud

Virtualization

  • Virtualization
  • Incus
  • Docker
  • KVM
  • Kubernetes
  • LXC
  • LXD
  • QEMU
  • VMware
  • VirtualBox
  • multipass
  • podman
  • vagrant
  • XEN

Network

  • DNS
  • Firewall
  • Linux
  • OpenvSwitch
  • SSL
  • VLAN
  • VPN
  • iPXE
  • namespaces
  • nmcli
  • tcpdump

Storage

  • CEPH
  • DRBD
  • LVM
  • S3
  • ZFS
  • btrfs

Automation / CI/CD

  • Install
  • Ansible
  • GitLab
  • LLM
  • Preseed
  • Puppet
  • Terraform
  • Ubuntu autoinstall

Monitoring / Visualisation

  • Grafana
  • Icinga
  • Prometheus
  • Monitoring
  • ELK
  • mermaid
  • openstack
  • cloud

DevStack XENA

sudo apt -y install git jq vim
sudo apt purge -y python3-distro-info

git clone --branch "stable/xena" https://opendev.org/openstack/devstack

HOST_IP=$(ip -o -4 -j a | jq -r '.[].addr_info[] | select(.dev == "ens3") .local')
echo ${HOST_IP}

DevStack XENA
https://openstack.goffinet.org/03-02-openstack-lab-devstack.html
http://lia.deis.unibo.it/Courses/CompNetworksM/1718/slides/NetworksM_Cloud180518_v1.pdf
https://opnfvblog.wordpress.com/2016/10/27/devstack-localconf/
https://01.org/sites/default/files/page/accelerating_openstack_networking_with_intel_architecture_rev008.pdf

cat < ~/devstack/local.conf
[[local|localrc]]
DEST=/opt/stack/

#ENABLED_SERVICES=key,swift,mysql
#ENABLED_SERVICES+=,heat,key,swift,mysql
#ENABLED_SERVICES+=,heat
#ENABLED_SERVICES+=,q-dhcp,q-meta,q-l3
#,q-agt,q-svc
#DISABLE_SERVICES tempest n-obj n-net n-vol

ADMIN_PASSWORD=stack1234
DATABASE_PASSWORD=\$ADMIN_PASSWORD
RABBIT_PASSWORD=\$ADMIN_PASSWORD
SERVICE_PASSWORD=\$ADMIN_PASSWORD

# Enable Neutron (Networking)
# to use nova net rather than neutron, comment out the following group
#disable_service n-net
#enable_plugin neutron https://git.openstack.org/openstack/neutron
#enable_service q-metering
#enable_service q-qos

# Networking
# https://docs.openstack.org/devstack/latest/networking.html
disable_service n-net
disable_service n-cpu
enable_service q-svc
enable_service q-agt
enable_service q-dhcp
enable_service q-l3
enable_service q-meta
enable_service neutron
Q_AGENT=openvswitch
Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch
Q_ML2_PLUGIN_TYPE_DRIVERS=vlan,flat,local
Q_ML2_TENANT_NETWORK_TYPE=vlan


# Logging
ENABLE_DEBUG_LOG_LEVEL=false
ENABLE_VERBOSE_LOG_LEVEL=false
LOGFILE=\$DEST/logs/stack.sh.log
SCREEN_LOGDIR=$DEST/logs/screen
VERBOSE=false

#IPV4_ADDRS_SAFE_TO_USE=172.31.1.0/24
HOST_IP=${HOST_IP}

#PUBLIC_INTERFACE=ens7
#FLOATING_RANGE=192.168.1.0/24
#PUBLIC_NETWORK_GATEWAY=10.0.10.1

enable_plugin heat https://github.com/openstack/heat master
EOF


# Neutron options
Q_USE_SECGROUP=True
FLOATING_RANGE="172.18.161.0/24"
IPV4_ADDRS_SAFE_TO_USE=10.0.0.0/24
Q_FLOATING_ALLOCATION_POOL=start=172.18.1
61.250,end=172.18.161.254
PUBLIC_NETWORK_GATEWAY="172.18.161.1"
PUBLIC_INTERFACE=eth1


# Neutron options
Q_USE_SECGROUP=True
FLOATING_RANGE="172.18.161.0/24"
IPV4_ADDRS_SAFE_TO_USE=10.0.0.0/24
Q_FLOATING_ALLOCATION_POOL=start=172.18.1
61.250,end=172.18.161.254
PUBLIC_NETWORK_GATEWAY="172.18.161.1"
PUBLIC_INTERFACE=eth1

## Neutron options
PUBLIC_INTERFACE=eth0
ENABLED_SERVICES=n-cpu,rabbit,q-agt


cat <> ~/devstack/local.conf
# keystone
OS_IDENTITY_API_VERSION=3
OS_AUTH_URL="http://$KEYSTONE_IP/identity/v3"
OS_USERNAME=$ADMIN_USER
OS_USER_DOMAIN_ID=default
OS_PASSWORD=$ADMIN_PASSWORD
OS_PROJECT_NAME=$ADMIN_USER
OS_PROJECT_DOMAIN_ID=default
OS_REGION_NAME=RegionOne

# swift
SERVICE_HOST=$SWIFT_IP
SWIFT_SERVICE_PROTOCOL=${SWIFT_SERVICE_PROTOCOL:-http}
SWIFT_DEFAULT_BIND_PORT=${SWIFT_DEFAULT_BIND_PORT:-8080}
# service local host is used for ring building
SWIFT_SERVICE_LOCAL_HOST=$HOST_IP
# service listen address for prox
SWIFT_SERVICE_LISTEN_ADDRESS=$HOST_IP
SWIFT_LOOPBACK_DISK_SIZE=20G
SWIFT_MAX_FILE_SIZE=5368709122
SWIFT_HASH=66a3d6b56c1f479c8b4e70ab5c2000f5
IDENTITY_API_VERSION=3
SWIFT_DATA_DIR=$DEST/data
SWIFT_REPLICAS=1
EOF

Deploy DevStack

cd devstack
./stack.sh

Create admin-openrc

ADMIN_PROJECT_ID=$(sudo grep admin_project=  /opt/stack/logs/stack.sh.log | cut -d"=" -f2)

cat < ~/admin-openrc
export OS_AUTH_URL=http://${HOST_IP}/identity
export OS_PROJECT_ID=${ADMIN_PROJECT_ID}
export OS_PROJECT_NAME="admin"
export OS_USER_DOMAIN_NAME="Default"
export OS_PROJECT_DOMAIN_ID="default"
export OS_USERNAME="admin"
export OS_PASSWORD="stack1234"
export OS_REGION_NAME="RegionOne"
export OS_INTERFACE=public
export OS_IDENTITY_API_VERSION=3
EOF

echo "source ~/admin-openrc.sh" >> ~/.profile

source admin-openrc 
openstack endpoint list

Create OpenStack bash completion

openstack complete | sudo tee /etc/bash_completion.d/osc.bash_completion > /dev/null
. /etc/bash_completion

old

cat < local.conf 
[[local|localrc]]
ADMIN_PASSWORD=devstack
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
EOF

sudo devstack/tools/create-stack-user.sh
su stack

cd devstack
./stack.sh

ssh -N -L 8080:localhost:80 root@192.168.254.46


export OS_TENANT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=stack
export OS_AUTH_URL=http://localhost:35357/v2.0

nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0
nova secgroup-add-rule default tcp 22 22 0.0.0.0/0

nova list
nova floating-ip-create public

Ironic DevStack Configuration
https://docs.openstack.org/ironic/latest/contributor/ironic-boot-from-volume.html

Links
https://docs.openstack.org/devstack/latest/
https://opendev.org/openstack/devstack
https://docs.openstack.org/devstack/latest/configuration.html

Profiles GitHub StackOverflow LinkedIn Xing
Contact Imprint
© panticz 2026

Cookie-Einstellungen

Diese Website nutzt eingebettete Inhalte von Drittanbietern (z.B. YouTube, SoundCloud). Beim Laden dieser Inhalte werden Daten an die jeweiligen Anbieter übermittelt. Datenverarbeitungserklärung