Azure Durable HttpStart failed at client.start_new(req.route_params["functionName"], None, None)
function call.
Function app works local develop environment, even in docker container. Once it's deployed to Azure Kubernetes Service, HttpStart function failed to start Orchestration Function.
Log trace:
Microsoft.Azure.WebJobs.Host.FunctionInvocationException: Exception while executing function: Functions.DurableFunctionsHttpStart
---> Microsoft.Azure.WebJobs.Script.Workers.Rpc.RpcException: Result: Failure
Exception: Exception: The function 'DurableFunctionsOrchestrator' doesn't exist, is disabled, or is not an orchestrator function. Additional info: No orchestrator functions are currently registered!
Stack: File "/azure-functions-host/workers/python/3.7/LINUX/X64/azure_functions_worker/dispatcher.py", line 338, in _handle__invocation_request
call_result = await fi.func(**args)
File "/home/site/wwwroot/DurableFunctionsHttpStart/__init__.py", line 16, in main
instance_id = await client.start_new(req.route_params["functionName"], None, None)
File "/usr/local/lib/python3.7/site-packages/azure/durable_functions/models/DurableOrchestrationClient.py", line 82, in start_new
raise Exception(exception_message)
System overview:
Function runtime: 3.0.2630
Python version: 3.7.7
azure-functions: 1.3.1
azure-functions-durable: 1.0.0b9/1.0.0b7
Kubernetes version: 1.17.11
Node size: Standard_DS2_v2
OS type: Linux
Docker file:
FROM mcr.microsoft.com/azure-functions/python:3.0-python3.7
ENV AzureWebJobsScriptRoot=/home/site/wwwroot \
AzureFunctionsJobHost__Logging__Console__IsEnabled=true \
WEBSITE_HOSTNAME=<ip-address>:<port>
COPY requirements.txt /
RUN pip install -r /requirements.txt
COPY . /home/site/wwwroot
Reproduction scenario:
- Create a Durable Function HttpStart App from VSCode.
- Use
func init --docker-only
command - Docker command
az acr build --registry yourRegistryName --image durableFunction:v1 .
- Deploy in AKS
func kubernetes deploy --name durableFunction --namespace yourNameSpace --service-type ClusterIP --registry yourRegistryName
Funcation app starts normally but when failed in http post request. However, this same contaninarized function app, works in Azure Hosted Function App.
There is an similar issue was reported two years back, but it's happening now.