Menu

#2259 amf: support for si-swap admin op for N+M model ( Standbys in same su case).

5.2.FC
fixed
Praveen
None
enhancement
amf
d
major
2017-02-28
2017-01-11
Praveen
No

As per spec, SI_SWAP admin operation is applicable to a SI which is protected by SG of 2N, NWAY or NPM model. Current OpenSAF implementation already supports 2N and N-WAY model.This enhancements is for supporting the admin operation on SI of N+M model SG.

AMF B.04.01 spec writes about SI_SWAP armin operation for applicable red model in the section "9.4.8 SA_AMF_ADMIN_SI_SWAP" page 386 of B.04.01 spec. For N+M model, spec states that:
"If the designated SI is protected by a service group whose redundancy model is N+M,
the invocation of this administrative operation results in a complete swap of all active
and standby CSIs belonging to not just the designated SI but also to any other SI that
is assigned active to a service unit to which the designated SI is assigned active.
Application of this operation on an SI may potentially modify the standby assignments
of other SIs that are protected by the same service group, but are not assigned to the
service unit to which the SI in question is assigned active."

Example configuration N+1 given in spec:
In the same paragraph above in section 9.4.8 SA_AMF_ADMIN_SI_SWAP, one example is given how SI_SWAP will proceed in N+M model.
1) Four nodes U, V, W and X hosts S1, S2, S3 and S4 respectively.
2) There are three SIs SIA, SIB and SIC.
3) SIA is active in S1, SIB is active in S2 and SIC is active in S3.
4) All SIs are standby in S4.
5) SI_SWAP admin operation Flow for above configuration: As per spec ,
"If the swap operation is applied on SI A, the active assignment
for SI A shall be moved to Service Unit S4 on Node X, and the standby assignments
for SI A as well as that of SI C and SI B will be moved to Service Unit S1 on
Node U. The active assignments of SI C and SI B will remain on Service Unit S3 (on
Node W) and Service Unit S2 (on Node V), respectively"
Here SU S1 will become quiesced for all active SIs (only one SIA in this example). At this point of time, SU S4 is standby for SIB and SIC also but SU1 is not quiesced for these two SIs. Due to this, SIB and SIC will be removed from SU S4 and it will become active for SIA. Now SU S1 will be made standby for all quiesced SIs (only one SIA in this example). Since standby assignments from SIB and SIC are getting removed during the course of this operation, SU S1 will make standby for SIB and SIC by giving fresh assignments.
So in contrast to 2N redudancy model, flow of SI_SWAP operation in N+M model can lead to removal of standby assignments and also fresh assignments.

Notes on implementation:
1)SI_SWAP operation will not be allowed if SI Equal distribution feature is enabled in the SG.
2)Since SI dep within SU is not suported in N+M model, AMF will not honour SI dep within SU while assigning Active or Quiesced HA state during the admin operation.
3)Since Operation will lead to swap of all SIs assgined to the active SU, operation will be rejected if anyone of these SIs does not have standby assignments in some SU.
4) Operation will not be allowed if it will lead to violation of SG configuration attrbiutes: saAmfSGMaxActiveSIsperSU, saAmfSGMaxStandbySIsperSU, saAmfSGNumPrefActiveSUs and saAmfSGNumPrefStandbySUs.

Changes in sg_npm_fsm.cc: Some code related to switch operation is already present. The same code will resued and enhanced for implementation. Most of the code is under SI_OPER state of SG.

To be updated with more example configuration..

Related

Tickets: #2259
Wiki: NEWS-5.2.0

