Ok, you want to just re-implement elements and rules w/o changing the
network configuration. You should probably confirm with Alex, because
initially Implemented/Setup state were reflecting network configuration
state, not the state of the elements and rules in it. The network in Setup
state was going through Prepare() phase, and during this phase network
elements were implemented.

Murali, could you also tell why we need Shared network to go through
Shutdown/Implementing/Implemented phase? What is the use case for it? For
isolated network we just needed it in order to GC the network, so the
guest Vlan can be released if there are no user vms in the network.

Thank you,
Alena.

On 10/19/12 6:24 AM, "Murali Reddy" <murali.re...@citrix.com> wrote:

>
>
>
>On 19/10/12 5:46 AM, "Alena Prokharchyk" <alena.prokharc...@citrix.com>
>wrote:
>
>>On 10/18/12 4:59 AM, "Murali Reddy" <murali.re...@citrix.com> wrote:
>>
>>>On 17/10/12 10:42 PM, "Alena Prokharchyk" <alena.prokharc...@citrix.com>
>>>wrote:
>>>
>>>>Murali, some comments:
>>>>
>>>>1) "During network design phase of network creation, 'Direct network
>>>>Guru' which designs the shared networks shall setup the network to be
>>>>in
>>>> Network.State.Allocated if shared network is being created in advanced
>>>>zone and with L4-L7 services enabled"
>>>>
>>>>Can you explain why? Allocated state means that the Vlan and CIDR for
>>>>the
>>>>network will be re-calculated on every network imeplement. Setup state
>>>>means that the Vlan will stay with the network for its lifecycle, as
>>>>well
>>>>as the network CIDR. If you are not planning to recalculate the CIDR on
>>>>each network re-implement, then Setup is your initial and the only one
>>>>state.
>>>>
>>>>If the only one thing you want to do during this face - prepare your
>>>>external devices - then you should use prepare() instead (we call it
>>>>when
>>>>setup the network)
>>>
>>>
>>>I agree that 'Allocated' state is wrong here. I don¹t want CIDR to be
>>>recalculated. I just want to force the 'shared network' in the advanced
>>>zone to go through the complete implement phase. Right now, shared
>>>network
>>>are set to be in 'Setup' state by direct network guru. Implement network
>>>phase skips the back end implementation (i.e. implement operation on
>>>network elements) when network state is 'Setup'. I want to model life
>>>cycle of 'shared network' with L4-L7 service just as isolated network.
>>>Except for the fact that network is shared by multiple accounts, shared
>>>network with L4-L7 services is really same as isolated network w.r.t
>>>life
>>>cycle of the network and how the rules are applied.
>>>
>>>I can set the state to be 'Setup' but want the shared network with L4-L7
>>>service to go through implement phase. Does having state transition from
>>>State.Setup to State.Implemented on Event.ImplementNetwork make sense?
>>
>>Murali, could you please give more details on what exactly you want to
>>introduce in Implement phase for Shared networks? Because looking at the
>>code right now, I see that in
>>
>>* DirectNetworkGuru (responsible for Shared networks)- does nothing in
>>implement()
>>* ExternalGuestNetworkGuru (responsible for Isolated network), -
>>recalculate vlan and cidr for the network in implement()
>>
>>
>>I assume all you want to do - re-implement the elements and network rules
>>w/o changing the network configuration? That's something that
>>RestartNetwork does (re-implements all the network elements and the rules
>>w/o changing the network state and config; both Isolated and Shared
>>networks can be restarted)
>>
>>-Alena.
>
>Ok. Let me elaborate a bit. So the network in CloudStack is handled by two
>entities. Network design (L2-L3) is handled by 'Network Guru' and network
>services (L4-L7) are handled by 'Network element'. Network operations like
>implement, shutdown, restart, destroy should go through operations on both
>network guru and network element as well. Since the 'shared network' did
>not have any L4-L7 services, network operations were implemented for
>shared network to go through corresponding operation on network guru only.
>Now if we have L4-L7 services in the 'shared network', network operations
>like implement, shutdown, restart etc should go through corresponding
>actions on network guru, and network element as well. For e.g. I see that
>implementNetwork() operation in the network manager, does NOT end up
>invoking implementNetworkElementsAndResources() for the 'shared networks'
>as the direct network guru says network is setup. Implement phase skips
>the implementNetworkElementsAndResources() as network is setup.
>
>So, my thinking is, 'shared network' with L4-L7 services should go through
>'Implementing' and 'Implemented' sates as well.
>
>
>
>


Reply via email to