66 changed files with 184 additions and 66 deletions

No files matched your search

File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -15,7 +15,8 @@ RUN set -x \
python-openstackclient \ python-openstackclient \
python-oslo.cache \ python-oslo.cache \
lvm2 \ lvm2 \
tgt \ python-ceph \
python-rbd \
&& apt-get -y clean && apt-get -y clean
@@ -28,8 +29,6 @@ COPY bootstrap.sh /etc/bootstrap.sh
COPY run.sh /etc/run.sh COPY run.sh /etc/run.sh
COPY lvm.conf /etc/lvm/lvm.conf
RUN chown root.root /etc/bootstrap.sh && chmod a+x /etc/bootstrap.sh RUN chown root.root /etc/bootstrap.sh && chmod a+x /etc/bootstrap.sh
RUN chown root.root /etc/run.sh && chmod a+x /etc/run.sh RUN chown root.root /etc/run.sh && chmod a+x /etc/run.sh
File renamed without changes.
File renamed without changes.
@@ -22,6 +22,6 @@ source /root/admin-openrc.sh
# create a LVM physical volume and volume group. # create a LVM physical volume and volume group.
# This device should be available tpo the container # This device should be available tpo the container
pvcreate /dev/cinder_storage_volume #pvcreate /dev/cinder_storage_volume
vgcreate cinder-volumes /dev/cinder_storage_volume #vgcreate cinder-volumes /dev/cinder_storage_volume
File renamed without changes.
@@ -3,7 +3,9 @@
# Write the config files # Write the config files
/etc/write_conf.sh /etc/write_conf.sh
# start cinder processes. # start cinder processes.
tgtd cinder-volume -d &
sleep 5
cinder-volume -d & cinder-volume -d &
@@ -10,9 +10,9 @@ connection = mysql+pymysql://$CINDER_USER:$CINDER_PASSWORD@$MYSQL_HOST/cinder
[DEFAULT] [DEFAULT]
auth_strategy = keystone auth_strategy = keystone
transport_url = rabbit://$RABBIT_USER:$RABBIT_PASSWORD@$RABBIT_HOST transport_url = rabbit://$RABBIT_USER:$RABBIT_PASSWORD@$MY_IP
my_ip = $MY_IP my_ip = $MY_IP
enabled_backends = lvm enabled_backends = RBD-backend
glance_api_servers = http://$GLANCE_HOST:9292 glance_api_servers = http://$GLANCE_HOST:9292
[keystone_authtoken] [keystone_authtoken]
@@ -29,11 +29,12 @@ password = $CINDER_PASSWORD
[oslo_concurrency] [oslo_concurrency]
lock_path = /var/lib/cinder/tmp lock_path = /var/lib/cinder/tmp
[lvm] [RBD-backend]
volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver volume_backend_name=RBD-backend
volume_group = cinder-volumes rbd_pool=volumes
iscsi_protocol = iscsi rbd_user=volumes
iscsi_helper = tgtadm rbd_secret_uuid=d0db6ba7-a0c9-4da6-b0bc-aa7846325333
volumes_dir = /var/lib/cinder/volumes volume_driver=cinder.volume.drivers.rbd.RBDDriver
rbd_ceph_conf=/etc/ceph/ceph.conf
EOF EOF
File renamed without changes.
@@ -14,6 +14,8 @@ RUN set -x \
python-mysqldb \ python-mysqldb \
python-openstackclient \ python-openstackclient \
python-oslo.cache \ python-oslo.cache \
python-rbd \
python-ceph \
&& apt-get -y clean \ && apt-get -y clean \
&& rm -f /var/lib/glance/glance.sqlite && rm -f /var/lib/glance/glance.sqlite
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -32,13 +32,14 @@ flavor = keystone
[glance_store] [glance_store]
stores = file,http stores = glance.store.rbd.Store
default_store = file default_store = rbd
filesystem_store_datadir = /var/lib/glance/images/ rbd_store_pool = images
rbd_store_user = images
rbd_store_ceph_conf = /etc/ceph/ceph.conf
EOF EOF
cat << EOF > /etc/glance/glance-registry.conf cat << EOF > /etc/glance/glance-registry.conf
[DEFAULT] [DEFAULT]
@@ -49,9 +50,11 @@ rpc_backend = rabbit
connection = mysql+pymysql://$GLANCE_USER:$GLANCE_PASSWORD@$MYSQL_HOST/glance connection = mysql+pymysql://$GLANCE_USER:$GLANCE_PASSWORD@$MYSQL_HOST/glance
[glance_store] [glance_store]
stores = file,http stores = glance.store.rbd.Store
default_store = file default_store = rbd
filesystem_store_datadir = /var/lib/glance/images/ rbd_store_pool = images
rbd_store_user = images
rbd_store_ceph_conf = /etc/ceph/ceph.conf
[keystone_authtoken] [keystone_authtoken]
auth_uri = http://$KEYSTONE_HOST:5000 auth_uri = http://$KEYSTONE_HOST:5000
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
View File
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -16,20 +16,29 @@ RUN set -x \
python-openstackclient \ python-openstackclient \
&& apt-get -y clean && apt-get -y clean
EXPOSE 80
EXPOSE 80 443
COPY openstack-dashboard.conf /etc/apache2/conf-available/openstack-dashboard.conf
COPY local_settings.py /etc/openstack-dashboard/local_settings.py COPY local_settings.py /etc/openstack-dashboard/local_settings.py
# Add a redirect to /keystone instead of the "It works! page" # Add a redirect to /keystone instead of the "It works! page"
COPY 000-default.conf /etc/apache2/sites-available COPY 000-default.conf /etc/apache2/sites-available
COPY run.sh /etc/run.sh
RUN chown -R www-data: /var/lib/openstack-dashboard/ RUN chown -R www-data: /var/lib/openstack-dashboard/
RUN touch /var/log/horizon.log RUN touch /var/log/horizon.log
RUN chown www-data: /var/log/horizon.log RUN chown www-data: /var/log/horizon.log
RUN chown horizon: /var/lib/openstack-dashboard/secret_key RUN a2enmod ssl
RUN a2enmod headers
RUN a2enmod rewrite
CMD apachectl -DFOREGROUND RUN chown /var/lib/openstack-dashboard/secret_key horizon
CMD /etc/run.sh
File renamed without changes.
File renamed without changes.
@@ -37,7 +37,7 @@ EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
#EMAIL_HOST_PASSWORD = 'top-secret!' #EMAIL_HOST_PASSWORD = 'top-secret!'
OPENSTACK_HOST = os.environ['KEYSTONE_HOST'] OPENSTACK_HOST = os.environ['KEYSTONE_HOST']
OPENSTACK_KEYSTONE_URL = "http://%s:5000/v3" % OPENSTACK_HOST OPENSTACK_KEYSTONE_URL = "https://%s:5000/v3" % OPENSTACK_HOST
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "_member_" OPENSTACK_KEYSTONE_DEFAULT_ROLE = "_member_"
@@ -266,7 +266,6 @@ TIME_ZONE = "UTC"
# ('default', 'Default', 'themes/default'), # ('default', 'Default', 'themes/default'),
# ('material', 'Material', 'themes/material'), # ('material', 'Material', 'themes/material'),
#] #]
LOGGING = { LOGGING = {
'version': 1, 'version': 1,
# When set to True this will disable all logging except # When set to True this will disable all logging except
@@ -288,11 +287,12 @@ LOGGING = {
}, },
'console': { 'console': {
# Set the level to "DEBUG" for verbose output logging. # Set the level to "DEBUG" for verbose output logging.
'level': 'INFO', 'level': 'DEBUG',
'class': 'logging.StreamHandler', 'class': 'logging.FileHandler',
'filename': '/var/log/horizon.log',
}, },
'operation': { 'operation': {
'level': 'INFO', 'level': 'DEBUG',
'class': 'logging.StreamHandler', 'class': 'logging.StreamHandler',
'formatter': 'operation', 'formatter': 'operation',
}, },
@@ -516,3 +516,12 @@ ALLOWED_HOSTS = '*'
COMPRESS_OFFLINE = True COMPRESS_OFFLINE = True
ALLOWED_PRIVATE_SUBNET_CIDR = {'ipv4': [], 'ipv6': []} ALLOWED_PRIVATE_SUBNET_CIDR = {'ipv4': [], 'ipv6': []}
WEBSSO_ENABLED = True
WEBSSO_CHOICES = (
("credentials", _("Keystone Credentials")),
("mapped", _("Security Assertion Markup Language"))
)
WEBSSO_INITIAL_CHOICE = "mapped"
+35
View File
@@ -0,0 +1,35 @@
<VirtualHost *:80>
RedirectMatch "^/$" "/horizon"
ServerName oscloudtest01.hpc.rug.nl
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</VirtualHost>
<VirtualHost *:443>
RedirectMatch "^/$" "/horizon"
ServerName oscloudtest01.hpc.rug.nl
SSLEngine On
SSLCertificateFile "/certs/oscloudtest01.hpc.rug.nl.crt"
SSLCertificateKeyFile "/certs/oscloudtest01.hpc.rug.nl.key"
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
# HTTP Strict Transport Security (HSTS) enforces that all communications
# with a server go over SSL. This mitigates the threat from attacks such
# as SSL-Strip which replaces links on the wire, stripping away https prefixes
# and potentially allowing an attacker to view confidential information on the
# wire
Header add Strict-Transport-Security "max-age=15768000"
Alias /horizon/static /var/lib/openstack-dashboard/static/
Alias /static /var/lib/openstack-dashboard/static/
<Directory /var/lib/openstack-dashboard/static>
Require all granted
</Directory>
WSGIScriptAlias /horizon /usr/share/openstack-dashboard/openstack_dashboard/wsgi/django.wsgi process-group=horizon
WSGIDaemonProcess horizon user=www-data group=www-data processes=3 threads=10 display-name=%{GROUP}
WSGIProcessGroup horizon
</VirtualHost>
Executable
+6
View File
@@ -0,0 +1,6 @@
#!/bin/bash
#Making the console log console again...
tail -f /var/log/horizon.log &
apachectl -DFOREGROUND
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -29,8 +29,16 @@ neutron-metadata-agent \
--config-dir /etc/neutron/ \ --config-dir /etc/neutron/ \
-v -d & -v -d &
sleep 3
neutron-l3-agent \
--config-file /etc/neutron/l3_agent.ini \
--config-file /etc/neutron/neutron.conf \
--config-file /etc/neutron/metadata_agent.ini \
--config-dir /etc/neutron/ \
-v -d &
# If any process fails, kill the rest. # If any process fails, kill the rest.
# This insures the container stops and systemd will restart it. # This ensures the container stops and systemd will restart it.
wait -n wait -n
pkill -P $$ pkill -P $$
@@ -4,15 +4,16 @@
# These are to be passed to the docker container using -e # These are to be passed to the docker container using -e
cat << EOF > /etc/neutron/neutron.conf cat << EOF > /etc/neutron/neutron.conf
[DEFAULT] [DEFAULT]
core_plugin = ml2 core_plugin = ml2
service_plugins = service_plugins = router
allow_overlapping_ips = True
transport_url = rabbit://$RABBIT_USER:$RABBIT_PASSWORD@$MY_IP transport_url = rabbit://$RABBIT_USER:$RABBIT_PASSWORD@$MY_IP
auth_strategy = keystone auth_strategy = keystone
notify_nova_on_port_status_changes = true notify_nova_on_port_status_changes = true
notify_nova_on_port_data_changes = true notify_nova_on_port_data_changes = true
dhcp_agents_per_network = 2 dhcp_agents_per_network = 2
global_physnet_mtu = $GLOBAL_PHYSNET_MTU
[agent] [agent]
root_helper = sudo /usr/bin/neutron-rootwrap /etc/neutron/rootwrap.conf root_helper = sudo /usr/bin/neutron-rootwrap /etc/neutron/rootwrap.conf
@@ -46,11 +47,10 @@ EOF
cat << EOF > /etc/neutron/plugins/ml2/ml2_conf.ini cat << EOF > /etc/neutron/plugins/ml2/ml2_conf.ini
[ml2] [ml2]
type_drivers = flat,vlan type_drivers = flat,vlan,vxlan
tenant_network_types = tenant_network_types = vxlan
mechanism_drivers = linuxbridge mechanism_drivers = linuxbridge,l2population
extension_drivers = port_security extension_drivers = port_security
path_mtu = $GLOBAL_PHYSNET_MTU
[ml2_type_vlan] [ml2_type_vlan]
network_vlan_ranges = provider network_vlan_ranges = provider
@@ -58,25 +58,14 @@ network_vlan_ranges = provider
[ml2_type_flat] [ml2_type_flat]
flat_networks = provider flat_networks = provider
[ml2_type_vxlan]
vni_ranges = 1:1000
[securitygroup] [securitygroup]
enable_ipset = true enable_ipset = true
EOF EOF
cat << EOF > /etc/neutron/plugins/ml2/linuxbridge_agent.ini
[linux_bridge]
physical_interface_mappings = $PHYSICAL_INTERFACE_MAPPINGS
[vxlan]
enable_vxlan = false
[securitygroup]
enable_security_group = true
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
EOF
cat << EOF > /etc/neutron/metadata_agent.ini cat << EOF > /etc/neutron/metadata_agent.ini
[DEFAULT] [DEFAULT]
@@ -84,3 +73,35 @@ nova_metadata_ip = $MY_IP
metadata_proxy_shared_secret = $METADATA_SECRET metadata_proxy_shared_secret = $METADATA_SECRET
EOF EOF
cat << EOF > /etc/neutron/l3_agent.ini
[DEFAULT]
interface_driver = linuxbridge
external_network_bridge =
EOF
cat << EOF > /etc/neutron/plugins/ml2/linuxbridge_agent.ini
[linux_bridge]
physical_interface_mappings = $PHYSICAL_INTERFACE_MAPPINGS
[vxlan]
enable_vxlan = True
l2_population = True
local_ip = $OVERLAY_IP
[securitygroup]
enable_security_group = true
firewall_driver = iptables
EOF
cat << EOF > /etc/neutron/l3_agent.ini
[DEFAULT]
interface_driver = linuxbridge
external_network_bridge =
EOF
File renamed without changes.
@@ -12,12 +12,15 @@ RUN set -x \
python-openstackclient \ python-openstackclient \
nova-compute \ nova-compute \
neutron-linuxbridge-agent \ neutron-linuxbridge-agent \
neutron-l3-agent \
neutron-dhcp-agent \ neutron-dhcp-agent \
neutron-metadata-agent \ neutron-metadata-agent \
python-ceph \
python-rbd \
&& apt-get -y clean && apt-get -y clean
COPY write_conf.sh /etc/write_conf.sh COPY write_conf.sh /etc/write_conf.sh
COPY run.sh /etc/run.sh COPY run.sh /etc/run.sh
RUN echo hoi
CMD ["/etc/run.sh"] CMD ["/etc/run.sh"]
File renamed without changes.
@@ -27,6 +27,14 @@ neutron-metadata-agent \
--config-dir /etc/neutron/ \ --config-dir /etc/neutron/ \
-v -d & -v -d &
sleep 3
neutron-l3-agent \
--config-file /etc/neutron/l3_agent.ini \
--config-file /etc/neutron/neutron.conf \
--config-file /etc/neutron/metadata_agent.ini \
--config-dir /etc/neutron/ \
-v -d &
# If any process fails, kill the rest. # If any process fails, kill the rest.
# This ensures the container stops and systemd will restart it. # This ensures the container stops and systemd will restart it.
@@ -121,7 +121,12 @@ allow_migrate_to_same_host = True
allow_resize_to_same_host = True allow_resize_to_same_host = True
[libvirt] [libvirt]
virt_type=kvm virt_type = kvm
images_type = rbd
images_rbd_pool = vms
images_rbd_ceph_conf = /etc/ceph/ceph.conf
rbd_user = nova
rbd_secret_uuid = b5044271-1918-4070-822c-f19ed14d7494
[vnc] [vnc]
enabled = True enabled = True
@@ -189,10 +194,11 @@ EOF
cat << EOF > /etc/neutron/neutron.conf cat << EOF > /etc/neutron/neutron.conf
[DEFAULT] [DEFAULT]
service_plugins = router
allow_overlapping_ips = True
transport_url = rabbit://$RABBIT_USER:$RABBIT_PASSWORD@$RABBIT_HOST transport_url = rabbit://$RABBIT_USER:$RABBIT_PASSWORD@$RABBIT_HOST
auth_strategy = keystone auth_strategy = keystone
core_plugin = ml2 core_plugin = ml2
global_physnet_mtu = $GLOBAL_PHYSNET_MTU
[keystone_authtoken] [keystone_authtoken]
auth_uri = http://$KEYSTONE_HOST:5000 auth_uri = http://$KEYSTONE_HOST:5000
@@ -217,17 +223,12 @@ password = $NOVA_PASSWORD
EOF EOF
cat << EOF > /etc/neutron/plugins/ml2/linuxbridge_agent.ini
[linux_bridge] cat << EOF > /etc/neutron/l3_agent.ini
physical_interface_mappings = $PHYSICAL_INTERFACE_MAPPINGS
[vxlan] [DEFAULT]
enable_vxlan = false interface_driver = linuxbridge
external_network_bridge =
[securitygroup]
enable_security_group = true
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
EOF EOF
@@ -251,11 +252,10 @@ EOF
cat << EOF > /etc/neutron/plugins/ml2/ml2_conf.ini cat << EOF > /etc/neutron/plugins/ml2/ml2_conf.ini
[ml2] [ml2]
type_drivers = flat,vlan type_drivers = flat,vlan,vxlan
tenant_network_types = tenant_network_types = vxlan
mechanism_drivers = linuxbridge mechanism_drivers = linuxbridge,l2population
extension_drivers = port_security extension_drivers = port_security
path_mtu = $GLOBAL_PHYSNET_MTU
[ml2_type_vlan] [ml2_type_vlan]
network_vlan_ranges = provider network_vlan_ranges = provider
@@ -263,7 +263,19 @@ network_vlan_ranges = provider
[ml2_type_flat] [ml2_type_flat]
flat_networks = provider flat_networks = provider
[ml2_type_vxlan]
vni_ranges = 1:100
[securitygroup] [securitygroup]
enable_ipset = true enable_ipset = true
EOF EOF
cat << EOF > /etc/neutron/plugins/ml2/linuxbridge_agent.ini
[vxlan]
enable_vxlan = True
l2_population = True
local_ip = $OVERLAY_IP
EOF
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.