Discussion

  • Praveen

    Praveen - 2017-01-11
    • Type: defect --> enhancement
     
  • Praveen

    Praveen - 2017-02-07
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -1,4 +1,35 @@
    -As per spec, SI_SWAP admin operation is applicable to a SI which is protected by SG of 2N, NWAY or NPM model. Current OpenSAF implementation already supports 2N and N-WAY model.
    +As per spec, SI_SWAP admin operation is applicable to a SI which is protected by SG of 2N, NWAY or NPM model. Current OpenSAF implementation already supports 2N and N-WAY model.This enhancements is for supporting the admin operation on SI of N+M model SG. 
    
    -This enhancements is for supporting the admin operation on SI of N+M model SG. Since SI dep within SU is not suported in N+M model, AMF will not honour SI dep within SU while assigning Active or Quiesced HA state 
    -during the admin operation.
    +AMF B.04.01 spec writes about SI_SWAP armin operation for applicable red model in the section  "9.4.8 SA_AMF_ADMIN_SI_SWAP" page 386 of B.04.01 spec.  For N+M model, spec states that:
    +"If the designated SI is protected by a service group whose redundancy model is N+M,
    +the invocation of this administrative operation results in a complete swap of all active
    +and standby CSIs belonging to not just the designated SI but also to any other SI that
    +is assigned active to a service unit to which the designated SI is assigned active.
    +Application of this operation on an SI may potentially modify the standby assignments
    +of other SIs that are protected by the same service group, but are not assigned to the
    +service unit to which the SI in question is assigned active."
    +
    +**Example configuration N+1 given in spec:**
    +In the same paragraph above in section 9.4.8 SA_AMF_ADMIN_SI_SWAP, one example is given how SI_SWAP will proceed in N+M model.
    +1) Four nodes U, V, W and X hosts S1, S2, S3 and S4 respectively.
    +2) There are three SIs SIA, SIB and SIC.
    +3) SIA is active in S1, SIB is active in S2 and SIC is active in S3.
    +4) All SIs are standby in S4.
    +5) SI_SWAP admin operation Flow for above configuration: As per spec , 
    +"If the swap operation is applied on SI A, the active assignment
    +for SI A shall be moved to Service Unit S4 on Node X, and the standby assignments
    +for SI A as well as that of SI C and SI B will be moved to Service Unit S1 on
    +Node U. The active assignments of SI C and SI B will remain on Service Unit S3 (on
    +Node W) and Service Unit S2 (on Node V), respectively"
    +    Here SU S1 will become quiesced for all active SIs  (only one SIA in this example). At this point of time, SU S4 is standby for SIB and SIC also but SU1 is not quiesced for these two SIs. Due to this,  SIB and SIC will be removed from SU S4 and it will become active for SIA. Now SU S1 will be made standby for all quiesced SIs (only one SIA in this example).  Since standby assignments from SIB and SIC are getting removed during the course of this operation, SU S1 will make standby for SIB and SIC by giving fresh assignments.
    +    So in contrast to 2N redudancy model, flow of SI_SWAP operation in N+M model can lead to removal of standby assignments and also fresh assignments. 
    +
    +**Notes on implementation: **
    +1)SI_SWAP operation will not be allowed if SI Equal distribution feature is enabled in the SG.
    +2)Since SI dep within SU is not suported in N+M model, AMF will not honour SI dep within SU while assigning Active or Quiesced HA state  during the admin operation.
    +3)Since Operation will lead to swap of all SIs assgined to the active SU, operation will be rejected if anyone of these SIs does not have standby assignments in some SU.
    +4) Operation will not be allowed if it will lead to violation of SG configuration attrbiutes: saAmfSGMaxActiveSIsperSU, saAmfSGMaxStandbySIsperSU, saAmfSGNumPrefActiveSUs and saAmfSGNumPrefStandbySUs.
    +
    +**Changes in sg_npm_fsm.cc:** Some code related to switch operation is already present. The same code will resued and enhanced for implementation. Most of the code is under SI_OPER state of SG.
    +
    +To be updated with more example configuration..
    
     
  • Praveen

    Praveen - 2017-02-07
     
  • Praveen

    Praveen - 2017-02-20

    Attached is version 1 of the patch (01_2259.patch) and a test configuration test_conf.xml.
    This version works for the simple case when all SIs which are active in the designated SU ( where Si to be swaped is active) have their standbys on same SU including the designated SI.
    Only some successful swap operation is tested on this patch. Will be testing fault test cases from today. So there is possibility of improvement in this version 1 also.
    Also working on an improved version 2 which will consider the case when active SIs of designated SU have their standbys on different SUs.

     
  • Praveen

    Praveen - 2017-02-21
    • status: accepted --> review
     
  • Praveen

    Praveen - 2017-02-27
    • summary: amf: support for si-swap admin op for N+M model. --> amf: support for si-swap admin op for N+M model ( Standbys in same su case).
     
  • Praveen

    Praveen - 2017-02-27

    Standbys in same su case: When all SIs which are active in the
    designated SU (where SI to be swaped is active) have their standbys on same SU
    including the designated SI.
    Published patch works for this same SU case.

    I will raising separate ticket for the case (Standbys in different su case) when all SIs which are active in the designated SU (where SI to be swaped is active) have their standbys on different SUs.

     
  • Praveen

    Praveen - 2017-02-28
    • status: review --> fixed
     
  • Praveen

    Praveen - 2017-02-28

    changeset: 8627:8e56871d5619
    tag: tip
    user: Praveen Malviya praveen.malviya@oracle.com
    date: Tue Feb 28 10:49:16 2017 +0530
    summary: amfd: support si-swap admin op for NplusM model when standbys are in same SU. [#2259]

     

    Related

    Tickets: #2259


Log in to post a comment.