FSM sam:dme:LsServerConfigure

Rule ID:611

service-profile configuration FSM
Applies to MO: ls:Server

Name: Configure
Stage: post-explicit
Message: Configuring Service Profile name(FSM:sam:dme:LsServerConfigure)

Begin State: ApplyTemplate


States
 ApplyTemplate
If the Service Profile is bound to templates and connectivity policies, apply the templates. This includes:
  • Service Profile Template
  • LAN and SAN connectivity policies
  • vNIC connectivity policies
  • vNIC and vHBA templates
  • vCON assignment

  On Success: ApplyIdentifiers
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Applying configuration template srcTemplName(FSM-STAGE:sam:dme:LsServerConfigure:ApplyTemplate)

  Notify:
   Target:
   Instance: active
   Purpose: mod
   Custom: true
   Data:

 ApplyIdentifiers
Determine if UCSM can resolve identifier pools to "default" local pools.
When UCSM is registered to UCS Central, UCSM should not use "default" local pools until the pools have been resolved from the identity manager.
Identifier pools include IP addresses, IQNs, MAC addresses, WWN, UUIDs.

  On Success: checkAssignedIdentifiersForDup
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolving and applying identifiers locally(FSM-STAGE:sam:dme:LsServerConfigure:ApplyIdentifiers)

  Notify:
   Target:
   Instance: active
   Purpose: mod
   Custom: true
   Data:

 checkAssignedIdentifiersForDup
NO COMMENTS

  On Success: ResolvePolicies
  On Fail: ApplyIdentifiers
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: checking assigned identifiers for dup(FSM-STAGE:sam:dme:LsServerConfigure:checkAssignedIdentifiersForDup)

  Notify:
   Target: identifier-mgr:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: Request

 ResolvePolicies
Remote Resolve Operational Policies, i.e. retrieve policies from UCS Central.

  On Success: ResolveNetworkPolicies
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolving various policies from UCS Central(FSM-STAGE:sam:dme:LsServerConfigure:ResolvePolicies)

  Notify:
   Target: policy-mgr:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: ResolveMany

 ResolveNetworkPolicies
Remote Resolve Dependent Operational Policies

  On Success: ResolveNetworkTemplates
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolving various dependent policies from UCS Central(FSM-STAGE:sam:dme:LsServerConfigure:ResolveNetworkPolicies)

  Notify:
   Target: policy-mgr:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: ResolveMany

 ResolveNetworkTemplates
Remote Resolve Dependent Operational Policies

  On Success: ResolveIdentifiers
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolving various template policies from UCS Central(FSM-STAGE:sam:dme:LsServerConfigure:ResolveNetworkTemplates)

  Notify:
   Target: policy-mgr:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: ResolveMany

 ResolveIdentifiers
Resolve Identifiers

  On Success: ApplyDefaultIdentifiers
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolving identifiers from UCS Central(FSM-STAGE:sam:dme:LsServerConfigure:ResolveIdentifiers)

  Notify:
   Target: identifier-mgr:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: Request

 ApplyDefaultIdentifiers
Apply Default Identifiers

  On Success: checkAssignedDefaultIdentifiersForDup
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolving and applying default identifiers locally(FSM-STAGE:sam:dme:LsServerConfigure:ApplyDefaultIdentifiers)

  Notify:
   Target:
   Instance: active
   Purpose: mod
   Custom: true
   Data:

 checkAssignedDefaultIdentifiersForDup
NO COMMENTS

  On Success: ResolveDefaultIdentifiers
  On Fail: ApplyDefaultIdentifiers
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: checking assigned identifiers(from default pool) for dup(FSM-STAGE:sam:dme:LsServerConfigure:checkAssignedDefaultIdentifiersForDup)

  Notify:
   Target: identifier-mgr:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: Request

 ResolveDefaultIdentifiers
Resolve Default Identifiers

  On Success: ResolveDistributableNames
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolving default identifiers from UCS Central(FSM-STAGE:sam:dme:LsServerConfigure:ResolveDefaultIdentifiers)

  Notify:
   Target: identifier-mgr:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: Request

 ResolveDistributableNames
MOVED UP Resolve Operational Policies Resolve Distributable Names from Host Pack reference(if applicable)

  On Success: ResolveDistributable
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolving distributable names from host pack(FSM-STAGE:sam:dme:LsServerConfigure:ResolveDistributableNames)

  Notify:
   Target: operation-mgr:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: ResolveDistributableNames

 ResolveDistributable
Resolve Distributable from Host Pack reference(if applicable)

  On Success: ResolveImages
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolve distributable from operations manager(FSM-STAGE:sam:dme:LsServerConfigure:ResolveDistributable)

  Notify:
   Target: operation-mgr:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: ResolveMany

 ResolveImages
Resolve Images from UCS Central

  On Success: ResolveSchedule
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolve images from operations manager(FSM-STAGE:sam:dme:LsServerConfigure:ResolveImages)

  Notify:
   Target: operation-mgr:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: ResolveMany

 ResolveSchedule
Resolve Schedule from UCS Central

  On Success: ResolveStorageSchedule
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolving schedule policy from UCS Central(FSM-STAGE:sam:dme:LsServerConfigure:ResolveSchedule)

  Notify:
   Target: policy-mgr:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: Resolve

 ResolveStorageSchedule
Resolve Storage Schedule from UCS Central

  On Success: ValidatePolicyOwnership
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolving schedule policy from UCS Central(FSM-STAGE:sam:dme:LsServerConfigure:ResolveStorageSchedule)

  Notify:
   Target: policy-mgr:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: ResolveMany

 ValidatePolicyOwnership
Check if we are a global service profile and after resolving all the policies, pointing to any local policy here.

  On Success: ApplyPolicies
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Validating policy integrity from ownership perspective(FSM-STAGE:sam:dme:LsServerConfigure:ValidatePolicyOwnership)

  Notify:
   Target:
   Instance: active
   Purpose: mod
   Custom: true
   Data:

 ApplyPolicies
Apply Policies from UCS Central (no-op)

  On Success: ProvisionStorage
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolving and applying policies(FSM-STAGE:sam:dme:LsServerConfigure:ApplyPolicies)

  Notify:
   Target:
   Instance: active
   Purpose: mod
   Custom: true
   Data:

 ProvisionStorage
NO COMMENTS

  On Success: WaitForStorageProvision
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Resolving storage policy(FSM-STAGE:sam:dme:LsServerConfigure:ProvisionStorage)

  Notify:
   Target: storage-broker:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: Allocate

 WaitForStorageProvision
NO COMMENTS

  On Success: ResolveBootConfig
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: waiting for storage provisioning to complete(FSM-STAGE:sam:dme:LsServerConfigure:WaitForStorageProvision)

  Notify:
   Target: storage-broker:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: AllocateStatus

 ResolveBootConfig
ResolveBootConfig (no-op)

  On Success: EvaluateAssociation
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Computing binding changes(FSM-STAGE:sam:dme:LsServerConfigure:ResolveBootConfig)

  Notify:
   Target:
   Instance: active
   Purpose: mod
   Custom: true
   Data:

 EvaluateAssociation
Evaluate Association.
Find a suitable compute:Physical based on the compute binding. The compute:Physical must:
  • Be successfully discovered
  • Be in service
  • Be available (i.e. it is not assigned to another service profile)
  • Satisfy the ls:Server requirements

  On Success: AnalyzeImpact
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Evaluate association with server pnDn(FSM-STAGE:sam:dme:LsServerConfigure:EvaluateAssociation)

  Notify:
   Target:
   Instance: active
   Purpose: mod
   Custom: true
   Data:

 AnalyzeImpact
Analyze Impact

  On Success: EstimateApplyConfig
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Analyzing changes impact(FSM-STAGE:sam:dme:LsServerConfigure:AnalyzeImpact)

  Notify:
   Target:
   Instance: active
   Purpose: mod
   Custom: true
   Data:

 EstimateApplyConfig
Estimate apply config change impact

  On Success: ApplyMaintConfig
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Estimating Apply config change impact(FSM-STAGE:sam:dme:LsServerConfigure:EstimateApplyConfig)

  Notify:
   Target:
   Instance: active
   Purpose: mod
   Custom: true
   Data:

 ApplyMaintConfig
Set the server maintenance mode

  On Success: WaitForMaintPermission
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Waiting to set the server maintenance mode on CIMC(FSM-STAGE:sam:dme:LsServerConfigure:ApplyMaintConfig)

  Notify:
   Target: sam:bladeAG
   Instance: active
   Purpose: mod
   Custom: true
   Data: compute:Physical
   Method: FsmLsServerConfigureApplyMaintConfig

 WaitForMaintPermission
here we wait for user ack if necessary

  On Success: WaitForMaintWindow
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 1000000000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Waiting for ack or maint window(FSM-STAGE:sam:dme:LsServerConfigure:WaitForMaintPermission)

  Notify:
   Target:
   Instance: active
   Purpose: mod
   Custom: true
   Data:

 WaitForMaintWindow
here we wait for proper time to come

  On Success: CommitStorage
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 1000000000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Waiting for maintenance window(FSM-STAGE:sam:dme:LsServerConfigure:WaitForMaintWindow)

  Notify:
   Target:
   Instance: active
   Purpose: mod
   Custom: true
   Data:

 CommitStorage
NO COMMENTS

  On Success: WaitForCommitStorage
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FINITE
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: committing storage for service profile(FSM-STAGE:sam:dme:LsServerConfigure:CommitStorage)

  Notify:
   Target: storage-broker:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: Commit

 WaitForCommitStorage
NO COMMENTS

  On Success: ApplyConfig
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Waiting for storage commit to complete(FSM-STAGE:sam:dme:LsServerConfigure:WaitForCommitStorage)

  Notify:
   Target: storage-broker:dme
   Instance: active
   Purpose: mod
   Custom: false
   Data:
   Method: CommitStatus

 ApplyConfig
Apply Config

  On Success: WaitForAssocCompletion
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 60000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Applying config to server pnDn(FSM-STAGE:sam:dme:LsServerConfigure:ApplyConfig)

  Notify:
   Target:
   Instance: active
   Purpose: mod
   Custom: true
   Data:

 WaitForAssocCompletion
Here we need to wait for association to complete

  On Success:
  On Fail:
  Restart: INIT_RESET
  Retry: RETRY_FOREVER
  Retry Exhaust: RETRY_EXHAUST_RESET_FSM
  Retry Interval: 1000000000
  Retry Count: 20
  Unavailable: UNAVAIL_RETRY
  Message: Waiting for Association completion on server pnDn(FSM-STAGE:sam:dme:LsServerConfigure:WaitForAssocCompletion)

  Notify:
   Target:
   Instance: active
   Purpose: mod
   Custom: true
   Data: