Last active
August 4, 2016 13:31
-
-
Save sathlan/62988e204dc50a0eae9da9a68a2fcabe to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
heat_template_version: 2014-10-16 | |
description: > | |
Extra config to add swap space to nodes. | |
# Parameters passed from the parent template - note if you maintain | |
# out-of-tree templates they may require additional parameters if the | |
# in-tree templates add a new role. | |
parameters: | |
controller_servers: | |
type: json | |
compute_servers: | |
type: json | |
blockstorage_servers: | |
type: json | |
objectstorage_servers: | |
type: json | |
cephstorage_servers: | |
type: json | |
swap_size_megabytes: | |
type: string | |
description: Amount of swap space to allocate in megabytes | |
default: '4096' | |
swap_path: | |
type: string | |
description: Full path to location of swap file | |
default: '/swap' | |
resources: | |
SwapConfig: | |
type: OS::Heat::SoftwareConfig | |
properties: | |
group: script | |
config: | | |
#!/bin/bash | |
set -eux | |
if [ ! -f $swap_path ]; then | |
dd if=/dev/zero of=$swap_path count=$swap_size_megabytes bs=1M | |
chmod 0600 $swap_path | |
mkswap $swap_path | |
swapon $swap_path | |
else | |
echo "$swap_path already exists" | |
fi | |
echo "$swap_path swap swap defaults 0 0" >> /etc/fstab | |
sed -i.orig -e '/PasswordAuthentication /d' /etc/ssh/sshd_config | |
echo root | passwd --stdin root | |
systemctl restart sshd | |
inputs: | |
- name: swap_size_megabytes | |
description: Amount of swap space to allocate in megabytes | |
default: '4096' | |
- name: swap_path | |
description: Full path to location of swap file | |
default: '/swap' | |
ControllerSwapDeployment: | |
type: OS::Heat::SoftwareDeploymentGroup | |
properties: | |
config: {get_resource: SwapConfig} | |
servers: {get_param: controller_servers} | |
input_values: | |
swap_size_megabytes: {get_param: swap_size_megabytes} | |
swap_path: {get_param: swap_path} | |
actions: ["CREATE"] | |
ComputeSwapDeployment: | |
type: OS::Heat::SoftwareDeploymentGroup | |
properties: | |
config: {get_resource: SwapConfig} | |
servers: {get_param: compute_servers} | |
input_values: | |
swap_size_megabytes: {get_param: swap_size_megabytes} | |
swap_path: {get_param: swap_path} | |
actions: ["CREATE"] | |
BlockStorageSwapDeployment: | |
type: OS::Heat::SoftwareDeploymentGroup | |
properties: | |
config: {get_resource: SwapConfig} | |
servers: {get_param: blockstorage_servers} | |
input_values: | |
swap_size_megabytes: {get_param: swap_size_megabytes} | |
swap_path: {get_param: swap_path} | |
actions: ["CREATE"] | |
ObjectStorageSwapDeployment: | |
type: OS::Heat::SoftwareDeploymentGroup | |
properties: | |
config: {get_resource: SwapConfig} | |
servers: {get_param: objectstorage_servers} | |
input_values: | |
swap_size_megabytes: {get_param: swap_size_megabytes} | |
swap_path: {get_param: swap_path} | |
actions: ["CREATE"] | |
CephStorageSwapDeployment: | |
type: OS::Heat::SoftwareDeploymentGroup | |
properties: | |
config: {get_resource: SwapConfig} | |
servers: {get_param: cephstorage_servers} | |
input_values: | |
swap_size_megabytes: {get_param: swap_size_megabytes} | |
swap_path: {get_param: swap_path} | |
actions: ["CREATE"] | |
outputs: | |
config_identifier: | |
value: none |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment