Deployment rollout of a webapp in an unmanaged (on-premises) K8s cluster gets stuck.

spavez
Level 1
Deployment rollout of a webapp in an unmanaged (on-premises) K8s cluster gets stuck.

While deploying a webapp on an unmanaged K8s cluster, the pop up dialog never disappears saying:

Screen Shot 2021-08-17 at 16.43.25 PM.png

The pod starts and the application can be accessed without issues through a browser, but the Dataiku interface displays a 404 error:

Screen Shot 2021-08-17 at 16.44.52 PM.png

From the backend logs the following error appears:

 

[2021/08/17-19:43:01.650] [FT-WebAppBackendInstanceStartWaitThread-VRIm7lpq-167001] [INFO] [dku.webapps.dash]  - [ct: 10510] No backend url ready
[2021/08/17-19:43:01.650] [Thread-125678] [INFO] [dip.webapp.expose]  - Get node IPs kubectl --namespace dssns-sergio-pavez-277091 get nodes -o json
[2021/08/17-19:43:01.650] [Thread-125678] [INFO] [dku.security.process]  - Starting process (regular)
[2021/08/17-19:43:01.652] [Thread-125678] [INFO] [dku.security.process]  - Process started with pid=16640
[2021/08/17-19:43:01.767] [Thread-125678] [INFO] [dip.expose.endpoint.collector]  - Register a backend {"expositionType":"node_port","id":"v-swgdev07.sco.alma.cl","scheme":"http","host":"10.200.67.79","port":30650,"avail
ability":"CLUSTER"}
[2021/08/17-19:43:01.767] [Thread-125678] [ERROR] [dip.webapp.exposition.thread]  - Failed to wait for exposition start
java.lang.NullPointerException
        at com.dataiku.dip.webapps.backend.WebAppBackend.rewriteRedirectLine(WebAppBackend.java:384)
        at com.dataiku.dip.webapps.backend.WebAppBackend.buildPublicNGINXConfig(WebAppBackend.java:329)
        at com.dataiku.dip.webapps.backend.WebAppBackend.getPublicNGINXConfig(WebAppBackend.java:191)
        at com.dataiku.dip.webapps.backend.WebAppBackend.writeNewNGINXConfig(WebAppBackend.java:471)
        at com.dataiku.dip.webapps.backend.WebAppBackend.endpointsChanged(WebAppBackend.java:114)
        at com.dataiku.dip.exposition.AbstractExposedEndpointCollector.registerPort(AbstractExposedEndpointCollector.java:30)
        at com.dataiku.dip.exposition.NodePortExposition$NodePortExpositionHandler.waitReady(NodePortExposition.java:205)
        at com.dataiku.dip.webapps.backend.exposition.WebAppExpositionHandlerThread.run(WebAppExpositionHandlerThread.java:41)
[2021/08/17-19:43:01.779] [process-resource-monitor-7069-165718] [DEBUG] [dku.resource]  - Process stats for pid 7069: {"pid":7069,"commandName":"/home/dataiku/dss_design/code-envs/python/ds36/bin/python","cpuUserTimeMS"
:3050,"cpuSystemTimeMS":860,"cpuChildrenUserTimeMS":0,"cpuChildrenSystemTimeMS":10,"cpuTotalMS":3920,"cpuCurrent":0.0,"vmSizeMB":1669,"vmRSSMB":178,"vmHWMMB":253,"vmRSSAnonMB":163,"vmDataMB":1216,"vmSizePeakMB":1745,"vmR
SSPeakMB":187,"vmRSSTotalMBS":303340,"majorFaults":0,"childrenMajorFaults":0}

 

If I try to run the application without K8s, it starts correctly and can be displayed on Dataiku. Attached is the full log of its execution.

0 Kudos
2 Replies
Clรฉment_Stenac

Hi,

We strongly recommend keeping the default "port-forward" exposition mode for webapps, which provides all necessary capabilities without all of the deployment complexities associated with other modes, especially on a non-cloud environment.

If this does not help, please open a support ticket (https://doc.dataiku.com/dss/latest/troubleshooting/obtaining-support.html) and attach an instance diagnosis.

Best

 

Hi @Clรฉment_Stenac,

Thanks for the quick reply. With @spavez we are using the "port-forward" exposition mode indeed.

Following your suggestion, we will open a support ticket to further investigate the problem.

Cheers

0 Kudos