f5devcentral / f5-cloud-failover-extension

F5 Cloud Failover Extension (Archived)
Apache License 2.0
5 stars 1 forks source link

error "Cannot read property 'disassociate' of undefined" when trigering Failover #22

Closed tewfikm closed 4 years ago

tewfikm commented 4 years ago

Version CFE : v1.1 TITLE: When trigering failover Severe error "severe: [f5-cloud-failover] failover.execute() error: Cannot read property 'disassociate' of undefined TypeError: Cannot read property 'disassociate' of undefined" is generated.

version impacted:

{ "version": "1.1.0", "release": "0", "schemaCurrent": "1.1.0", "schemaMinimum": "0.9.1" }

MSI: OK

Details: on Unit1: Wed, 25 Mar 2020 15:39:29 GMT - finest: socket 206 closed Wed, 25 Mar 2020 15:53:59 GMT - finest: socket 207 opened Wed, 25 Mar 2020 15:54:02 GMT - info: [f5-cloud-failover] Performing failover - execute Wed, 25 Mar 2020 15:54:02 GMT - info: [f5-cloud-failover] Performing Failover - recovery Wed, 25 Mar 2020 15:54:02 GMT - warning: [f5-cloud-failover] Recovering previous task: {"routes":{"operations":[]}} Wed, 25 Mar 2020 15:54:02 GMT - info: [f5-cloud-failover] Performing Failover - update Wed, 25 Mar 2020 15:54:02 GMT - info: [f5-cloud-failover] No localAddresses/failoverAddresses to discover Wed, 25 Mar 2020 15:54:02 GMT - info: [f5-cloud-failover] No route operations to run Wed, 25 Mar 2020 15:54:02 GMT - severe: [f5-cloud-failover] failover.execute() error: Cannot read property 'disassociate' of undefined TypeError: Cannot read property 'disassociate' of undefined at _discoverAddressOperations.then.operations (/var/config/rest/iapps/f5-cloud-failover/nodejs/providers/azure/cloud.js:129:66) at tryCatcher (/usr/share/rest/node/node_modules/bluebird/js/release/util.js:16:23) at Promise._settlePromiseFromHandler (/usr/share/rest/node/node_modules/bluebird/js/release/promise.js:512:31) at Promise._settlePromise (/usr/share/rest/node/node_modules/bluebird/js/release/promise.js:569:18) at Promise._settlePromiseCtx (/usr/share/rest/node/node_modules/bluebird/js/release/promise.js:606:10) at Async._drainQueue (/usr/share/rest/node/node_modules/bluebird/js/release/async.js:138:12) at Async._drainQueues (/usr/share/rest/node/node_modules/bluebird/js/release/async.js:143:10) at Immediate.Async.drainQueues (/usr/share/rest/node/node_modules/bluebird/js/release/async.js:17:14) at runCallback (timers.js:794:20) at tryOnImmediate (timers.js:752:5) at processImmediate [as _immediateCallback] (timers.js:729:5) Wed, 25 Mar 2020 15:54:07 GMT - finest: socket 207 closed

on Unit2: Wed, 25 Mar 2020 15:39:29 GMT - finest: socket 206 closed Wed, 25 Mar 2020 15:53:59 GMT - finest: socket 207 opened Wed, 25 Mar 2020 15:54:02 GMT - info: [f5-cloud-failover] Performing failover - execute Wed, 25 Mar 2020 15:54:02 GMT - info: [f5-cloud-failover] Performing Failover - recovery Wed, 25 Mar 2020 15:54:02 GMT - warning: [f5-cloud-failover] Recovering previous task: {"routes":{"operations":[]}} Wed, 25 Mar 2020 15:54:02 GMT - info: [f5-cloud-failover] Performing Failover - update Wed, 25 Mar 2020 15:54:02 GMT - info: [f5-cloud-failover] No localAddresses/failoverAddresses to discover Wed, 25 Mar 2020 15:54:02 GMT - info: [f5-cloud-failover] No route operations to run Wed, 25 Mar 2020 15:54:02 GMT - severe: [f5-cloud-failover] failover.execute() error: Cannot read property 'disassociate' of undefined TypeError: Cannot read property 'disassociate' of undefined at _discoverAddressOperations.then.operations (/var/config/rest/iapps/f5-cloud-failover/nodejs/providers/azure/cloud.js:129:66) at tryCatcher (/usr/share/rest/node/node_modules/bluebird/js/release/util.js:16:23) at Promise._settlePromiseFromHandler (/usr/share/rest/node/node_modules/bluebird/js/release/promise.js:512:31) at Promise._settlePromise (/usr/share/rest/node/node_modules/bluebird/js/release/promise.js:569:18) at Promise._settlePromiseCtx (/usr/share/rest/node/node_modules/bluebird/js/release/promise.js:606:10) at Async._drainQueue (/usr/share/rest/node/node_modules/bluebird/js/release/async.js:138:12) at Async._drainQueues (/usr/share/rest/node/node_modules/bluebird/js/release/async.js:143:10) at Immediate.Async.drainQueues (/usr/share/rest/node/node_modules/bluebird/js/release/async.js:17:14) at runCallback (timers.js:794:20) at tryOnImmediate (timers.js:752:5) at processImmediate [as _immediateCallback] (timers.js:729:5) Wed, 25 Mar 2020 15:54:07 GMT - finest: socket 207 closed

JeffGiroux commented 4 years ago

Have you tried to reset state file on both units and then test failover again?

rtorosian commented 4 years ago

I ran into this same issue and resetting state like @JeffGiroux suggested fixed it for me!

tewfikm commented 4 years ago

Reset state did not worked. Issue was due to Route not assigned to Subnet as revealed by an Inspect

"routes": [
    {
        "routeTableId": "/subscriptions/9f9751de-7b7f-4525-8c58-85568cf2c1c5/resourceGroups/f5HAx280852/providers/Microsoft.Network/routeTables/f5haudr",
        "routeTableName": "f5haudr",
        "networkId": ""
    }
],

Eventhough logging was set to Silly, nothing allowed to pinpoint the issue.

Request to enhance AZR Cloud Provider logging capabilities when dealing with metadata. a dump of AZR ressources would be must have. thanks

shyawnkarim commented 4 years ago

Thank you for reporting this issue. Internal issue AUTOSDK-251 has been created for this enhancement.

alaari-f5 commented 4 years ago

Closing this issue

As of release CFE 1.2 we moved this CFE repo under F5Networks. Your issue was recreated there. To follow-up on this issue visit:

https://github.com/F5Networks/f5-cloud-failover-extension/issues/5