# BEGIN of variables to customize
#
SHELL = /bin/bash
-ISOSRC = file:$(shell pwd)/fuel-5.1.1.iso
+ISOSRC = file:$(shell pwd)/fuel-6.0.1.iso
ISOCACHE = $(shell pwd)/$(shell basename $(ISOSRC))
PRODUCT_NAME = "OPNFV_BGS"
VERSION = "P0000"
SUBCLEAN = $(addsuffix .clean,$(SUBDIRS))
.PHONY: all
-all:
+all:
@docker version >/dev/null 2>&1 || (echo 'No Docker installation available'; exit 1)
@make -C docker
@docker/runcontext $(DOCKERIMG) $(MAKE) $(MAKEFLAGS) iso
$(ISOCACHE):
# Clone Fuel to non-persistent location and build
cd /tmp && git clone https://github.com/stackforge/fuel-main
- cd /tmp/fuel-main && git checkout 5.1.1
+ cd /tmp/fuel-main && git checkout stable/6.0
# Setup cgroups for docker-in-docker
sudo /root/enable_dockerx2
# Patch to fix race condition when doing "Docker-in-Docker" build
- cd /tmp/fuel-main && patch -p1 < $(TOPDIR)/fuel-main.patches
+ cd /tmp/fuel-main && patch -p1 < $(TOPDIR)/fuel-main_1.patch
+ # Patch to make the sandbox chroot in Fuel succeed with package
+ # installation in a Docker build
+ cd /tmp/fuel-main && patch -p1 < $(TOPDIR)/fuel-main_2.patch
# Remove Docker optimizations, otherwise multistrap will fail during
# Fuel build.
sudo rm -f /etc/apt/apt.conf.d/docker*
RUN date || date
RUN /root/setcontext $USER $UID $GID $HOME
EOF`
+GITROOT=`git rev-parse --show-toplevel`
CID=`echo $res | sed 's/.* //'`
-docker run --privileged=true --rm -i -t -e HOME=$HOME -u $USER -w $PWD -v ${HOME}/.ssh:${HOME}/.ssh -v $PWD:$PWD $CID "$@"
+docker run --privileged=true --rm -i -t -e HOME=$HOME -u $USER -w $PWD -v ${HOME}/.ssh:${HOME}/.ssh -v $GITROOT:$GITROOT $CID "$@"
rc=$?
docker rmi $CID > /dev/null
exit $rc
parted -s /dev/$check_drive print
echo
read -p "Are you sure you want to erase ALL data on disk $check_drive? (y/N)" confirm_format
- if [[ "$confirm_format" == "y" ]] || [[ "$forceformat" == "yes" ]]; then
+ if [[ "$confirm_format" == "y" ]] || [[ "$confirm_format" == "Y" ]] || [[ "$forceformat" == "yes" ]]; then
return 0
else
return 1
mount -o loop ${FS}/nailgun.iso ${SOURCE}
fi
-# Copying Repo to the nailgun /var/www directory
-repodir="/var/www/nailgun"
-mkdir -p ${repodir}/centos/fuelweb/x86_64
-cp -r ${SOURCE}/images ${repodir}/centos/fuelweb/x86_64
-cp -r ${SOURCE}/isolinux ${repodir}/centos/fuelweb/x86_64
-cp -r ${SOURCE}/repodata ${repodir}/centos/fuelweb/x86_64
-cp -r ${SOURCE}/Packages ${repodir}/centos/fuelweb/x86_64
-cp ${SOURCE}/.treeinfo ${repodir}/centos/fuelweb/x86_64
+OPENSTACK_VERSION=`cat ${SOURCE}/openstack_version`
+
+# ----------------------
+# UNPACKING REPOSITORIES
+# ----------------------
+
+wwwdir="/var/www/nailgun"
+repodir="${wwwdir}/${OPENSTACK_VERSION}"
+
+# Copying Centos files
+mkdir -p ${repodir}/centos/x86_64
+cp -r ${SOURCE}/images ${repodir}/centos/x86_64
+cp -r ${SOURCE}/isolinux ${repodir}/centos/x86_64
+cp -r ${SOURCE}/repodata ${repodir}/centos/x86_64
+cp -r ${SOURCE}/Packages ${repodir}/centos/x86_64
+cp ${SOURCE}/.treeinfo ${repodir}/centos/x86_64
# Copying Ubuntu files
-mkdir -p ${repodir}/ubuntu/fuelweb/x86_64/images
-cp -r ${SOURCE}/ubuntu/conf ${repodir}/ubuntu/fuelweb/x86_64
-cp -r ${SOURCE}/ubuntu/db ${repodir}/ubuntu/fuelweb/x86_64
-cp -r ${SOURCE}/ubuntu/dists ${repodir}/ubuntu/fuelweb/x86_64
-cp -r ${SOURCE}/ubuntu/indices ${repodir}/ubuntu/fuelweb/x86_64
-cp -r ${SOURCE}/ubuntu/pool ${repodir}/ubuntu/fuelweb/x86_64
-cp -r ${SOURCE}/ubuntu/installer-amd64/current/images/netboot/ubuntu-installer/amd64/linux ${repodir}/ubuntu/fuelweb/x86_64/images
-cp -r ${SOURCE}/ubuntu/installer-amd64/current/images/netboot/ubuntu-installer/amd64/initrd.gz ${repodir}/ubuntu/fuelweb/x86_64/images
+mkdir -p ${repodir}/ubuntu/x86_64/images
+cp -r ${SOURCE}/ubuntu/conf ${repodir}/ubuntu/x86_64
+cp -r ${SOURCE}/ubuntu/db ${repodir}/ubuntu/x86_64
+cp -r ${SOURCE}/ubuntu/dists ${repodir}/ubuntu/x86_64
+cp -r ${SOURCE}/ubuntu/indices ${repodir}/ubuntu/x86_64
+cp -r ${SOURCE}/ubuntu/pool ${repodir}/ubuntu/x86_64
+cp -r ${SOURCE}/ubuntu/installer-amd64/current/images/netboot/ubuntu-installer/amd64/linux ${repodir}/ubuntu/x86_64/images
+cp -r ${SOURCE}/ubuntu/installer-amd64/current/images/netboot/ubuntu-installer/amd64/initrd.gz ${repodir}/ubuntu/x86_64/images
+
+# make links for backward compatibility
+ln -s ${repodir}/centos ${wwwdir}/centos
+ln -s ${repodir}/ubuntu ${wwwdir}/ubuntu
# Copying bootstrap image
-mkdir -p ${repodir}/bootstrap
-cp -r ${SOURCE}/bootstrap/initramfs.img ${repodir}/bootstrap
-cp -r ${SOURCE}/bootstrap/linux ${repodir}/bootstrap
+mkdir -p ${wwwdir}/bootstrap
+cp -r ${SOURCE}/bootstrap/initramfs.img ${wwwdir}/bootstrap
+cp -r ${SOURCE}/bootstrap/linux ${wwwdir}/bootstrap
+
+# Copying target images
+cp -r ${SOURCE}/targetimages ${wwwdir}
mkdir -p /root/.ssh
chmod 700 /root/.ssh
cp ${SOURCE}/bootstrap/bootstrap.rsa /root/.ssh
chmod 600 /root/.ssh/bootstrap.rsa
-# Unpacking puppet manifests for master and slave
-cp ${SOURCE}/puppet-slave.tgz ${repodir}/
-tar zxf ${SOURCE}/puppet-slave.tgz -C /etc/puppet/modules
-mkdir -p /etc/puppet/manifests/
-cp /etc/puppet/modules/osnailyfacter/examples/site.pp /etc/puppet/manifests/site.pp
-cp ${SOURCE}/centos-versions.yaml ${SOURCE}/ubuntu-versions.yaml /etc/puppet/manifests/
+# --------------------------
+# UNPACKING PUPPET MANIFESTS
+# --------------------------
+
+# create folders
+mkdir -p /etc/puppet/${OPENSTACK_VERSION}/manifests/
+mkdir -p /etc/puppet/${OPENSTACK_VERSION}/modules/
+rm -rf /etc/puppet/modules/
+
+# TODO(ikalnitsky): investigate why we need this
+cp ${SOURCE}/puppet-slave.tgz ${wwwdir}/
+
+# place modules and manifests
+tar zxf ${SOURCE}/puppet-slave.tgz -C /etc/puppet/${OPENSTACK_VERSION}/modules
+cp /etc/puppet/${OPENSTACK_VERSION}/modules/osnailyfacter/examples/site.pp /etc/puppet/${OPENSTACK_VERSION}/manifests/site.pp
+cp ${SOURCE}/centos-versions.yaml ${SOURCE}/ubuntu-versions.yaml /etc/puppet/${OPENSTACK_VERSION}/manifests/
+
+# make links for backward compatibility
+pushd /etc/puppet
+ln -s ${OPENSTACK_VERSION}/manifests/ /etc/puppet/manifests
+ln -s ${OPENSTACK_VERSION}/modules/ /etc/puppet/modules
+popd
+
cp ${SOURCE}/send2syslog.py /bin/send2syslog.py
mkdir -p /var/lib/hiera
touch /var/lib/hiera/common.yaml /etc/puppet/hiera.yaml
# Deploy docker images and ctl tools if we built ISO with docker containers support
-[ -d "${SOURCE}/docker" ] && cp -r ${SOURCE}/docker ${repodir}/docker
+[ -d "${SOURCE}/docker" ] && cp -r ${SOURCE}/docker ${wwwdir}/docker
# Prepare local repository specification
rm /etc/yum.repos.d/CentOS*.repo
cat > /etc/yum.repos.d/nailgun.repo << EOF
[nailgun]
name=Nailgun Local Repo
-baseurl=file:/var/www/nailgun/centos/fuelweb/x86_64
+baseurl=file:/var/www/nailgun/${OPENSTACK_VERSION}/centos/x86_64
gpgcheck=0
EOF
ipstr="Fuel UI is available on: http://\$ip:8000"
first=no
else
- ipstr=\$(printf "%s\n%51s" "\$ipstr" "http://\$ip:8000")
+ ipstr=\$(printf "%s\n%25s%s" "\$ipstr" " " "http://\$ip:8000")
fi
done
tmpissue=\$(mktemp)
parted -s /dev/$check_drive print
echo
read -p "Are you sure you want to erase ALL data on disk $check_drive? (y/N)" confirm_format
- if [[ "$confirm_format" == "y" ]] || [[ "$forceformat" == "yes" ]]; then
+ if [[ "$confirm_format" == "y" ]] || [[ "$confirm_format" == "Y" ]] || [[ "$forceformat" == "yes" ]]; then
return 0
else
return 1
mount -o loop ${FS}/nailgun.iso ${SOURCE}
fi
-# Copying Repo to the nailgun /var/www directory
-repodir="/var/www/nailgun"
-mkdir -p ${repodir}/centos/fuelweb/x86_64
-cp -r ${SOURCE}/images ${repodir}/centos/fuelweb/x86_64
-cp -r ${SOURCE}/isolinux ${repodir}/centos/fuelweb/x86_64
-cp -r ${SOURCE}/repodata ${repodir}/centos/fuelweb/x86_64
-cp -r ${SOURCE}/Packages ${repodir}/centos/fuelweb/x86_64
-cp ${SOURCE}/.treeinfo ${repodir}/centos/fuelweb/x86_64
+OPENSTACK_VERSION=`cat ${SOURCE}/openstack_version`
+
+# ----------------------
+# UNPACKING REPOSITORIES
+# ----------------------
+
+wwwdir="/var/www/nailgun"
+repodir="${wwwdir}/${OPENSTACK_VERSION}"
+
+# Copying Centos files
+mkdir -p ${repodir}/centos/x86_64
+cp -r ${SOURCE}/images ${repodir}/centos/x86_64
+cp -r ${SOURCE}/isolinux ${repodir}/centos/x86_64
+cp -r ${SOURCE}/repodata ${repodir}/centos/x86_64
+cp -r ${SOURCE}/Packages ${repodir}/centos/x86_64
+cp ${SOURCE}/.treeinfo ${repodir}/centos/x86_64
# Copying Ubuntu files
-mkdir -p ${repodir}/ubuntu/fuelweb/x86_64/images
-cp -r ${SOURCE}/ubuntu/conf ${repodir}/ubuntu/fuelweb/x86_64
-cp -r ${SOURCE}/ubuntu/db ${repodir}/ubuntu/fuelweb/x86_64
-cp -r ${SOURCE}/ubuntu/dists ${repodir}/ubuntu/fuelweb/x86_64
-cp -r ${SOURCE}/ubuntu/indices ${repodir}/ubuntu/fuelweb/x86_64
-cp -r ${SOURCE}/ubuntu/pool ${repodir}/ubuntu/fuelweb/x86_64
-cp -r ${SOURCE}/ubuntu/installer-amd64/current/images/netboot/ubuntu-installer/amd64/linux ${repodir}/ubuntu/fuelweb/x86_64/images
-cp -r ${SOURCE}/ubuntu/installer-amd64/current/images/netboot/ubuntu-installer/amd64/initrd.gz ${repodir}/ubuntu/fuelweb/x86_64/images
+mkdir -p ${repodir}/ubuntu/x86_64/images
+cp -r ${SOURCE}/ubuntu/conf ${repodir}/ubuntu/x86_64
+cp -r ${SOURCE}/ubuntu/db ${repodir}/ubuntu/x86_64
+cp -r ${SOURCE}/ubuntu/dists ${repodir}/ubuntu/x86_64
+cp -r ${SOURCE}/ubuntu/indices ${repodir}/ubuntu/x86_64
+cp -r ${SOURCE}/ubuntu/pool ${repodir}/ubuntu/x86_64
+cp -r ${SOURCE}/ubuntu/installer-amd64/current/images/netboot/ubuntu-installer/amd64/linux ${repodir}/ubuntu/x86_64/images
+cp -r ${SOURCE}/ubuntu/installer-amd64/current/images/netboot/ubuntu-installer/amd64/initrd.gz ${repodir}/ubuntu/x86_64/images
+
+# make links for backward compatibility
+ln -s ${repodir}/centos ${wwwdir}/centos
+ln -s ${repodir}/ubuntu ${wwwdir}/ubuntu
# Copying bootstrap image
-mkdir -p ${repodir}/bootstrap
-cp -r ${SOURCE}/bootstrap/initramfs.img ${repodir}/bootstrap
-cp -r ${SOURCE}/bootstrap/linux ${repodir}/bootstrap
+mkdir -p ${wwwdir}/bootstrap
+cp -r ${SOURCE}/bootstrap/initramfs.img ${wwwdir}/bootstrap
+cp -r ${SOURCE}/bootstrap/linux ${wwwdir}/bootstrap
+
+# Copying target images
+cp -r ${SOURCE}/targetimages ${wwwdir}
mkdir -p /root/.ssh
chmod 700 /root/.ssh
cp ${SOURCE}/bootstrap/bootstrap.rsa /root/.ssh
chmod 600 /root/.ssh/bootstrap.rsa
-# Unpacking puppet manifests for master and slave
-cp ${SOURCE}/puppet-slave.tgz ${repodir}/
-tar zxf ${SOURCE}/puppet-slave.tgz -C /etc/puppet/modules
-mkdir -p /etc/puppet/manifests/
-cp /etc/puppet/modules/osnailyfacter/examples/site.pp /etc/puppet/manifests/site.pp
-cp ${SOURCE}/centos-versions.yaml ${SOURCE}/ubuntu-versions.yaml /etc/puppet/manifests/
+# --------------------------
+# UNPACKING PUPPET MANIFESTS
+# --------------------------
+
+# create folders
+mkdir -p /etc/puppet/${OPENSTACK_VERSION}/manifests/
+mkdir -p /etc/puppet/${OPENSTACK_VERSION}/modules/
+rm -rf /etc/puppet/modules/
+
+# TODO(ikalnitsky): investigate why we need this
+cp ${SOURCE}/puppet-slave.tgz ${wwwdir}/
+
+# place modules and manifests
+tar zxf ${SOURCE}/puppet-slave.tgz -C /etc/puppet/${OPENSTACK_VERSION}/modules
+cp /etc/puppet/${OPENSTACK_VERSION}/modules/osnailyfacter/examples/site.pp /etc/puppet/${OPENSTACK_VERSION}/manifests/site.pp
+cp ${SOURCE}/centos-versions.yaml ${SOURCE}/ubuntu-versions.yaml /etc/puppet/${OPENSTACK_VERSION}/manifests/
+
+# make links for backward compatibility
+pushd /etc/puppet
+ln -s ${OPENSTACK_VERSION}/manifests/ /etc/puppet/manifests
+ln -s ${OPENSTACK_VERSION}/modules/ /etc/puppet/modules
+popd
+
cp ${SOURCE}/send2syslog.py /bin/send2syslog.py
mkdir -p /var/lib/hiera
touch /var/lib/hiera/common.yaml /etc/puppet/hiera.yaml
# Deploy docker images and ctl tools if we built ISO with docker containers support
-[ -d "${SOURCE}/docker" ] && cp -r ${SOURCE}/docker ${repodir}/docker
+[ -d "${SOURCE}/docker" ] && cp -r ${SOURCE}/docker ${wwwdir}/docker
# Prepare local repository specification
rm /etc/yum.repos.d/CentOS*.repo
cat > /etc/yum.repos.d/nailgun.repo << EOF
[nailgun]
name=Nailgun Local Repo
-baseurl=file:/var/www/nailgun/centos/fuelweb/x86_64
+baseurl=file:/var/www/nailgun/${OPENSTACK_VERSION}/centos/x86_64
gpgcheck=0
EOF
ipstr="Fuel UI is available on: http://\$ip:8000"
first=no
else
- ipstr=\$(printf "%s\n%51s" "\$ipstr" "http://\$ip:8000")
+ ipstr=\$(printf "%s\n%25s%s" "\$ipstr" " " "http://\$ip:8000")
fi
done
tmpissue=\$(mktemp)
--- /dev/null
+# Class: opnfv::add_packages
+#
+# Ensure added packages are installed:
+#
+
+class opnfv::add_packages {
+ if $::osfamily == 'Debian' {
+ }
+}
$base_syslog_hash = $::fuel_settings['base_syslog']
$syslog_hash = $::fuel_settings['syslog']
+ $disable_offload = $::fuel_settings['disable_offload']
+ if $disable_offload {
+ L23network::L3::Ifconfig<||> {
+ ethtool => {
+ 'K' => ['gso off', 'gro off'],
+ }
+ }
+ }
+
+ $use_neutron = $::fuel_settings['quantum']
- $use_quantum = $::fuel_settings['quantum']
if (!empty(filter_nodes($::fuel_settings['nodes'], 'role', 'ceph-osd')) or
$::fuel_settings['storage']['volumes_ceph'] or
$::fuel_settings['storage']['images_ceph'] or
}
- if $use_quantum {
+ if $use_neutron {
prepare_network_config($::fuel_settings['network_scheme'])
#
$internal_int = get_network_role_property('management', 'interface')
if $public_int {
$public_address = get_network_role_property('ex', 'ipaddr')
$public_netmask = get_network_role_property('ex', 'netmask')
+
+ # TODO(Xarses): remove this after completing merge of
+ # multiple-cluster-networks
+ L23network::L3::Ifconfig<| title == $public_int |> {
+ default_gateway => true
+ }
+ } else {
+ # TODO(Xarses): remove this after completing merge of
+ # multiple-cluster-networks
+ $fw_admin_int = get_network_role_property('fw-admin', 'interface')
+ L23network::L3::Ifconfig<| title == $fw_admin_int |> {
+ default_gateway => true
+ }
}
#
$storage_address = get_network_role_property('storage', 'ipaddr')
$internal_br = $node[0]['internal_br']
$public_int = $::fuel_settings['public_interface']
$internal_int = $::fuel_settings['management_interface']
+
+ # TODO(Xarses): remove this after completing merge of
+ # multiple-cluster-networks
+ L23network::L3::Ifconfig<| title == $public_int |> {
+ default_gateway => true
+ }
+
}
}
$syslog_log_facility_heat = 'LOG_LOCAL0'
$syslog_log_facility_sahara = 'LOG_LOCAL0'
$syslog_log_facility_ceilometer = 'LOG_LOCAL0'
+$syslog_log_facility_ceph = 'LOG_LOCAL0'
+
+### Monit ###
+# Monit for compute nodes.
+# If enabled, will install monit and configure its watchdogs to track
+# nova-compute/api/network (and openvswitch service, if neutron enabled)
+# at compute nodes.
+# TODO(bogdando) set to true once monit package shipped with Fuel ISO
+$use_monit = false
$nova_rate_limits = {
'POST' => 100000,
class os_common {
# OPNFV check if pre_deploy.sh has been run, otherwise fail
class {'opnfv::opncheck': stage => 'opncheck' }
- if ($::fuel_settings['neutron_mellanox']) and ($::fuel_settings['storage']['iser']) {
+ if ($::fuel_settings['neutron_mellanox']) {
+ if ($::mellanox_mode != 'disabled') {
+ class { 'mellanox_openstack::ofed_recompile' :
+ stage => 'zero',
+ }
+ }
+ if ($::fuel_settings['storage']['iser']) {
class { 'mellanox_openstack::iser_rename':
- stage => 'zero',
- storage_parent => $::fuel_settings['neutron_mellanox']['storage_parent'],
- iser_interface_name => $::fuel_settings['neutron_mellanox']['iser_interface_name'],
+ stage => 'zero',
+ storage_parent => $::fuel_settings['neutron_mellanox']['storage_parent'],
+ iser_interface_name => $::fuel_settings['neutron_mellanox']['iser_interface_name'],
}
+ Class['mellanox_openstack::ofed_recompile'] -> Class['mellanox_openstack::iser_rename']
+ }
}
class {"l23network::hosts_file": stage => 'netconfig', nodes => $nodes_hash, extras => $extras_hash }
- class {'l23network': use_ovs=>$use_quantum, stage=> 'netconfig'}
- if $use_quantum {
+ class {'l23network': use_ovs=>$use_neutron, stage=> 'netconfig'}
+ if $use_neutron {
class {'advanced_node_netconfig': stage => 'netconfig' }
} else {
class {'osnailyfacter::network_setup': stage => 'netconfig'}
}
+ if ($::osfamily == 'RedHat') {
+ package {'irqbalance': ensure => present} -> service {'irqbalance': ensure => running }
+ }
+
class { 'openstack::firewall':
stage => 'openstack-firewall',
nova_vnc_ip_range => $::fuel_settings['management_network_range'],
}
}
+ class { 'osnailyfacter::atop':
+ stage => 'first',
+ }
+
#case $role {
# /controller/: { $hostgroup = 'controller' }
# /swift-proxy/: { $hostgroup = 'swift-proxy' }
}
class { 'puppet::pull' :
- master_ip => $::fuel_settings['master_ip'],
+ modules_source => $::fuel_settings['puppet_modules_source'],
+ manifests_source => $::fuel_settings['puppet_manifests_source'],
}
} # OS_COMMON ENDS
/^(ha|ha_compact)$/: {
include "osnailyfacter::cluster_ha"
class {'os_common':}
- class {'corosync::commitorder': stage=>'main'}
class {'opnfv':}
}
"rpmcache": { include osnailyfacter::rpmcache }
$base_syslog_hash = $::fuel_settings['base_syslog']
$syslog_hash = $::fuel_settings['syslog']
+ $disable_offload = $::fuel_settings['disable_offload']
+ if $disable_offload {
+ L23network::L3::Ifconfig<||> {
+ ethtool => {
+ 'K' => ['gso off', 'gro off'],
+ }
+ }
+ }
+
+ $use_neutron = $::fuel_settings['quantum']
- $use_quantum = $::fuel_settings['quantum']
if (!empty(filter_nodes($::fuel_settings['nodes'], 'role', 'ceph-osd')) or
$::fuel_settings['storage']['volumes_ceph'] or
$::fuel_settings['storage']['images_ceph'] or
}
- if $use_quantum {
+ if $use_neutron {
prepare_network_config($::fuel_settings['network_scheme'])
#
$internal_int = get_network_role_property('management', 'interface')
if $public_int {
$public_address = get_network_role_property('ex', 'ipaddr')
$public_netmask = get_network_role_property('ex', 'netmask')
+
+ # TODO(Xarses): remove this after completing merge of
+ # multiple-cluster-networks
+ L23network::L3::Ifconfig<| title == $public_int |> {
+ default_gateway => true
+ }
+ } else {
+ # TODO(Xarses): remove this after completing merge of
+ # multiple-cluster-networks
+ $fw_admin_int = get_network_role_property('fw-admin', 'interface')
+ L23network::L3::Ifconfig<| title == $fw_admin_int |> {
+ default_gateway => true
+ }
}
#
$storage_address = get_network_role_property('storage', 'ipaddr')
$internal_br = $node[0]['internal_br']
$public_int = $::fuel_settings['public_interface']
$internal_int = $::fuel_settings['management_interface']
+
+ # TODO(Xarses): remove this after completing merge of
+ # multiple-cluster-networks
+ L23network::L3::Ifconfig<| title == $public_int |> {
+ default_gateway => true
+ }
+
}
}
$syslog_log_facility_heat = 'LOG_LOCAL0'
$syslog_log_facility_sahara = 'LOG_LOCAL0'
$syslog_log_facility_ceilometer = 'LOG_LOCAL0'
+$syslog_log_facility_ceph = 'LOG_LOCAL0'
+
+### Monit ###
+# Monit for compute nodes.
+# If enabled, will install monit and configure its watchdogs to track
+# nova-compute/api/network (and openvswitch service, if neutron enabled)
+# at compute nodes.
+# TODO(bogdando) set to true once monit package shipped with Fuel ISO
+$use_monit = false
$nova_rate_limits = {
'POST' => 100000,
}
class os_common {
- if ($::fuel_settings['neutron_mellanox']) and ($::fuel_settings['storage']['iser']) {
+ if ($::fuel_settings['neutron_mellanox']) {
+ if ($::mellanox_mode != 'disabled') {
+ class { 'mellanox_openstack::ofed_recompile' :
+ stage => 'zero',
+ }
+ }
+ if ($::fuel_settings['storage']['iser']) {
class { 'mellanox_openstack::iser_rename':
- stage => 'zero',
- storage_parent => $::fuel_settings['neutron_mellanox']['storage_parent'],
- iser_interface_name => $::fuel_settings['neutron_mellanox']['iser_interface_name'],
+ stage => 'zero',
+ storage_parent => $::fuel_settings['neutron_mellanox']['storage_parent'],
+ iser_interface_name => $::fuel_settings['neutron_mellanox']['iser_interface_name'],
}
+ Class['mellanox_openstack::ofed_recompile'] -> Class['mellanox_openstack::iser_rename']
+ }
}
+
class {"l23network::hosts_file": stage => 'netconfig', nodes => $nodes_hash }
- class {'l23network': use_ovs=>$use_quantum, stage=> 'netconfig'}
- if $use_quantum {
+ class {'l23network': use_ovs=>$use_neutron, stage=> 'netconfig'}
+ if $use_neutron {
class {'advanced_node_netconfig': stage => 'netconfig' }
} else {
class {'osnailyfacter::network_setup': stage => 'netconfig'}
}
+ if ($::osfamily == 'RedHat') {
+ package {'irqbalance': ensure => present} -> service {'irqbalance': ensure => running }
+ }
+
class { 'openstack::firewall':
stage => 'openstack-firewall',
nova_vnc_ip_range => $::fuel_settings['management_network_range'],
}
}
+ class { 'osnailyfacter::atop':
+ stage => 'first',
+ }
+
#case $role {
# /controller/: { $hostgroup = 'controller' }
# /swift-proxy/: { $hostgroup = 'swift-proxy' }
}
class { 'puppet::pull' :
- master_ip => $::fuel_settings['master_ip'],
+ modules_source => $::fuel_settings['puppet_modules_source'],
+ manifests_source => $::fuel_settings['puppet_manifests_source'],
}
} # OS_COMMON ENDS
/^(ha|ha_compact)$/: {
include "osnailyfacter::cluster_ha"
class {'os_common':}
- class {'corosync::commitorder': stage=>'main'}
}
"rpmcache": { include osnailyfacter::rpmcache }
}
--- /dev/null
+*** fuel-main/sandbox.mk.orig 2015-02-13 12:12:55.362989171 +0100
+--- fuel-main/sandbox.mk 2015-02-13 14:50:39.103017653 +0100
+***************
+*** 71,77 ****
+--- 71,83 ----
+ echo "Updating apt package database"
+ sudo chroot $(SANDBOX_UBUNTU) apt-get update
+ echo "Installing additional packages: $(SANDBOX_DEB_PKGS)"
++ test -e $(SANDBOX_UBUNTU)/sbin/start.orig || mv $(SANDBOX_UBUNTU)/sbin/start $(SANDBOX_UBUNTU)/sbin/start.orig
++ echo "#!/bin/sh" > $(SANDBOX_UBUNTU)/sbin/start
++ echo "exit 0" >> $(SANDBOX_UBUNTU)/sbin/start
++ chmod 755 $(SANDBOX_UBUNTU)/sbin/start
+ test -n "$(SANDBOX_DEB_PKGS)" && sudo chroot $(SANDBOX_UBUNTU) apt-get install --yes $(SANDBOX_DEB_PKGS)
++ test -e $(SANDBOX_UBUNTU)/sbin/start.orig && (cp $(SANDBOX_UBUNTU)/sbin/start.orig $(SANDBOX_UBUNTU)/sbin/start; \
++ rm $(SANDBOX_UBUNTU)/sbin/start.orig)
+ echo "SANDBOX_UBUNTU_UP: done"
+ endef
.PHONY: release
release:
- ../tools/deb_unpack python-nova_2014.1.3-fuel5.1.1~mira3_all.deb $(ORIGISO)
+ ../tools/deb_unpack python-nova_*.deb $(ORIGISO)
patch -s -p0 < nova-console.patch
../tools/deb_pack $(VERSION)
@cp *.deb ../release/packages
---- package/usr/share/pyshared/nova/virt/libvirt/driver.py.org
-+++ package/usr/share/pyshared/nova/virt/libvirt/driver.py
-@@ -3280,10 +3280,10 @@
- # client app is connected. Thus we can't get away
- # with a single type=pty console. Instead we have
- # to configure two separate consoles.
-- consolelog = vconfig.LibvirtConfigGuestSerial()
-- consolelog.type = "file"
-- consolelog.source_path = self._get_console_log_path(instance)
-- guest.add_device(consolelog)
-+ #consolelog = vconfig.LibvirtConfigGuestSerial()
-+ #consolelog.type = "file"
-+ #consolelog.source_path = self._get_console_log_path(instance)
-+ #guest.add_device(consolelog)
-
- consolepty = vconfig.LibvirtConfigGuestSerial()
- consolepty.type = "pty"
+*** package/usr/share/pyshared/nova/virt/libvirt/driver.py.orig 2015-02-16 14:19:53.203052869 +0100
+--- package/usr/share/pyshared/nova/virt/libvirt/driver.py 2015-02-16 14:22:53.065017671 +0100
+***************
+*** 3959,3968 ****
+ # client app is connected. Thus we can't get away
+ # with a single type=pty console. Instead we have
+ # to configure two separate consoles.
+! consolelog = vconfig.LibvirtConfigGuestSerial()
+! consolelog.type = "file"
+! consolelog.source_path = self._get_console_log_path(instance)
+! guest.add_device(consolelog)
+
+ consolepty = vconfig.LibvirtConfigGuestSerial()
+ else:
+--- 3959,3971 ----
+ # client app is connected. Thus we can't get away
+ # with a single type=pty console. Instead we have
+ # to configure two separate consoles.
+! # Disabled by OPNFV BEGIN
+! # consolelog = vconfig.LibvirtConfigGuestSerial()
+! # consolelog.type = "file"
+! # consolelog.source_path = self._get_console_log_path(instance)
+! # guest.add_device(consolelog)
+! pass
+! # Disabled by OPNFV END
+
+ consolepty = vconfig.LibvirtConfigGuestSerial()
+ else: