SDN Controller Programming Guide
65
Teaming Service
Teaming helps in grouping a set of mandatory applications and control the role of the controller
node in the cluster based on the mandatory application availability status. Based on the teaming
configuration a controller node joins the team when all the mandatory applications joins the team.
Following are the different types of teaming events that joined application might receive:
BECOME_SUSPENDED—Controller node is not part of the team yet. Stay in suspended mode
BECOME_LEADER—Controller node elected as a leader of the team
BECOME_MEMBER—Controller node became a team member
NEW_LEADER—Recent election resulted in a new team leader. Leader ID is notified through the
event
MEMBER_JOIN—A new member node joined the team. Joined node ID is notified through the
event
MEMBER_LEAVE—A member node left the team. Left node ID is notified through the event
Following diagram explains the state diagram of teaming service.
Figure 32 Teaming Service State Diagram
Init Suspend
MemberLeader
BECOME_SUSPENDED
BECOME_SUSPENDED
NEW_LEADER
BECOME_MEMBER
BECOME_LEADER
Notifications
are not sent
if HA Service
is down
NEW_LEADER
MEMBER_JOIN
MEMBER_LEAVE
MEMBER_JOIN
MEMBER_LEAVE
State Transitions
INIT to BECOME_SUSPENDED–On team Join, application receives SUSPEND notification
BECOME_SUSPEND to BECOME_MEMBER–Node is now part of the team and is a member entity