From 5d61012f86a2e036908a2f7441672e43cbd34790 Mon Sep 17 00:00:00 2001 From: Steven Hardy Date: Tue, 8 Dec 2015 10:28:08 +0000 Subject: Enable per-role SchedulerHints This adds a parameter for each role, where optional scheduler hints may be passed to nova. One potential use-case for this is using the ComputeCapabilities to pin deployment to a specific node (not just a specific role/profile mapping to a pool of nodes like we have currently documented in the ahc-match docs). This could work as follows: 1. Tag a specific node as "node:controller-0" in Ironic: ironic node-update replace properties/capabilities='node:controller-0,boot_option:local' 2. Create a heat environment file which uses %index% parameters: ControllerSchedulerHints: 'capabilities:node': 'controller-%index%' Change-Id: I79251dde719b4bb5c3b0cce90d0c9d1581ae66f2 --- puppet/swift-storage.yaml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'puppet/swift-storage.yaml') diff --git a/puppet/swift-storage.yaml b/puppet/swift-storage.yaml index a8183f76..840cf540 100644 --- a/puppet/swift-storage.yaml +++ b/puppet/swift-storage.yaml @@ -94,7 +94,10 @@ parameters: Extra properties or metadata passed to Nova for the created nodes in the overcloud. It's accessible via the Nova metadata API. type: json - + SchedulerHints: + type: json + description: Optional scheduler hints to pass to nova + default: {} resources: @@ -110,6 +113,7 @@ resources: user_data: {get_resource: UserData} name: {get_param: Hostname} metadata: {get_param: ServerMetadata} + scheduler_hints: {get_param: SchedulerHints} # Combine the NodeAdminUserData and NodeUserData mime archives UserData: -- cgit 1.2.3-korg