commit 86a59e7ede8a254a196c3082d6e02bc24e073527 Author: Arif Ali Date: Wed Sep 24 20:40:46 2014 +0100 Initial commit of files Signed-off-by: Arif Ali diff --git a/packstack/packstack-answers-aali.txt b/packstack/packstack-answers-aali.txt new file mode 100644 index 0000000..83b5aed --- /dev/null +++ b/packstack/packstack-answers-aali.txt @@ -0,0 +1,503 @@ +[general] + +# Path to a Public key to install on servers. If a usable key has not +# been installed on the remote servers the user will be prompted for a +# password and this key will be installed so the password will not be +# required again +CONFIG_SSH_KEY=/root/.ssh/id_rsa.pub + +# Set to 'y' if you would like Packstack to install MySQL +CONFIG_MYSQL_INSTALL=y + +# Set to 'y' if you would like Packstack to install OpenStack Image +# Service (Glance) +CONFIG_GLANCE_INSTALL=y + +# Set to 'y' if you would like Packstack to install OpenStack Block +# Storage (Cinder) +CONFIG_CINDER_INSTALL=y + +# Set to 'y' if you would like Packstack to install OpenStack Compute +# (Nova) +CONFIG_NOVA_INSTALL=y + +# Set to 'y' if you would like Packstack to install OpenStack +# Networking (Neutron). Otherwise Nova Network will be used. +CONFIG_NEUTRON_INSTALL=y + +# Set to 'y' if you would like Packstack to install OpenStack +# Dashboard (Horizon) +CONFIG_HORIZON_INSTALL=y + +# Set to 'y' if you would like Packstack to install OpenStack Object +# Storage (Swift) +CONFIG_SWIFT_INSTALL=n + +# Set to 'y' if you would like Packstack to install OpenStack +# Metering (Ceilometer) +CONFIG_CEILOMETER_INSTALL=n + +# Set to 'y' if you would like Packstack to install OpenStack +# Orchestration (Heat) +CONFIG_HEAT_INSTALL=n + +# Set to 'y' if you would like Packstack to install the OpenStack +# Client packages. An admin "rc" file will also be installed +CONFIG_CLIENT_INSTALL=y + +# Comma separated list of NTP servers. Leave plain if Packstack +# should not install ntpd on instances. +CONFIG_NTP_SERVERS= + +# Set to 'y' if you would like Packstack to install Nagios to monitor +# OpenStack hosts +CONFIG_NAGIOS_INSTALL=n + +# Comma separated list of servers to be excluded from installation in +# case you are running Packstack the second time with the same answer +# file and don't want Packstack to touch these servers. Leave plain if +# you don't need to exclude any server. +EXCLUDE_SERVERS= + +# Set to 'y' if you want to run OpenStack services in debug mode. +# Otherwise set to 'n'. +CONFIG_DEBUG_MODE=n + +# The IP address of the server on which to install OpenStack services +# specific to controller role such as API servers, Horizon, etc. +CONFIG_CONTROLLER_HOST=##OPENSTACK_MASTER## + +# The list of IP addresses of the server on which to install the Nova +# compute service +CONFIG_COMPUTE_HOSTS=##OPENSTACK_MASTER## + +# The list of IP addresses of the server on which to install the +# network service such as Nova network or Neutron +CONFIG_NETWORK_HOSTS=##OPENSTACK_MASTER## + +# Set to 'y' if you want to use VMware vCenter as hypervisor and +# storage. Otherwise set to 'n'. +CONFIG_VMWARE_BACKEND=n + +# The IP address of the VMware vCenter server +CONFIG_VCENTER_HOST=##OPENSTACK_MASTER## + +# The username to authenticate to VMware vCenter server +CONFIG_VCENTER_USER= + +# The password to authenticate to VMware vCenter server +CONFIG_VCENTER_PASSWORD= + +# The name of the vCenter cluster +CONFIG_VCENTER_CLUSTER_NAME= + +# To subscribe each server to EPEL enter "y" +CONFIG_USE_EPEL=n + +# A comma separated list of URLs to any additional yum repositories +# to install +CONFIG_REPO= + +# To subscribe each server with Red Hat subscription manager, include +# this with CONFIG_RH_PW +CONFIG_RH_USER= + +# To subscribe each server with Red Hat subscription manager, include +# this with CONFIG_RH_USER +CONFIG_RH_PW= + +# To enable RHEL optional repos use value "y" +CONFIG_RH_OPTIONAL=y + +# To subscribe each server with RHN Satellite,fill Satellite's URL +# here. Note that either satellite's username/password or activation +# key has to be provided +CONFIG_SATELLITE_URL= + +# Username to access RHN Satellite +CONFIG_SATELLITE_USER= + +# Password to access RHN Satellite +CONFIG_SATELLITE_PW= + +# Activation key for subscription to RHN Satellite +CONFIG_SATELLITE_AKEY= + +# Specify a path or URL to a SSL CA certificate to use +CONFIG_SATELLITE_CACERT= + +# If required specify the profile name that should be used as an +# identifier for the system in RHN Satellite +CONFIG_SATELLITE_PROFILE= + +# Comma separated list of flags passed to rhnreg_ks. Valid flags are: +# novirtinfo, norhnsd, nopackages +CONFIG_SATELLITE_FLAGS= + +# Specify a HTTP proxy to use with RHN Satellite +CONFIG_SATELLITE_PROXY= + +# Specify a username to use with an authenticated HTTP proxy +CONFIG_SATELLITE_PROXY_USER= + +# Specify a password to use with an authenticated HTTP proxy. +CONFIG_SATELLITE_PROXY_PW= + +# Set the AMQP service backend. Allowed values are: qpid, rabbitmq +CONFIG_AMQP_BACKEND=rabbitmq + +# The IP address of the server on which to install the AMQP service +CONFIG_AMQP_HOST=##OPENSTACK_MASTER## + +# Enable SSL for the AMQP service +CONFIG_AMQP_ENABLE_SSL=n + +# Enable Authentication for the AMQP service +CONFIG_AMQP_ENABLE_AUTH=n + +# The password for the NSS certificate database of the AMQP service +CONFIG_AMQP_NSS_CERTDB_PW=f0b6acd5054c43c7afa1c33f563e9d0a + +# The port in which the AMQP service listens to SSL connections +CONFIG_AMQP_SSL_PORT=5671 + +# The filename of the certificate that the AMQP service is going to +# use +CONFIG_AMQP_SSL_CERT_FILE=/etc/pki/tls/certs/amqp_selfcert.pem + +# The filename of the private key that the AMQP service is going to +# use +CONFIG_AMQP_SSL_KEY_FILE=/etc/pki/tls/private/amqp_selfkey.pem + +# Auto Generates self signed SSL certificate and key +CONFIG_AMQP_SSL_SELF_SIGNED=y + +# User for amqp authentication +CONFIG_AMQP_AUTH_USER=amqp_user + +# Password for user authentication +CONFIG_AMQP_AUTH_PASSWORD=728c1ff2fcf148d4 + +# The IP address of the server on which to install MySQL or IP +# address of DB server to use if MySQL installation was not selected +CONFIG_MYSQL_HOST=##OPENSTACK_MASTER## + +# Username for the MySQL admin user +CONFIG_MYSQL_USER=root + +# Password for the MySQL admin user +CONFIG_MYSQL_PW=319fae3b53744e31 + +# The password to use for the Keystone to access DB +CONFIG_KEYSTONE_DB_PW=a659bf672e4d4f22 + +# The token to use for the Keystone service api +CONFIG_KEYSTONE_ADMIN_TOKEN=754396839efa495ba055c85776b70820 + +# The password to use for the Keystone admin user +CONFIG_KEYSTONE_ADMIN_PW=570dd01940b84b35 + +# The password to use for the Keystone demo user +CONFIG_KEYSTONE_DEMO_PW=9b6e5dfbb2b144a7 + +# Kestone token format. Use either UUID or PKI +CONFIG_KEYSTONE_TOKEN_FORMAT=PKI + +# The password to use for the Glance to access DB +CONFIG_GLANCE_DB_PW=611d0dddefd34aee + +# The password to use for the Glance to authenticate with Keystone +CONFIG_GLANCE_KS_PW=8d56529eead24bd0 + +# The password to use for the Cinder to access DB +CONFIG_CINDER_DB_PW=77bf5c95a5e04ba2 + +# The password to use for the Cinder to authenticate with Keystone +CONFIG_CINDER_KS_PW=076a9a22343b4733 + +# The Cinder backend to use, valid options are: lvm, gluster, nfs +CONFIG_CINDER_BACKEND=lvm + +# Create Cinder's volumes group. This should only be done for testing +# on a proof-of-concept installation of Cinder. This will create a +# file-backed volume group and is not suitable for production usage. +CONFIG_CINDER_VOLUMES_CREATE=y + +# Cinder's volumes group size. Note that actual volume size will be +# extended with 3% more space for VG metadata. +CONFIG_CINDER_VOLUMES_SIZE=20G + +# A single or comma separated list of gluster volume shares to mount, +# eg: ip-address:/vol-name, domain:/vol-name +CONFIG_CINDER_GLUSTER_MOUNTS= + +# A single or comma seprated list of NFS exports to mount, eg: ip- +# address:/export-name +CONFIG_CINDER_NFS_MOUNTS= + +# The password to use for the Nova to access DB +CONFIG_NOVA_DB_PW=7cbfd80d43c94d74 + +# The password to use for the Nova to authenticate with Keystone +CONFIG_NOVA_KS_PW=88f81273f4dd487f + +# The overcommitment ratio for virtual to physical CPUs. Set to 1.0 +# to disable CPU overcommitment +CONFIG_NOVA_SCHED_CPU_ALLOC_RATIO=16.0 + +# The overcommitment ratio for virtual to physical RAM. Set to 1.0 to +# disable RAM overcommitment +CONFIG_NOVA_SCHED_RAM_ALLOC_RATIO=1.5 + +# Private interface for Flat DHCP on the Nova compute servers +CONFIG_NOVA_COMPUTE_PRIVIF=lo + +# Nova network manager +CONFIG_NOVA_NETWORK_MANAGER=nova.network.manager.FlatDHCPManager + +# Public interface on the Nova network server +CONFIG_NOVA_NETWORK_PUBIF=enp2s1f0 + +# Private interface for network manager on the Nova network server +CONFIG_NOVA_NETWORK_PRIVIF=enp2s1f1 + +# IP Range for network manager +CONFIG_NOVA_NETWORK_FIXEDRANGE=10.0.0.0/24 + +# IP Range for Floating IP's +CONFIG_NOVA_NETWORK_FLOATRANGE=192.168.33.0/24 + +# Name of the default floating pool to which the specified floating +# ranges are added to +CONFIG_NOVA_NETWORK_DEFAULTFLOATINGPOOL=nova + +# Automatically assign a floating IP to new instances +CONFIG_NOVA_NETWORK_AUTOASSIGNFLOATINGIP=n + +# First VLAN for private networks +CONFIG_NOVA_NETWORK_VLAN_START=100 + +# Number of networks to support +CONFIG_NOVA_NETWORK_NUMBER=1 + +# Number of addresses in each private subnet +CONFIG_NOVA_NETWORK_SIZE=255 + +# The password to use for Neutron to authenticate with Keystone +CONFIG_NEUTRON_KS_PW=39f95ea7d0564478 + +# The password to use for Neutron to access DB +CONFIG_NEUTRON_DB_PW=fd538aa5046544ab + +# The name of the bridge that the Neutron L3 agent will use for +# external traffic, or 'provider' if using provider networks +CONFIG_NEUTRON_L3_EXT_BRIDGE=provider + +# The name of the L2 plugin to be used with Neutron +CONFIG_NEUTRON_L2_PLUGIN=ml2 + +# Neutron metadata agent password +CONFIG_NEUTRON_METADATA_PW=31e36f06e240407b + +# Set to 'y' if you would like Packstack to install Neutron LBaaS +CONFIG_LBAAS_INSTALL=n + +# Set to 'y' if you would like Packstack to install Neutron L3 +# Metering agent +CONFIG_NEUTRON_METERING_AGENT_INSTALL=n + +# Whether to configure neutron Firewall as a Service +CONFIG_NEUTRON_FWAAS=n + +# A comma separated list of network type driver entrypoints to be +# loaded from the neutron.ml2.type_drivers namespace. +CONFIG_NEUTRON_ML2_TYPE_DRIVERS=gre,flat + +# A comma separated ordered list of network_types to allocate as +# tenant networks. The value 'local' is only useful for single-box +# testing but provides no connectivity between hosts. +CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=gre + +# A comma separated ordered list of networking mechanism driver +# entrypoints to be loaded from the neutron.ml2.mechanism_drivers +# namespace. +CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS=openvswitch + +# A comma separated list of physical_network names with which flat +# networks can be created. Use * to allow flat networks with arbitrary +# physical_network names. +CONFIG_NEUTRON_ML2_FLAT_NETWORKS=* + +# A comma separated list of :: +# or specifying physical_network names usable for +# VLAN provider and tenant networks, as well as ranges of VLAN tags on +# each available for allocation to tenant networks. +CONFIG_NEUTRON_ML2_VLAN_RANGES=physnet_ocfcust,physnet_stackint + +# A comma separated list of : tuples enumerating +# ranges of GRE tunnel IDs that are available for tenant network +# allocation. Should be an array with tun_max +1 - tun_min > 1000000 +CONFIG_NEUTRON_ML2_TUNNEL_ID_RANGES= + +# Multicast group for VXLAN. If unset, disables VXLAN enable sending +# allocate broadcast traffic to this multicast group. When left +# unconfigured, will disable multicast VXLAN mode. Should be an +# Multicast IP (v4 or v6) address. +CONFIG_NEUTRON_ML2_VXLAN_GROUP= + +# A comma separated list of : tuples enumerating +# ranges of VXLAN VNI IDs that are available for tenant network +# allocation. Min value is 0 and Max value is 16777215. +CONFIG_NEUTRON_ML2_VNI_RANGES=10:100 + +# The name of the L2 agent to be used with Neutron +CONFIG_NEUTRON_L2_AGENT=openvswitch + +# The type of network to allocate for tenant networks (eg. vlan, +# local) +CONFIG_NEUTRON_LB_TENANT_NETWORK_TYPE=local + +# A comma separated list of VLAN ranges for the Neutron linuxbridge +# plugin (eg. physnet1:1:4094,physnet2,physnet3:3000:3999) +CONFIG_NEUTRON_LB_VLAN_RANGES=physnet_ocfcust,physnet_stackint + +# A comma separated list of interface mappings for the Neutron +# linuxbridge plugin (eg. physnet1:br-eth1,physnet2:br-eth2,physnet3 +# :br-eth3) +CONFIG_NEUTRON_LB_INTERFACE_MAPPINGS=physnet_ocfcust:br-ocfcust,physnet_stackint:br-stackint + +# Type of network to allocate for tenant networks (eg. vlan, local, +# gre, vxlan) +CONFIG_NEUTRON_OVS_TENANT_NETWORK_TYPE=gre + +# A comma separated list of VLAN ranges for the Neutron openvswitch +# plugin (eg. physnet1:1:4094,physnet2,physnet3:3000:3999) +CONFIG_NEUTRON_OVS_VLAN_RANGES=physnet_ocfcust,physnet_stackint + +# A comma separated list of bridge mappings for the Neutron +# openvswitch plugin (eg. physnet1:br-eth1,physnet2:br-eth2,physnet3 +# :br-eth3) +CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=physnet_ocfcust:br-ocfcust,physnet_stackint:br-stackint + +# A comma separated list of colon-separated OVS bridge:interface +# pairs. The interface will be added to the associated bridge. +CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-ocfcust:enp2s1f1,br-stackint:enp2s1f0 + +# A comma separated list of tunnel ranges for the Neutron openvswitch +# plugin (eg. 1:1000) +CONFIG_NEUTRON_OVS_TUNNEL_RANGES=1:1000 + +# The interface for the OVS tunnel. Packstack will override the IP +# address used for tunnels on this hypervisor to the IP found on the +# specified interface. (eg. eth1) +CONFIG_NEUTRON_OVS_TUNNEL_IF=enp2s1f0 + +# VXLAN UDP port +CONFIG_NEUTRON_OVS_VXLAN_UDP_PORT=4789 + +# To set up Horizon communication over https set this to 'y' +CONFIG_HORIZON_SSL=n + +# PEM encoded certificate to be used for ssl on the https server, +# leave blank if one should be generated, this certificate should not +# require a passphrase +CONFIG_SSL_CERT= + +# SSL keyfile corresponding to the certificate if one was entered +CONFIG_SSL_KEY= + +# PEM encoded CA certificates from which the certificate chain of the +# server certificate can be assembled. +CONFIG_SSL_CACHAIN= + +# The password to use for the Swift to authenticate with Keystone +CONFIG_SWIFT_KS_PW=c08a7bb1ab92457a + +# A comma separated list of devices which to use as Swift Storage +# device. Each entry should take the format /path/to/dev, for example +# /dev/vdb will install /dev/vdb as Swift storage device (packstack +# does not create the filesystem, you must do this first). If value is +# omitted Packstack will create a loopback device for test setup +CONFIG_SWIFT_STORAGES= + +# Number of swift storage zones, this number MUST be no bigger than +# the number of storage devices configured +CONFIG_SWIFT_STORAGE_ZONES=1 + +# Number of swift storage replicas, this number MUST be no bigger +# than the number of storage zones configured +CONFIG_SWIFT_STORAGE_REPLICAS=1 + +# FileSystem type for storage nodes +CONFIG_SWIFT_STORAGE_FSTYPE=ext4 + +# Shared secret for Swift +CONFIG_SWIFT_HASH=8df5b55cb0764613 + +# Size of the swift loopback file storage device +CONFIG_SWIFT_STORAGE_SIZE=2G + +# Whether to provision for demo usage and testing. Note that +# provisioning is only supported for all-in-one installations. +CONFIG_PROVISION_DEMO=n + +# Whether to configure tempest for testing +CONFIG_PROVISION_TEMPEST=n + +# The name of the Tempest Provisioning user. If you don't provide a +# user name, Tempest will be configured in a standalone mode +CONFIG_PROVISION_TEMPEST_USER= + +# The password to use for the Tempest Provisioning user +CONFIG_PROVISION_TEMPEST_USER_PW=09ca53eaf69446d8 + +# The CIDR network address for the floating IP subnet +CONFIG_PROVISION_DEMO_FLOATRANGE=192.168.33.0/24 + +# The uri of the tempest git repository to use +CONFIG_PROVISION_TEMPEST_REPO_URI=https://github.com/openstack/tempest.git + +# The revision of the tempest git repository to use +CONFIG_PROVISION_TEMPEST_REPO_REVISION=master + +# Whether to configure the ovs external bridge in an all-in-one +# deployment +CONFIG_PROVISION_ALL_IN_ONE_OVS_BRIDGE=n + +# The password used by Heat user to authenticate against MySQL +CONFIG_HEAT_DB_PW=51fe4152d696444c + +# The encryption key to use for authentication info in database +CONFIG_HEAT_AUTH_ENC_KEY=2ec055ce175c4cd2 + +# The password to use for the Heat to authenticate with Keystone +CONFIG_HEAT_KS_PW=9de88192682742ae + +# Set to 'y' if you would like Packstack to install Heat CloudWatch +# API +CONFIG_HEAT_CLOUDWATCH_INSTALL=n + +# Set to 'y' if you would like Packstack to install Heat +# CloudFormation API +CONFIG_HEAT_CFN_INSTALL=n + +# Name of Keystone domain for Heat +CONFIG_HEAT_DOMAIN=heat + +# Name of Keystone domain admin user for Heat +CONFIG_HEAT_DOMAIN_ADMIN=heat_admin + +# Password for Keystone domain admin user for Heat +CONFIG_HEAT_DOMAIN_PASSWORD=99ac906641844f27 + +# Secret key for signing metering messages +CONFIG_CEILOMETER_SECRET=82fd834fdfd74dcb + +# The password to use for Ceilometer to authenticate with Keystone +CONFIG_CEILOMETER_KS_PW=c053923e1a564e69 + +# The IP address of the server on which to install MongoDB +CONFIG_MONGODB_HOST=##OPENSTACK_MASTER## + +# The password of the nagiosadmin user on the Nagios server +CONFIG_NAGIOS_PW=c8e697956bcf49ab diff --git a/packstack/packstack-answers-multi.txt b/packstack/packstack-answers-multi.txt new file mode 100644 index 0000000..335475d --- /dev/null +++ b/packstack/packstack-answers-multi.txt @@ -0,0 +1,29 @@ +[general] +CONFIG_NTP_SERVERS=192.168.33.200 +CONFIG_KEYSTONE_ADMIN_PW=openstack +CONFIG_USE_EPEL=n + +CONFIG_CONTROLLER_HOST=##OPENSTACK_MASTER## +CONFIG_COMPUTE_HOSTS=##OPENSTACK_MASTER## +CONFIG_NETWORK_HOSTS=##OPENSTACK_MASTER## +CONFIG_VCENTER_HOST=##OPENSTACK_MASTER## +CONFIG_AMQP_HOST=##OPENSTACK_MASTER## +CONFIG_MYSQL_HOST=##OPENSTACK_MASTER## +CONFIG_MONGODB_HOST=##OPENSTACK_MASTER## + +CONFIG_HORIZON_SSL=y +CONFIG_PROVISION_DEMO=n + +CONFIG_CEILOMETER_INSTALL=n +CONFIG_NAGIOS_INSTALL=n +CONFIG_SWIFT_INSTALL=n + +CONFIG_NEUTRON_L2_PLUGIN=ml2 +CONFIG_NEUTRON_ML2_TYPE_DRIVERS=vlan +CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=vlan +CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS=openvswitch +CONFIG_NEUTRON_ML2_VLAN_RANGES=physnet_xcat:1000:2000 +CONFIG_NEUTRON_OVS_TENANT_NETWORK_TYPE=vlan +CONFIG_NEUTRON_OVS_VLAN_RANGES=physnet_xcat:1000:2000 +CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=physnet_xcat:br-xcat +CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-xcat:enp2s1f0 diff --git a/packstack/packstack-answers-orig.txt b/packstack/packstack-answers-orig.txt new file mode 100644 index 0000000..925aaf7 --- /dev/null +++ b/packstack/packstack-answers-orig.txt @@ -0,0 +1,503 @@ +[general] + +# Path to a Public key to install on servers. If a usable key has not +# been installed on the remote servers the user will be prompted for a +# password and this key will be installed so the password will not be +# required again +CONFIG_SSH_KEY=/root/.ssh/id_rsa.pub + +# Set to 'y' if you would like Packstack to install MySQL +CONFIG_MYSQL_INSTALL=y + +# Set to 'y' if you would like Packstack to install OpenStack Image +# Service (Glance) +CONFIG_GLANCE_INSTALL=y + +# Set to 'y' if you would like Packstack to install OpenStack Block +# Storage (Cinder) +CONFIG_CINDER_INSTALL=y + +# Set to 'y' if you would like Packstack to install OpenStack Compute +# (Nova) +CONFIG_NOVA_INSTALL=y + +# Set to 'y' if you would like Packstack to install OpenStack +# Networking (Neutron). Otherwise Nova Network will be used. +CONFIG_NEUTRON_INSTALL=y + +# Set to 'y' if you would like Packstack to install OpenStack +# Dashboard (Horizon) +CONFIG_HORIZON_INSTALL=y + +# Set to 'y' if you would like Packstack to install OpenStack Object +# Storage (Swift) +CONFIG_SWIFT_INSTALL=n + +# Set to 'y' if you would like Packstack to install OpenStack +# Metering (Ceilometer) +CONFIG_CEILOMETER_INSTALL=n + +# Set to 'y' if you would like Packstack to install OpenStack +# Orchestration (Heat) +CONFIG_HEAT_INSTALL=n + +# Set to 'y' if you would like Packstack to install the OpenStack +# Client packages. An admin "rc" file will also be installed +CONFIG_CLIENT_INSTALL=y + +# Comma separated list of NTP servers. Leave plain if Packstack +# should not install ntpd on instances. +CONFIG_NTP_SERVERS= + +# Set to 'y' if you would like Packstack to install Nagios to monitor +# OpenStack hosts +CONFIG_NAGIOS_INSTALL=n + +# Comma separated list of servers to be excluded from installation in +# case you are running Packstack the second time with the same answer +# file and don't want Packstack to touch these servers. Leave plain if +# you don't need to exclude any server. +EXCLUDE_SERVERS= + +# Set to 'y' if you want to run OpenStack services in debug mode. +# Otherwise set to 'n'. +CONFIG_DEBUG_MODE=n + +# The IP address of the server on which to install OpenStack services +# specific to controller role such as API servers, Horizon, etc. +CONFIG_CONTROLLER_HOST=##OPENSTACK_MASTER## + +# The list of IP addresses of the server on which to install the Nova +# compute service +CONFIG_COMPUTE_HOSTS=##OPENSTACK_MASTER## + +# The list of IP addresses of the server on which to install the +# network service such as Nova network or Neutron +CONFIG_NETWORK_HOSTS=##OPENSTACK_MASTER## + +# Set to 'y' if you want to use VMware vCenter as hypervisor and +# storage. Otherwise set to 'n'. +CONFIG_VMWARE_BACKEND=n + +# The IP address of the VMware vCenter server +CONFIG_VCENTER_HOST=##OPENSTACK_MASTER## + +# The username to authenticate to VMware vCenter server +CONFIG_VCENTER_USER= + +# The password to authenticate to VMware vCenter server +CONFIG_VCENTER_PASSWORD= + +# The name of the vCenter cluster +CONFIG_VCENTER_CLUSTER_NAME= + +# To subscribe each server to EPEL enter "y" +CONFIG_USE_EPEL=n + +# A comma separated list of URLs to any additional yum repositories +# to install +CONFIG_REPO= + +# To subscribe each server with Red Hat subscription manager, include +# this with CONFIG_RH_PW +CONFIG_RH_USER= + +# To subscribe each server with Red Hat subscription manager, include +# this with CONFIG_RH_USER +CONFIG_RH_PW= + +# To enable RHEL optional repos use value "y" +CONFIG_RH_OPTIONAL=y + +# To subscribe each server with RHN Satellite,fill Satellite's URL +# here. Note that either satellite's username/password or activation +# key has to be provided +CONFIG_SATELLITE_URL= + +# Username to access RHN Satellite +CONFIG_SATELLITE_USER= + +# Password to access RHN Satellite +CONFIG_SATELLITE_PW= + +# Activation key for subscription to RHN Satellite +CONFIG_SATELLITE_AKEY= + +# Specify a path or URL to a SSL CA certificate to use +CONFIG_SATELLITE_CACERT= + +# If required specify the profile name that should be used as an +# identifier for the system in RHN Satellite +CONFIG_SATELLITE_PROFILE= + +# Comma separated list of flags passed to rhnreg_ks. Valid flags are: +# novirtinfo, norhnsd, nopackages +CONFIG_SATELLITE_FLAGS= + +# Specify a HTTP proxy to use with RHN Satellite +CONFIG_SATELLITE_PROXY= + +# Specify a username to use with an authenticated HTTP proxy +CONFIG_SATELLITE_PROXY_USER= + +# Specify a password to use with an authenticated HTTP proxy. +CONFIG_SATELLITE_PROXY_PW= + +# Set the AMQP service backend. Allowed values are: qpid, rabbitmq +CONFIG_AMQP_BACKEND=rabbitmq + +# The IP address of the server on which to install the AMQP service +CONFIG_AMQP_HOST=##OPENSTACK_MASTER## + +# Enable SSL for the AMQP service +CONFIG_AMQP_ENABLE_SSL=n + +# Enable Authentication for the AMQP service +CONFIG_AMQP_ENABLE_AUTH=n + +# The password for the NSS certificate database of the AMQP service +CONFIG_AMQP_NSS_CERTDB_PW=f0b6acd5054c43c7afa1c33f563e9d0a + +# The port in which the AMQP service listens to SSL connections +CONFIG_AMQP_SSL_PORT=5671 + +# The filename of the certificate that the AMQP service is going to +# use +CONFIG_AMQP_SSL_CERT_FILE=/etc/pki/tls/certs/amqp_selfcert.pem + +# The filename of the private key that the AMQP service is going to +# use +CONFIG_AMQP_SSL_KEY_FILE=/etc/pki/tls/private/amqp_selfkey.pem + +# Auto Generates self signed SSL certificate and key +CONFIG_AMQP_SSL_SELF_SIGNED=y + +# User for amqp authentication +CONFIG_AMQP_AUTH_USER=amqp_user + +# Password for user authentication +CONFIG_AMQP_AUTH_PASSWORD=728c1ff2fcf148d4 + +# The IP address of the server on which to install MySQL or IP +# address of DB server to use if MySQL installation was not selected +CONFIG_MYSQL_HOST=##OPENSTACK_MASTER## + +# Username for the MySQL admin user +CONFIG_MYSQL_USER=root + +# Password for the MySQL admin user +CONFIG_MYSQL_PW=319fae3b53744e31 + +# The password to use for the Keystone to access DB +CONFIG_KEYSTONE_DB_PW=a659bf672e4d4f22 + +# The token to use for the Keystone service api +CONFIG_KEYSTONE_ADMIN_TOKEN=754396839efa495ba055c85776b70820 + +# The password to use for the Keystone admin user +CONFIG_KEYSTONE_ADMIN_PW=570dd01940b84b35 + +# The password to use for the Keystone demo user +CONFIG_KEYSTONE_DEMO_PW=9b6e5dfbb2b144a7 + +# Kestone token format. Use either UUID or PKI +CONFIG_KEYSTONE_TOKEN_FORMAT=PKI + +# The password to use for the Glance to access DB +CONFIG_GLANCE_DB_PW=611d0dddefd34aee + +# The password to use for the Glance to authenticate with Keystone +CONFIG_GLANCE_KS_PW=8d56529eead24bd0 + +# The password to use for the Cinder to access DB +CONFIG_CINDER_DB_PW=77bf5c95a5e04ba2 + +# The password to use for the Cinder to authenticate with Keystone +CONFIG_CINDER_KS_PW=076a9a22343b4733 + +# The Cinder backend to use, valid options are: lvm, gluster, nfs +CONFIG_CINDER_BACKEND=lvm + +# Create Cinder's volumes group. This should only be done for testing +# on a proof-of-concept installation of Cinder. This will create a +# file-backed volume group and is not suitable for production usage. +CONFIG_CINDER_VOLUMES_CREATE=y + +# Cinder's volumes group size. Note that actual volume size will be +# extended with 3% more space for VG metadata. +CONFIG_CINDER_VOLUMES_SIZE=20G + +# A single or comma separated list of gluster volume shares to mount, +# eg: ip-address:/vol-name, domain:/vol-name +CONFIG_CINDER_GLUSTER_MOUNTS= + +# A single or comma seprated list of NFS exports to mount, eg: ip- +# address:/export-name +CONFIG_CINDER_NFS_MOUNTS= + +# The password to use for the Nova to access DB +CONFIG_NOVA_DB_PW=7cbfd80d43c94d74 + +# The password to use for the Nova to authenticate with Keystone +CONFIG_NOVA_KS_PW=88f81273f4dd487f + +# The overcommitment ratio for virtual to physical CPUs. Set to 1.0 +# to disable CPU overcommitment +CONFIG_NOVA_SCHED_CPU_ALLOC_RATIO=16.0 + +# The overcommitment ratio for virtual to physical RAM. Set to 1.0 to +# disable RAM overcommitment +CONFIG_NOVA_SCHED_RAM_ALLOC_RATIO=1.5 + +# Private interface for Flat DHCP on the Nova compute servers +CONFIG_NOVA_COMPUTE_PRIVIF=lo + +# Nova network manager +CONFIG_NOVA_NETWORK_MANAGER=nova.network.manager.FlatDHCPManager + +# Public interface on the Nova network server +CONFIG_NOVA_NETWORK_PUBIF=enp2s1f0 + +# Private interface for network manager on the Nova network server +CONFIG_NOVA_NETWORK_PRIVIF=enp2s1f1 + +# IP Range for network manager +CONFIG_NOVA_NETWORK_FIXEDRANGE=10.0.0.0/24 + +# IP Range for Floating IP's +CONFIG_NOVA_NETWORK_FLOATRANGE=192.168.33.0/24 + +# Name of the default floating pool to which the specified floating +# ranges are added to +CONFIG_NOVA_NETWORK_DEFAULTFLOATINGPOOL=nova + +# Automatically assign a floating IP to new instances +CONFIG_NOVA_NETWORK_AUTOASSIGNFLOATINGIP=n + +# First VLAN for private networks +CONFIG_NOVA_NETWORK_VLAN_START=100 + +# Number of networks to support +CONFIG_NOVA_NETWORK_NUMBER=1 + +# Number of addresses in each private subnet +CONFIG_NOVA_NETWORK_SIZE=255 + +# The password to use for Neutron to authenticate with Keystone +CONFIG_NEUTRON_KS_PW=39f95ea7d0564478 + +# The password to use for Neutron to access DB +CONFIG_NEUTRON_DB_PW=fd538aa5046544ab + +# The name of the bridge that the Neutron L3 agent will use for +# external traffic, or 'provider' if using provider networks +CONFIG_NEUTRON_L3_EXT_BRIDGE=br-ex + +# The name of the L2 plugin to be used with Neutron +CONFIG_NEUTRON_L2_PLUGIN=ml2 + +# Neutron metadata agent password +CONFIG_NEUTRON_METADATA_PW=31e36f06e240407b + +# Set to 'y' if you would like Packstack to install Neutron LBaaS +CONFIG_LBAAS_INSTALL=n + +# Set to 'y' if you would like Packstack to install Neutron L3 +# Metering agent +CONFIG_NEUTRON_METERING_AGENT_INSTALL=n + +# Whether to configure neutron Firewall as a Service +CONFIG_NEUTRON_FWAAS=n + +# A comma separated list of network type driver entrypoints to be +# loaded from the neutron.ml2.type_drivers namespace. +CONFIG_NEUTRON_ML2_TYPE_DRIVERS=vxlan + +# A comma separated ordered list of network_types to allocate as +# tenant networks. The value 'local' is only useful for single-box +# testing but provides no connectivity between hosts. +CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=vxlan + +# A comma separated ordered list of networking mechanism driver +# entrypoints to be loaded from the neutron.ml2.mechanism_drivers +# namespace. +CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS=openvswitch + +# A comma separated list of physical_network names with which flat +# networks can be created. Use * to allow flat networks with arbitrary +# physical_network names. +CONFIG_NEUTRON_ML2_FLAT_NETWORKS=* + +# A comma separated list of :: +# or specifying physical_network names usable for +# VLAN provider and tenant networks, as well as ranges of VLAN tags on +# each available for allocation to tenant networks. +CONFIG_NEUTRON_ML2_VLAN_RANGES=physnet1 + +# A comma separated list of : tuples enumerating +# ranges of GRE tunnel IDs that are available for tenant network +# allocation. Should be an array with tun_max +1 - tun_min > 1000000 +CONFIG_NEUTRON_ML2_TUNNEL_ID_RANGES= + +# Multicast group for VXLAN. If unset, disables VXLAN enable sending +# allocate broadcast traffic to this multicast group. When left +# unconfigured, will disable multicast VXLAN mode. Should be an +# Multicast IP (v4 or v6) address. +CONFIG_NEUTRON_ML2_VXLAN_GROUP= + +# A comma separated list of : tuples enumerating +# ranges of VXLAN VNI IDs that are available for tenant network +# allocation. Min value is 0 and Max value is 16777215. +CONFIG_NEUTRON_ML2_VNI_RANGES=10:100 + +# The name of the L2 agent to be used with Neutron +CONFIG_NEUTRON_L2_AGENT=openvswitch + +# The type of network to allocate for tenant networks (eg. vlan, +# local) +CONFIG_NEUTRON_LB_TENANT_NETWORK_TYPE=local + +# A comma separated list of VLAN ranges for the Neutron linuxbridge +# plugin (eg. physnet1:1:4094,physnet2,physnet3:3000:3999) +CONFIG_NEUTRON_LB_VLAN_RANGES=physnet1 + +# A comma separated list of interface mappings for the Neutron +# linuxbridge plugin (eg. physnet1:br-eth1,physnet2:br-eth2,physnet3 +# :br-eth3) +CONFIG_NEUTRON_LB_INTERFACE_MAPPINGS=physnet1:br-ex + +# Type of network to allocate for tenant networks (eg. vlan, local, +# gre, vxlan) +CONFIG_NEUTRON_OVS_TENANT_NETWORK_TYPE=gre + +# A comma separated list of VLAN ranges for the Neutron openvswitch +# plugin (eg. physnet1:1:4094,physnet2,physnet3:3000:3999) +CONFIG_NEUTRON_OVS_VLAN_RANGES=physnet1 + +# A comma separated list of bridge mappings for the Neutron +# openvswitch plugin (eg. physnet1:br-eth1,physnet2:br-eth2,physnet3 +# :br-eth3) +CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=physnet1:br-ex + +# A comma separated list of colon-separated OVS bridge:interface +# pairs. The interface will be added to the associated bridge. +CONFIG_NEUTRON_OVS_BRIDGE_IFACES= + +# A comma separated list of tunnel ranges for the Neutron openvswitch +# plugin (eg. 1:1000) +CONFIG_NEUTRON_OVS_TUNNEL_RANGES=1000:3000 + +# The interface for the OVS tunnel. Packstack will override the IP +# address used for tunnels on this hypervisor to the IP found on the +# specified interface. (eg. eth1) +CONFIG_NEUTRON_OVS_TUNNEL_IF=enp2s1f1 + +# VXLAN UDP port +CONFIG_NEUTRON_OVS_VXLAN_UDP_PORT=4789 + +# To set up Horizon communication over https set this to 'y' +CONFIG_HORIZON_SSL=n + +# PEM encoded certificate to be used for ssl on the https server, +# leave blank if one should be generated, this certificate should not +# require a passphrase +CONFIG_SSL_CERT= + +# SSL keyfile corresponding to the certificate if one was entered +CONFIG_SSL_KEY= + +# PEM encoded CA certificates from which the certificate chain of the +# server certificate can be assembled. +CONFIG_SSL_CACHAIN= + +# The password to use for the Swift to authenticate with Keystone +CONFIG_SWIFT_KS_PW=c08a7bb1ab92457a + +# A comma separated list of devices which to use as Swift Storage +# device. Each entry should take the format /path/to/dev, for example +# /dev/vdb will install /dev/vdb as Swift storage device (packstack +# does not create the filesystem, you must do this first). If value is +# omitted Packstack will create a loopback device for test setup +CONFIG_SWIFT_STORAGES= + +# Number of swift storage zones, this number MUST be no bigger than +# the number of storage devices configured +CONFIG_SWIFT_STORAGE_ZONES=1 + +# Number of swift storage replicas, this number MUST be no bigger +# than the number of storage zones configured +CONFIG_SWIFT_STORAGE_REPLICAS=1 + +# FileSystem type for storage nodes +CONFIG_SWIFT_STORAGE_FSTYPE=ext4 + +# Shared secret for Swift +CONFIG_SWIFT_HASH=8df5b55cb0764613 + +# Size of the swift loopback file storage device +CONFIG_SWIFT_STORAGE_SIZE=2G + +# Whether to provision for demo usage and testing. Note that +# provisioning is only supported for all-in-one installations. +CONFIG_PROVISION_DEMO=n + +# Whether to configure tempest for testing +CONFIG_PROVISION_TEMPEST=n + +# The name of the Tempest Provisioning user. If you don't provide a +# user name, Tempest will be configured in a standalone mode +CONFIG_PROVISION_TEMPEST_USER= + +# The password to use for the Tempest Provisioning user +CONFIG_PROVISION_TEMPEST_USER_PW=09ca53eaf69446d8 + +# The CIDR network address for the floating IP subnet +CONFIG_PROVISION_DEMO_FLOATRANGE=192.168.33.0/24 + +# The uri of the tempest git repository to use +CONFIG_PROVISION_TEMPEST_REPO_URI=https://github.com/openstack/tempest.git + +# The revision of the tempest git repository to use +CONFIG_PROVISION_TEMPEST_REPO_REVISION=master + +# Whether to configure the ovs external bridge in an all-in-one +# deployment +CONFIG_PROVISION_ALL_IN_ONE_OVS_BRIDGE=y + +# The password used by Heat user to authenticate against MySQL +CONFIG_HEAT_DB_PW=51fe4152d696444c + +# The encryption key to use for authentication info in database +CONFIG_HEAT_AUTH_ENC_KEY=2ec055ce175c4cd2 + +# The password to use for the Heat to authenticate with Keystone +CONFIG_HEAT_KS_PW=9de88192682742ae + +# Set to 'y' if you would like Packstack to install Heat CloudWatch +# API +CONFIG_HEAT_CLOUDWATCH_INSTALL=n + +# Set to 'y' if you would like Packstack to install Heat +# CloudFormation API +CONFIG_HEAT_CFN_INSTALL=n + +# Name of Keystone domain for Heat +CONFIG_HEAT_DOMAIN=heat + +# Name of Keystone domain admin user for Heat +CONFIG_HEAT_DOMAIN_ADMIN=heat_admin + +# Password for Keystone domain admin user for Heat +CONFIG_HEAT_DOMAIN_PASSWORD=99ac906641844f27 + +# Secret key for signing metering messages +CONFIG_CEILOMETER_SECRET=82fd834fdfd74dcb + +# The password to use for Ceilometer to authenticate with Keystone +CONFIG_CEILOMETER_KS_PW=c053923e1a564e69 + +# The IP address of the server on which to install MongoDB +CONFIG_MONGODB_HOST=##OPENSTACK_MASTER## + +# The password of the nagiosadmin user on the Nagios server +CONFIG_NAGIOS_PW=c8e697956bcf49ab diff --git a/packstack/packstack-answers-single.txt b/packstack/packstack-answers-single.txt new file mode 100644 index 0000000..e4f33e0 --- /dev/null +++ b/packstack/packstack-answers-single.txt @@ -0,0 +1,15 @@ +[general] +CONFIG_NTP_SERVERS=192.168.33.200 +CONFIG_KEYSTONE_ADMIN_PW=openstack +CONFIG_USE_EPEL=n + +CONFIG_CONTROLLER_HOST=##OPENSTACK_MASTER## +CONFIG_COMPUTE_HOSTS=##OPENSTACK_MASTER## +CONFIG_NETWORK_HOSTS=##OPENSTACK_MASTER## +CONFIG_VCENTER_HOST=##OPENSTACK_MASTER## +CONFIG_AMQP_HOST=##OPENSTACK_MASTER## +CONFIG_MYSQL_HOST=##OPENSTACK_MASTER## +CONFIG_MONGODB_HOST=##OPENSTACK_MASTER## + +CONFIG_HORIZON_SSL=y +CONFIG_PROVISION_DEMO=n diff --git a/reposync/centos.repo b/reposync/centos.repo new file mode 100644 index 0000000..bcf0b70 --- /dev/null +++ b/reposync/centos.repo @@ -0,0 +1,23 @@ +[extras-7] +name=CentOS Extras 7 +baseurl=http://mirror.centos.org/centos/7/extras/x86_64 +enabled=1 +gpgcheck=0 + +[extras-6] +name=CentOS Extras 6 +baseurl=http://mirror.centos.org/centos/6/extras/x86_64 +enabled=1 +gpgcheck=0 + +[updates-7] +name=CentOS Updates 7 +baseurl=http://mirror.centos.org/centos/7/updates/x86_64 +enabled=1 +gpgcheck=0 + +[updates-6] +name=CentOS Updates 6 +baseurl=http://mirror.centos.org/centos/6/updates/x86_64 +enabled=1 +gpgcheck=0 diff --git a/reposync/epel.repo b/reposync/epel.repo new file mode 100644 index 0000000..519afef --- /dev/null +++ b/reposync/epel.repo @@ -0,0 +1,12 @@ +[epel-7] +name=EPEL 7 +baseurl=http://dl.fedoraproject.org/pub/epel/7/x86_64/ +enabled=1 +gpgcheck=0 + +[epel-6] +name=EPEL 6 +baseurl=http://dl.fedoraproject.org/pub/epel/6/x86_64/ +enabled=1 +gpgcheck=0 + diff --git a/reposync/puppet.repo b/reposync/puppet.repo new file mode 100644 index 0000000..60a30bf --- /dev/null +++ b/reposync/puppet.repo @@ -0,0 +1,24 @@ +[puppet-7] +name=Puppet EL 7 +baseurl=http://yum.puppetlabs.com/el/7/products/x86_64/ +enabled=1 +gpgcheck=0 + +[puppet-6] +name=Puppet EL 6 +baseurl=http://yum.puppetlabs.com/el/6/products/x86_64/ +enabled=1 +gpgcheck=0 + +[puppet-deps-7] +name=Puppet dependencies EL 7 +baseurl=http://yum.puppetlabs.com/el/7/dependencies/x86_64/ +enabled=1 +gpgcheck=0 + +[puppet-deps-6] +name=Puppet dependencies EL 6 +baseurl=http://yum.puppetlabs.com/el/6/dependencies/x86_64/ +enabled=1 +gpgcheck=0 + diff --git a/reposync/rdo-openstack.repo b/reposync/rdo-openstack.repo new file mode 100644 index 0000000..f85c6d7 --- /dev/null +++ b/reposync/rdo-openstack.repo @@ -0,0 +1,17 @@ +[rdo-openstack-epel-7] +name=RDO OpenStack for EL 7 +baseurl=https://repos.fedorapeople.org/repos/openstack/openstack-icehouse/epel-7/ +enabled=1 +gpgcheck=0 + +[rdo-openstack-epel-6] +name=RDO OpenStack for EL 6 +baseurl=https://repos.fedorapeople.org/repos/openstack/openstack-icehouse/epel-6/ +enabled=1 +gpgcheck=0 + +[rdo-openstack-juno-epel-7] +name=RDO OpenStack Juno for EL 7 +baseurl=https://repos.fedorapeople.org/repos/openstack/openstack-juno/epel-7/ +enabled=1 +gpgcheck=0 diff --git a/reposync/yum.conf b/reposync/yum.conf new file mode 100644 index 0000000..93287e6 --- /dev/null +++ b/reposync/yum.conf @@ -0,0 +1,24 @@ +[main] +cachedir=/var/cache/yum/$basearch/$releasever +keepcache=0 +debuglevel=2 +logfile=/var/log/yum.log +exactarch=1 +obsoletes=1 +gpgcheck=1 +plugins=1 +installonly_limit=3 +reposdir=/etc/reposync.repos.d + +# This is the default, if you make this bigger yum won't see if the metadata +# is newer on the remote and so you'll "gain" the bandwidth of not having to +# download the new metadata and "pay" for it by yum not having correct +# information. +# It is esp. important, to have correct metadata, for distributions like +# Fedora which don't keep old packages around. If you don't like this checking +# interupting your command line usage, it's much better to have something +# manually check the metadata once an hour (yum-updatesd will do this). +# metadata_expire=90m + +# PUT YOUR REPOS HERE OR IN separate files named file.repo +# in /etc/yum.repos.d diff --git a/xcat/c6-os/controller.otherpkgs.pkglist b/xcat/c6-os/controller.otherpkgs.pkglist new file mode 100644 index 0000000..d17980c --- /dev/null +++ b/xcat/c6-os/controller.otherpkgs.pkglist @@ -0,0 +1,52 @@ +## PackStack/Puppet +puppet +openstack-packstack +openstack-puppet-modules +erlang + +## Pre-reqs +mariadb-galera-server +rabbitmq-server + +## OpenStack Deps +openstack-utils +openstack-selinux + +## Nova +openstack-nova +openstack-nova-novncproxy +openstack-nova-console + +## Neutron +openstack-neutron + +## Glance +openstack-glance + +## KeyStone +openstack-keystone + +## Swift +openstack-swift +openstack-swift-proxy +openstack-swift-object +openstack-swift-container +openstack-swift-account + +## Dashboard +openstack-dashboard + +## Telemetry +mongodb-server +openstack-ceilometer-* +python-ceilometer +python-ceilometerclient + +## Cinder +openstack-cinder + +## Nagios +nagios +nagios-devel +nagios-plugins* +nrpe diff --git a/xcat/c6-os/controller.partfile b/xcat/c6-os/controller.partfile new file mode 100644 index 0000000..f7fac11 --- /dev/null +++ b/xcat/c6-os/controller.partfile @@ -0,0 +1,9 @@ +part /boot --fstype=ext4 --size=1024 +part /boot/efi --fstype=vfat --size=100 +part pv.1 --grow --size=1 + +volgroup system --pesize=4096 pv.1 + +logvol / --fstype=ext4 --name=root --vgname=system --size=20480 +logvol swap --name=swap --vgname=system --size=8192 +logvol /var --fstype=ext4 --name=var --vgname=system --size=40960 diff --git a/xcat/c6-os/controller.pkglist b/xcat/c6-os/controller.pkglist new file mode 100644 index 0000000..76db804 --- /dev/null +++ b/xcat/c6-os/controller.pkglist @@ -0,0 +1,25 @@ +xauth +xorg-x11-utils +kernel-devel +qemu-kvm +httpd +php +gcc +glibc +glibc-common +scsi-target-utils +yum-plugin-priorities +xinetd +memcached +mod_wsgi +mod_ssl +python-memcached +gd +gd-devel +openssl +scsi-target-utils +yum-plugin-priorities +xinetd +-*-firmware +-wpa_supplicant +-wireless-tools diff --git a/xcat/c6-os/nova.otherpkgs.pkglist b/xcat/c6-os/nova.otherpkgs.pkglist new file mode 100644 index 0000000..28405ab --- /dev/null +++ b/xcat/c6-os/nova.otherpkgs.pkglist @@ -0,0 +1,25 @@ +## OpenStack Deps +rdo-openstack/openstack-utils +rdo-openstack/openstack-selinux + +## Nova +rdo-openstack/openstack-nova-compute + +## Neutron +rdo-openstack/openstack-neutron + +## Telemetry +rdo-openstack/openstack-ceilometer-compute + +## Nagios +epel/nagios-plugins* +epel/nrpe + +## Foreman +foreman/foreman + +## Puppet +puppet/puppet + +## Ruby +ruby/ruby193-ruby diff --git a/xcat/c6-os/nova.partfile b/xcat/c6-os/nova.partfile new file mode 100644 index 0000000..f7fac11 --- /dev/null +++ b/xcat/c6-os/nova.partfile @@ -0,0 +1,9 @@ +part /boot --fstype=ext4 --size=1024 +part /boot/efi --fstype=vfat --size=100 +part pv.1 --grow --size=1 + +volgroup system --pesize=4096 pv.1 + +logvol / --fstype=ext4 --name=root --vgname=system --size=20480 +logvol swap --name=swap --vgname=system --size=8192 +logvol /var --fstype=ext4 --name=var --vgname=system --size=40960 diff --git a/xcat/c6-os/nova.pkglist b/xcat/c6-os/nova.pkglist new file mode 100644 index 0000000..76db804 --- /dev/null +++ b/xcat/c6-os/nova.pkglist @@ -0,0 +1,25 @@ +xauth +xorg-x11-utils +kernel-devel +qemu-kvm +httpd +php +gcc +glibc +glibc-common +scsi-target-utils +yum-plugin-priorities +xinetd +memcached +mod_wsgi +mod_ssl +python-memcached +gd +gd-devel +openssl +scsi-target-utils +yum-plugin-priorities +xinetd +-*-firmware +-wpa_supplicant +-wireless-tools diff --git a/xcat/c7-os/common.juno.tmpl b/xcat/c7-os/common.juno.tmpl new file mode 100644 index 0000000..8e49dbe --- /dev/null +++ b/xcat/c7-os/common.juno.tmpl @@ -0,0 +1,154 @@ +# +#cmdline + +lang en_US +#KICKSTARTNET# + +# +# Where's the source? +# nfs --server hostname.of.server or IP --dir /path/to/RH/CD/image +# +#nfs --server #XCATVAR:INSTALL_NFS# --dir #XCATVAR:INSTALL_SRC_DIR# + +%include /tmp/repos + +#device ethernet e100 +keyboard "us" + +# +# Clear the MBR +# +zerombr + +# +# Wipe out the disk +# +clearpart --all --initlabel +#clearpart --linux +#key --skip + +# +# Customize to fit your needs +# + +#XCAT_PARTITION_START# +#No RAID +#/boot really significant for this sort of setup nowadays? +#part /boot --size 50 --fstype ext3 +%include /tmp/partitioning +#part swap --size 1024 +#part / --size 1 --grow --fstype ext4 +#XCAT_PARTITION_END# + +#RAID 0 /scr for performance +#part / --size 1024 --ondisk sda +#part swap --size 512 --ondisk sda +#part /var --size 1024 --ondisk sdb +#part swap --size 512 --ondisk sdb +#part raid.01 --size 1 --grow --ondisk sda +#part raid.02 --size 1 --grow --ondisk sdb +#raid /scr --level 0 --device md0 raid.01 raid.02 + +#Full RAID 1 Sample +#part raid.01 --size 50 --ondisk sda +#part raid.02 --size 50 --ondisk sdb +#raid /boot --level 1 --device md0 raid.01 raid.02 +# +#part raid.11 --size 1024 --ondisk sda +#part raid.12 --size 1024 --ondisk sdb +#raid / --level 1 --device md1 raid.11 raid.12 +# +#part raid.21 --size 1024 --ondisk sda +#part raid.22 --size 1024 --ondisk sdb +#raid /var --level 1 --device md2 raid.21 raid.22 +# +#part raid.31 --size 1024 --ondisk sda +#part raid.32 --size 1024 --ondisk sdb +#raid swap --level 1 --device md3 raid.31 raid.32 +# +#part raid.41 --size 1 --grow --ondisk sda +#part raid.42 --size 1 --grow --ondisk sdb +#raid /scr --level 1 --device md4 raid.41 raid.42 + +# +# bootloader config +# --append +# --useLilo +# --md5pass +# +bootloader + +# +# install or upgrade +# +install + +# +# text mode install (default is graphical) +# +text + +# +# firewall +# +#firewall --disabled + +# +# Select a zone +# Add the --utc switch if your hardware clock is set to GMT +# +#timezone US/Hawaii +#timezone US/Pacific +#timezone US/Mountain +#timezone US/Central +#timezone US/Eastern +timezone --utc "#TABLE:site:key=timezone:value#" + +# +# Don't do X +# +skipx + + +# +# To generate an encrypted root password use: +# +# perl -e 'print crypt("blah","Xa") . "\n";'p +# openssl passwd -apr1 -salt xxxxxxxx password +# +# where "blah" is your root password. +# +#rootpw --iscrypted XaLGAVe1C41x2 +#rootpw XaLGAVe1C41x2 --iscrypted +rootpw --iscrypted #CRYPT:passwd:key=system,username=root:password# + +# +# NIS setup: auth --enablenis --nisdomain sensenet +# --nisserver neptune --useshadow --enablemd5 +# +# OR +auth --useshadow --enablemd5 + + +# +# SE Linux +# +selinux --permissive + +# +# Reboot after installation +# +reboot + +# +#end of section +# +%packages +#INCLUDE_DEFAULT_PKGLIST# +%end +%pre +#INCLUDE:#ENV:XCATROOT#/share/xcat/install/scripts/pre.rh.rhel7# +%end +%post +#INCLUDE:#ENV:XCATROOT#/share/xcat/install/scripts/post.xcat# +%end diff --git a/xcat/c7-os/controller.juno.otherpkgs.pkglist b/xcat/c7-os/controller.juno.otherpkgs.pkglist new file mode 100644 index 0000000..8f180df --- /dev/null +++ b/xcat/c7-os/controller.juno.otherpkgs.pkglist @@ -0,0 +1,62 @@ +## PackStack/Puppet +puppet/puppet +rdo-openstack-juno/openstack-packstack +rdo-openstack-juno/openstack-puppet-modules +epel/erlang + +## Pre-reqs +rdo-openstack-juno/mariadb-galera-server +rdo-openstack-juno/rabbitmq-server + +## OpenStack Deps +rdo-openstack-juno/openstack-utils +rdo-openstack-juno/openstack-selinux + +## Nova +rdo-openstack-juno/openstack-nova +rdo-openstack-juno/openstack-nova-novncproxy +rdo-openstack-juno/openstack-nova-console + +## Neutron +rdo-openstack-juno/openstack-neutron +rdo-openstack-juno/openstack-neutron-ml2 +rdo-openstack-juno/openstack-neutron-openvswitch +rdo-openstack-juno/openvswitch + +## Glance +rdo-openstack-juno/openstack-glance + +## KeyStone +rdo-openstack-juno/openstack-keystone + +## Swift +rdo-openstack-juno/openstack-swift +rdo-openstack-juno/openstack-swift-proxy +rdo-openstack-juno/openstack-swift-object +rdo-openstack-juno/openstack-swift-container +rdo-openstack-juno/openstack-swift-account + +## Dashboard +rdo-openstack-juno/openstack-dashboard + +## Telemetry +rdo-openstack-juno/mongodb-server +rdo-openstack-juno/openstack-ceilometer-* +rdo-openstack-juno/python-ceilometer +rdo-openstack-juno/python-ceilometerclient + +## Cinder +rdo-openstack-juno/openstack-cinder + +## Heat +rdo-openstack-juno/openstack-heat-api + +## Nagios +epel/nagios +epel/nagios-devel +epel/nagios-plugins* +epel/nrpe + +## Misc +epel/scsi-target-utils +extras/python-itsdangerous diff --git a/xcat/c7-os/controller.otherpkgs.pkglist b/xcat/c7-os/controller.otherpkgs.pkglist new file mode 100644 index 0000000..23c547c --- /dev/null +++ b/xcat/c7-os/controller.otherpkgs.pkglist @@ -0,0 +1,62 @@ +## PackStack/Puppet +puppet/puppet +rdo-openstack/openstack-packstack +rdo-openstack/openstack-puppet-modules +epel/erlang + +## Pre-reqs +rdo-openstack/mariadb-galera-server +rdo-openstack/rabbitmq-server + +## OpenStack Deps +rdo-openstack/openstack-utils +rdo-openstack/openstack-selinux + +## Nova +rdo-openstack/openstack-nova +rdo-openstack/openstack-nova-novncproxy +rdo-openstack/openstack-nova-console + +## Neutron +rdo-openstack/openstack-neutron +rdo-openstack/openstack-neutron-ml2 +rdo-openstack/openstack-neutron-openvswitch +rdo-openstack/openvswitch + +## Glance +rdo-openstack/openstack-glance + +## KeyStone +rdo-openstack/openstack-keystone + +## Swift +rdo-openstack/openstack-swift +rdo-openstack/openstack-swift-proxy +rdo-openstack/openstack-swift-object +rdo-openstack/openstack-swift-container +rdo-openstack/openstack-swift-account + +## Dashboard +rdo-openstack/openstack-dashboard + +## Telemetry +rdo-openstack/mongodb-server +rdo-openstack/openstack-ceilometer-* +rdo-openstack/python-ceilometer +rdo-openstack/python-ceilometerclient + +## Cinder +rdo-openstack/openstack-cinder + +## Heat +rdo-openstack/openstack-heat-api + +## Nagios +epel/nagios +epel/nagios-devel +epel/nagios-plugins* +epel/nrpe + +## Misc +epel/scsi-target-utils +extras/python-itsdangerous diff --git a/xcat/c7-os/controller.partfile b/xcat/c7-os/controller.partfile new file mode 100644 index 0000000..f7fac11 --- /dev/null +++ b/xcat/c7-os/controller.partfile @@ -0,0 +1,9 @@ +part /boot --fstype=ext4 --size=1024 +part /boot/efi --fstype=vfat --size=100 +part pv.1 --grow --size=1 + +volgroup system --pesize=4096 pv.1 + +logvol / --fstype=ext4 --name=root --vgname=system --size=20480 +logvol swap --name=swap --vgname=system --size=8192 +logvol /var --fstype=ext4 --name=var --vgname=system --size=40960 diff --git a/xcat/c7-os/controller.pkglist b/xcat/c7-os/controller.pkglist new file mode 100644 index 0000000..911c37a --- /dev/null +++ b/xcat/c7-os/controller.pkglist @@ -0,0 +1,25 @@ +#INCLUDE:/opt/xcat/share/xcat/install/rh/compute.rhel7.pkglist# +gcc +gd +gd-devel +glibc +glibc.i686 +glibc-common +httpd +kernel-devel +memcached +mod_ssl +mod_wsgi +openssl +patch +php +python-memcached +qemu-kvm +xinetd +xauth +xorg-x11-utils +yum-plugin-priorities +yum-utils +-*-firmware +-wpa_supplicant +-wireless-tools diff --git a/xcat/c7-os/controller.synclist b/xcat/c7-os/controller.synclist new file mode 100644 index 0000000..e69de29 diff --git a/xcat/c7-os/nova.juno.otherpkgs.pkglist b/xcat/c7-os/nova.juno.otherpkgs.pkglist new file mode 100644 index 0000000..24cda0b --- /dev/null +++ b/xcat/c7-os/nova.juno.otherpkgs.pkglist @@ -0,0 +1,25 @@ +## PackStack/Puppet +puppet/puppet + +## OpenStack Deps +rdo-openstack-juno/openstack-utils +rdo-openstack-juno/openstack-selinux + +## Nova +rdo-openstack-juno/openstack-nova-compute + +## Neutron +rdo-openstack-juno/openstack-neutron +rdo-openstack-juno/openstack-neutron-openvswitch +rdo-openstack-juno/openstack-neutron-ml2 + +## Telemetry +rdo-openstack-juno/openstack-ceilometer-compute + +## Nagios +epel/nagios-plugins* +epel/nrpe + +## Misc +epel/scsi-target-utils +extras/python-greenlet diff --git a/xcat/c7-os/nova.otherpkgs.pkglist b/xcat/c7-os/nova.otherpkgs.pkglist new file mode 100644 index 0000000..5385614 --- /dev/null +++ b/xcat/c7-os/nova.otherpkgs.pkglist @@ -0,0 +1,24 @@ +## PackStack/Puppet +puppet/puppet + +## OpenStack Deps +rdo-openstack/openstack-utils +rdo-openstack/openstack-selinux + +## Nova +rdo-openstack/openstack-nova-compute + +## Neutron +rdo-openstack/openstack-neutron +rdo-openstack/openstack-neutron-openvswitch +rdo-openstack/openstack-neutron-ml2 + +## Telemetry +rdo-openstack/openstack-ceilometer-compute + +## Nagios +epel/nagios-plugins* +epel/nrpe + +## Misc +epel/scsi-target-utils diff --git a/xcat/c7-os/nova.partfile b/xcat/c7-os/nova.partfile new file mode 100644 index 0000000..f7fac11 --- /dev/null +++ b/xcat/c7-os/nova.partfile @@ -0,0 +1,9 @@ +part /boot --fstype=ext4 --size=1024 +part /boot/efi --fstype=vfat --size=100 +part pv.1 --grow --size=1 + +volgroup system --pesize=4096 pv.1 + +logvol / --fstype=ext4 --name=root --vgname=system --size=20480 +logvol swap --name=swap --vgname=system --size=8192 +logvol /var --fstype=ext4 --name=var --vgname=system --size=40960 diff --git a/xcat/c7-os/nova.pkglist b/xcat/c7-os/nova.pkglist new file mode 100644 index 0000000..83c4fc3 --- /dev/null +++ b/xcat/c7-os/nova.pkglist @@ -0,0 +1,26 @@ +#INCLUDE:/opt/xcat/share/xcat/install/rh/compute.rhel7.pkglist# +gcc +gd +gd-devel +glibc +glibc.i686 +glibc-common +httpd +kernel-devel +libvirt +memcached +mod_ssl +mod_wsgi +openssl +patch +php +python-memcached +qemu-kvm +xinetd +xauth +xorg-x11-utils +yum-plugin-priorities +yum-utils +-*-firmware +-wpa_supplicant +-wireless-tools diff --git a/xcat/osimages/c6-os-nova.osimage b/xcat/osimages/c6-os-nova.osimage new file mode 100644 index 0000000..b0917ac --- /dev/null +++ b/xcat/osimages/c6-os-nova.osimage @@ -0,0 +1,18 @@ +# + +c6-os-nova: + objtype=osimage + imagetype=linux + osarch=x86_64 + osname=Linux + osvers=centos6.5 + otherpkgdir=/install/post/otherpkgs/el6 + otherpkglist=/install/templates/c6-os/nova.otherpkgs.pkglist + partitionfile=/install/templates/c6-os/nova.partfile + pkgdir=/install/centos6.5/x86_64,/install/centos6.5/updates/x86_64 + pkglist=/install/templates/c6-os/nova.pkglist + postbootscripts=confignics + profile=nova + provmethod=install + synclists=/install/templates/c6-os/nova.synclist + template=/opt/xcat/share/xcat/install/centos/compute.centos6.tmpl diff --git a/xcat/osimages/c6-os.osimage b/xcat/osimages/c6-os.osimage new file mode 100644 index 0000000..a5d7b41 --- /dev/null +++ b/xcat/osimages/c6-os.osimage @@ -0,0 +1,19 @@ +# + +c7-os-juno-nova: + objtype=osimage + imagetype=linux + osarch=x86_64 + osname=Linux + osvers=centos7.0 + otherpkgdir=/install/post/otherpkgs/el7 + otherpkglist=/install/templates/c7-os/nova.juno.otherpkgs.pkglist + partitionfile=/install/templates/c7-os/nova.partfile + pkgdir=/install/centos7.0/x86_64,/install/centos7.0/updates/x86_64 + pkglist=/install/templates/c7-os/nova.pkglist + postbootscripts=confignics + postscripts=hardeths + profile=nova + provmethod=install + synclists=/install/templates/c7-os/nova.synclist + template=/install/templates/c7-os/common.juno.tmpl diff --git a/xcat/osimages/c7-os-juno-nova.osimage b/xcat/osimages/c7-os-juno-nova.osimage new file mode 100644 index 0000000..a5d7b41 --- /dev/null +++ b/xcat/osimages/c7-os-juno-nova.osimage @@ -0,0 +1,19 @@ +# + +c7-os-juno-nova: + objtype=osimage + imagetype=linux + osarch=x86_64 + osname=Linux + osvers=centos7.0 + otherpkgdir=/install/post/otherpkgs/el7 + otherpkglist=/install/templates/c7-os/nova.juno.otherpkgs.pkglist + partitionfile=/install/templates/c7-os/nova.partfile + pkgdir=/install/centos7.0/x86_64,/install/centos7.0/updates/x86_64 + pkglist=/install/templates/c7-os/nova.pkglist + postbootscripts=confignics + postscripts=hardeths + profile=nova + provmethod=install + synclists=/install/templates/c7-os/nova.synclist + template=/install/templates/c7-os/common.juno.tmpl diff --git a/xcat/osimages/c7-os-juno.osimage b/xcat/osimages/c7-os-juno.osimage new file mode 100644 index 0000000..6ed8991 --- /dev/null +++ b/xcat/osimages/c7-os-juno.osimage @@ -0,0 +1,19 @@ +# + +c7-os-juno: + objtype=osimage + imagetype=linux + osarch=x86_64 + osname=Linux + osvers=centos7.0 + otherpkgdir=/install/post/otherpkgs/el7 + otherpkglist=/install/templates/c7-os/controller.juno.otherpkgs.pkglist + partitionfile=/install/templates/c7-os/controller.partfile + pkgdir=/install/centos7.0/x86_64,/install/centos7.0/updates/x86_64 + pkglist=/install/templates/c7-os/controller.pkglist + postbootscripts=setup_extnw -n xcat_pub,packstack-openstack,add_glance_images + postscripts=confignics,hardeths + profile=controller + provmethod=install + synclists=/install/templates/c7-os/controller.synclist + template=/install/templates/c7-os/common.juno.tmpl diff --git a/xcat/osimages/c7-os-nova.osimage b/xcat/osimages/c7-os-nova.osimage new file mode 100644 index 0000000..964767e --- /dev/null +++ b/xcat/osimages/c7-os-nova.osimage @@ -0,0 +1,19 @@ +# + +c7-os-nova: + objtype=osimage + imagetype=linux + osarch=x86_64 + osname=Linux + osvers=centos7.0 + otherpkgdir=/install/post/otherpkgs/el7 + otherpkglist=/install/templates/c7-os/nova.otherpkgs.pkglist + partitionfile=/install/templates/c7-os/nova.partfile + pkgdir=/install/centos7.0/x86_64,/install/centos7.0/updates/x86_64 + pkglist=/install/templates/c7-os/nova.pkglist + postbootscripts=confignics + postscripts=hardeths + profile=nova + provmethod=install + synclists=/install/templates/c7-os/nova.synclist + template=/opt/xcat/share/xcat/install/rh/compute.rhel7.tmpl diff --git a/xcat/osimages/c7-os.osimage b/xcat/osimages/c7-os.osimage new file mode 100644 index 0000000..32fb42a --- /dev/null +++ b/xcat/osimages/c7-os.osimage @@ -0,0 +1,19 @@ +# + +c7-os: + objtype=osimage + imagetype=linux + osarch=x86_64 + osname=Linux + osvers=centos7.0 + otherpkgdir=/install/post/otherpkgs/el7 + otherpkglist=/install/templates/c7-os/controller.otherpkgs.pkglist + partitionfile=/install/templates/c7-os/controller.partfile + pkgdir=/install/centos7.0/x86_64,/install/centos7.0/updates/x86_64 + pkglist=/install/templates/c7-os/controller.pkglist + postbootscripts=setup_extnw -n xcat_pub,packstack-openstack,add_glance_images + postscripts=confignics,hardeths + profile=controller + provmethod=install + synclists=/install/templates/c7-os/controller.synclist + template=/opt/xcat/share/xcat/install/rh/compute.rhel7.tmpl diff --git a/xcat/postscripts/data/packstack/c7-patches/apache-puppet.patch b/xcat/postscripts/data/packstack/c7-patches/apache-puppet.patch new file mode 100644 index 0000000..38887c7 --- /dev/null +++ b/xcat/postscripts/data/packstack/c7-patches/apache-puppet.patch @@ -0,0 +1,11 @@ +--- a/manifests/version.pp 2014-08-27 12:24:57.659804760 +0100 ++++ b/manifests/version.pp 2014-08-27 12:25:06.841971767 +0100 +@@ -5,7 +5,7 @@ + class apache::version { + case $::osfamily { + 'RedHat': { +- if ($::operatingsystem == 'Fedora' and $::operatingsystemrelease >= 18) or ($::operatingsystem != 'Fedora' and $::operatingsystemrelease >= 7) { ++ if ($::operatingsystem == 'Fedora' and $::operatingsystemrelease >= 18) or ($::operatingsystem != 'Fedora' and $::operatingsystemmajrelease >= 7) { + $default = 2.4 + } else { + $default = 2.2 diff --git a/xcat/postscripts/data/packstack/c7-patches/mysql-puppet.patch b/xcat/postscripts/data/packstack/c7-patches/mysql-puppet.patch new file mode 100644 index 0000000..e7ea23b --- /dev/null +++ b/xcat/postscripts/data/packstack/c7-patches/mysql-puppet.patch @@ -0,0 +1,60 @@ +diff --git a/manifests/params.pp b/manifests/params.pp +index 0e91e81..f1964d4 100644 +--- a/manifests/params.pp ++++ b/manifests/params.pp +@@ -38,8 +38,8 @@ + $provider = 'mysql' + } + } +- 'RedHat': { +- if $::operatingsystemrelease >= 7 { ++ /^(RedHat|CentOS|Scientific)$/: { ++ if $::operatingsystemmajrelease >= 7 { + $provider = 'mariadb' + } else { + $provider = 'mysql' +diff --git a/spec/classes/mysql_server_spec.rb b/spec/classes/mysql_server_spec.rb +index e21f22c..3184f65 100644 +--- a/spec/classes/mysql_server_spec.rb ++++ b/spec/classes/mysql_server_spec.rb +@@ -75,6 +75,40 @@ + end + end + ++ context 'mysql::server::install on RHEL 7' do ++ let :facts do ++ { :osfamily => 'RedHat', ++ :operatingsystem => 'RedHat', ++ :operatingsystemmajrelease => 7 ++ } ++ end ++ ++ let(:params) {{ :package_ensure => 'present', :name => 'mariadb-server' }} ++ it do ++ should contain_package('mysql-server').with({ ++ :ensure => :present, ++ :name => 'mariadb-server', ++ }) ++ end ++ end ++ ++ context 'mysql::server::install on CentOS 7' do ++ let :facts do ++ { :osfamily => 'RedHat', ++ :operatingsystem => 'CentOS', ++ :operatingsystemmajrelease => 7 ++ } ++ end ++ ++ let(:params) {{ :package_ensure => 'present', :name => 'mariadb-server' }} ++ it do ++ should contain_package('mysql-server').with({ ++ :ensure => :present, ++ :name => 'mariadb-server', ++ }) ++ end ++ end ++ + context 'mysql::server::config' do + it do + should contain_file('/etc/mysql').with({ diff --git a/xcat/postscripts/data/packstack/c7-patches/nova-puppet.patch b/xcat/postscripts/data/packstack/c7-patches/nova-puppet.patch new file mode 100644 index 0000000..236c61a --- /dev/null +++ b/xcat/postscripts/data/packstack/c7-patches/nova-puppet.patch @@ -0,0 +1,15 @@ +diff --git a/manifests/params.pp b/manifests/params.pp +index f553567..e62f58d 100644 +--- a/manifests/params.pp ++++ b/manifests/params.pp +@@ -44,8 +44,8 @@ + 'Fedora', 'RedHat': { + $special_service_provider = undef + } +- 'RedHat': { +- if ($::operatingsystemrelease < 7) { ++ 'RedHat', 'CentOS', 'Scientific': { ++ if ($::operatingsystemmajrelease < 7) { + $special_service_provider = 'init' + } else { + $special_service_provider = undef diff --git a/xcat/postscripts/data/packstack/c7-patches/python.patch b/xcat/postscripts/data/packstack/c7-patches/python.patch new file mode 100644 index 0000000..626196e --- /dev/null +++ b/xcat/postscripts/data/packstack/c7-patches/python.patch @@ -0,0 +1,38 @@ +diff --git a/packstack/puppet/templates/amqp.pp b/packstack/puppet/templates/amqp.pp +index 15d7b5d..ca79707 100644 +--- a/packstack/puppet/templates/amqp.pp ++++ b/packstack/puppet/templates/amqp.pp +@@ -44,7 +44,7 @@ + } + + 'RedHat', 'CentOS': { +- if $::operatingsystemrelease >= 7 { ++ if $::operatingsystemmajrelease >= 7 { + $config = '/etc/qpid/qpidd.conf' + } else { + $config = '/etc/qpidd.conf' +diff --git a/packstack/puppet/templates/mysql_install.pp b/packstack/puppet/templates/mysql_install.pp +index 1364f79..6a33cba 100644 +--- a/packstack/puppet/templates/mysql_install.pp ++++ b/packstack/puppet/templates/mysql_install.pp +@@ -1,6 +1,6 @@ + + # on EL6 we need to wait for innodb changes before starting mysqld +-if $::operatingsystem in ['RedHat','CentOS','Scientific'] and $::operatingsystemrelease < 7 { ++if $::operatingsystem in ['RedHat','CentOS','Scientific'] and $::operatingsystemmajrelease < 7 { + $manage_service = false + service { 'mysqld': + enable => true, +diff --git a/packstack/puppet/templates/prescript.pp b/packstack/puppet/templates/prescript.pp +index 4c95292..32d53e8 100644 +--- a/packstack/puppet/templates/prescript.pp ++++ b/packstack/puppet/templates/prescript.pp +@@ -10,7 +10,7 @@ + } + + # For older RHEL-6 releases kernel/iptools does not support netns +-if $::operatingsystem in $el_releases and $::operatingsystemrelease < 7 { ++if $::operatingsystem in $el_releases and $::operatingsystemmajrelease < 7 { + $info = "The RDO kernel that includes network namespace (netns) support has been installed on host $::ipaddress." + $warning = " This is a community supplied kernel and is not officially supported by Red Hat. Installing this kernel on RHEL systems may impact your ability to get support from Red Hat." + diff --git a/xcat/postscripts/data/packstack/packstack-answers-multi.txt b/xcat/postscripts/data/packstack/packstack-answers-multi.txt new file mode 100644 index 0000000..335475d --- /dev/null +++ b/xcat/postscripts/data/packstack/packstack-answers-multi.txt @@ -0,0 +1,29 @@ +[general] +CONFIG_NTP_SERVERS=192.168.33.200 +CONFIG_KEYSTONE_ADMIN_PW=openstack +CONFIG_USE_EPEL=n + +CONFIG_CONTROLLER_HOST=##OPENSTACK_MASTER## +CONFIG_COMPUTE_HOSTS=##OPENSTACK_MASTER## +CONFIG_NETWORK_HOSTS=##OPENSTACK_MASTER## +CONFIG_VCENTER_HOST=##OPENSTACK_MASTER## +CONFIG_AMQP_HOST=##OPENSTACK_MASTER## +CONFIG_MYSQL_HOST=##OPENSTACK_MASTER## +CONFIG_MONGODB_HOST=##OPENSTACK_MASTER## + +CONFIG_HORIZON_SSL=y +CONFIG_PROVISION_DEMO=n + +CONFIG_CEILOMETER_INSTALL=n +CONFIG_NAGIOS_INSTALL=n +CONFIG_SWIFT_INSTALL=n + +CONFIG_NEUTRON_L2_PLUGIN=ml2 +CONFIG_NEUTRON_ML2_TYPE_DRIVERS=vlan +CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=vlan +CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS=openvswitch +CONFIG_NEUTRON_ML2_VLAN_RANGES=physnet_xcat:1000:2000 +CONFIG_NEUTRON_OVS_TENANT_NETWORK_TYPE=vlan +CONFIG_NEUTRON_OVS_VLAN_RANGES=physnet_xcat:1000:2000 +CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=physnet_xcat:br-xcat +CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-xcat:enp2s1f0 diff --git a/xcat/postscripts/data/packstack/packstack-answers-single.txt b/xcat/postscripts/data/packstack/packstack-answers-single.txt new file mode 100644 index 0000000..e4f33e0 --- /dev/null +++ b/xcat/postscripts/data/packstack/packstack-answers-single.txt @@ -0,0 +1,15 @@ +[general] +CONFIG_NTP_SERVERS=192.168.33.200 +CONFIG_KEYSTONE_ADMIN_PW=openstack +CONFIG_USE_EPEL=n + +CONFIG_CONTROLLER_HOST=##OPENSTACK_MASTER## +CONFIG_COMPUTE_HOSTS=##OPENSTACK_MASTER## +CONFIG_NETWORK_HOSTS=##OPENSTACK_MASTER## +CONFIG_VCENTER_HOST=##OPENSTACK_MASTER## +CONFIG_AMQP_HOST=##OPENSTACK_MASTER## +CONFIG_MYSQL_HOST=##OPENSTACK_MASTER## +CONFIG_MONGODB_HOST=##OPENSTACK_MASTER## + +CONFIG_HORIZON_SSL=y +CONFIG_PROVISION_DEMO=n diff --git a/xcat/postscripts/data/packstack/packstack-answers.txt b/xcat/postscripts/data/packstack/packstack-answers.txt new file mode 120000 index 0000000..51e26ff --- /dev/null +++ b/xcat/postscripts/data/packstack/packstack-answers.txt @@ -0,0 +1 @@ +packstack-answers-multi.txt \ No newline at end of file diff --git a/xcat/postscripts/scripts/add_glance_images b/xcat/postscripts/scripts/add_glance_images new file mode 100755 index 0000000..b582c02 --- /dev/null +++ b/xcat/postscripts/scripts/add_glance_images @@ -0,0 +1,16 @@ +#!/bin/sh + +mkdir -p /post +mount $MASTER:$INSTALLDIR /post + +IMAGEDIR=/post/data/openstack/images + +. ~/keystonerc_admin + +glance image-create --name cento6.4-gold --is-public=True --disk-format=raw --container-format=bare --file $IMAGEDIR/centos6.4-x86_64-gold-master.img +glance image-create --name cento6.4-min --is-public=True --disk-format=qcow2 --container-format=bare --file $IMAGEDIR/CentOS-6.4-x86_64-Minimal-OpenStack.image.qcow2c +glance image-create --name rhel7-beta --is-public=True --disk-format=qcow2 --container-format=bare --file $IMAGEDIR/rhel-7-public-beta-x86_64-kvm.qcow2 +glance image-create --name centos7 --is-public=True --disk-format=qcow2 --container-format=bare --file $IMAGEDIR/CentOS-7-x86_64-GenericCloud.qcow2 +glance image-create --name ubuntu14.04 --is-public=True --disk-format=raw --container-format=bare --file $IMAGEDIR/ubuntu-14.04-server-cloudimg-amd64-disk1.img + +umount /post diff --git a/xcat/postscripts/scripts/packstack-openstack b/xcat/postscripts/scripts/packstack-openstack new file mode 100755 index 0000000..558eb4a --- /dev/null +++ b/xcat/postscripts/scripts/packstack-openstack @@ -0,0 +1,89 @@ +#!/bin/sh + +#set -ax + +PACKSTACKDIR=/xcatpost/ocf/data/packstack +IMAGEDIR=/post/data/openstack/images +ANSWERS_FILE=packstack-answers.txt + +export HOME=/root + +IP=$(nslookup $NODE-pub | grep Address: | tail -n 1 | awk '{print $2}') + +sed s/##OPENSTACK_MASTER##/$IP/g ${PACKSTACKDIR}/${ANSWERS_FILE} > /tmp/${ANSWERS_FILE} + +packstack --answer-file=/tmp/${ANSWERS_FILE} + +. /root/keystonerc_admin + +# Add the bridge networks +ovs-vsctl add-br br-external +ovs-vsctl add-port br-external enp2s1f1 + +ovs-vsctl add-br br-internal +ovs-vsctl add-port br-internal enp2s1f0 + +# Remove the default networks +neutron router-gateway-clear router1 +neutron subnet-delete public_subnet +neutron net-delete public + +nova flavor-create m1.nano auto 128 1 1 + +# Add the relevant networks on the cluster +neutron net-create ext_net --router:external=True +neutron subnet-create --name ext_subnet --disable-dhcp ext_net 192.168.33.0/24 \ + --gateway 192.168.33.254 --allocation-pool start=192.168.33.161,end=192.168.33.190 + +neutron net-create int_net +neutron subnet-create --name int_subnet --disable-dhcp int_net 10.0.0.0/23 \ + --gateway 10.0.0.201 --allocation-pool start=10.0.0.161,end=10.0.0.190 + +# Add the default cirros image from xCAT's local repo +mkdir -p /post +mount $MASTER:$INSTALLDIR /post +glance image-create --name cirros --is-public=True --disk-format=raw --container-format=bare --file $IMAGEDIR/cirros-0.3.1-x86_64-disk.img +umount /post + +# Create the temporary demo user +keystone tenant-create --name demo +keystone user-create --name demo --pass demo +keystone user-role-add --user demo --role _member_ --tenant demo + +cat > /root/keystonerc_demo << EOF +export OS_USERNAME=demo +export OS_TENANT_NAME=demo +export OS_PASSWORD=demo +export OS_AUTH_URL=http://$IP:5000/v2.0/ +export PS1='[\u@\h \W(keystone_demo)]\$ ' +EOF + +. /root/keystonerc_demo + +# Create the ssh key, and add to OpenStack +ssh-keygen -t rsa -b 4096 -N '' -f /root/id_rsa_demo +nova keypair-add --pub-key /root/id_rsa_demo.pub demo + +# Remove the default networks if they have been created +neutron router-interface-delete router1 private_subnet +neutron subnet-delete private_subnet +neutron net-delete private + +# Create the private network and router under the demo tenant +neutron net-create stack_net_priv +neutron subnet-create --name stack_subnet_priv --dns-nameserver 8.8.8.8 stack_net_priv 10.0.8.0/24 + +neutron router-create extnet_stackrouter +neutron router-gateway-set extnet_stackrouter ext_net +neutron router-interface-add extnet_stackrouter stack_net_priv + +# Allow ssh and ping from the default security group +neutron security-group-rule-create --protocol icmp default +neutron security-group-rule-create --protocol tcp --port-range-min 22 --port-range-max 22 default + +################################ +# +## Create a new VM +#nova boot --poll --flavor m1.nano --image cirros --nic net-id=d418cb0f-4ccb-4a1b-9fec-5fa23e20d9e7 --key-name demo test0 +# +################################ diff --git a/xcat/postscripts/scripts/setup_extnw b/xcat/postscripts/scripts/setup_extnw new file mode 100755 index 0000000..f2995ec --- /dev/null +++ b/xcat/postscripts/scripts/setup_extnw @@ -0,0 +1,93 @@ +#!/bin/bash + +################################################################################# +# Copyright Arif Ali - aali@ocf.co.uk, OCF Plc. # +# Copyright from 2014 to the legal extent of UK law. # +# Distribution is only permitted with written consent from Arif Ali or OCF Plc. # +################################################################################# +# # +# Authors: Arif Ali - aali@ocf.co.uk, OCF plc # +# # +################################################################################# + +# +# This script allows you add the an external gateway and dns for external network +# access. This is useful for login nodes, or atleast external facing nodes +# +# We just need to set the networkname as referenced in the networks table to use +# in this script using the -s paramater +# +# The script will by default will only work with the login profile, you can change +# that using the -p flag +# +# This is a Linux only script +# + +#set -ax + +logger -t xcat "Install: $0 $*" + +usage() { echo "$0 -n [-i ]" 1>&2; exit 1; } + +while getopts i:n:? flag; do + case $flag in + i) + installroot=$OPTARG + ;; + n) + NETNAME=$OPTARG + ;; + ?) + usage + ;; + esac +done + +[[ -z "$NETNAME" ]] && usage +[[ -z "$installroot" ]] && installroot=/ + +num_index=1 +found=0 + +# go through all the networks defined, and check to see if it is in $NETNAME +while [ $num_index -le $NETWORKS_LINES ]; do + eval str_temp=\$NETWORKS_LINE$num_index + str_temp_name=`echo $str_temp | awk -F'netname=' '{print $2}' | awk -F'|' '{print $1}'` + if [ "$str_temp_name" = "${NETNAME}" ];then + found=1 + break + fi + num_index=$((num_index+1)) +done + +# If we don't find the defined network, then exit +[ $found -eq 0 ] && exit 0 + +# Do the gateway +str_gateway=`echo $str_temp | awk -F'gateway=' '{print $2}' | awk -F'|' '{print $1}'` + +if [ $str_gateway != "" ]; then + + sed -ibak -e '/GATEWAY/d' $installroot/etc/sysconfig/network + echo GATEWAY=$str_gateway >> $installroot/etc/sysconfig/network + + ip route del default + ip route add default via $str_gateway + +fi + +# Do the nameservers +str_nameservers=`echo $str_temp | awk -F'nameservers=' '{print $2}' | awk -F'|' '{print $1}'` + +if [[ $str_nameservers != "" ]]; then + + for nameserver in `echo $str_nameservers | tr ',' ' '` ; do + + if [[ ! `grep $nameserver $installroot/etc/resolv.conf` ]] ; then + echo "nameserver $nameserver" >> $installroot/etc/resolv.conf + fi + + done + +fi +