Search code examples
azureazure-data-factoryazure-management-api

Unable to start integration runtime using web activity in ADF


I have an ADF instance with all required privileges to call Azure Management API from pipeline. I am trying to start and stop an integration runtime using a web activity

The get methods are all working fine, I have tried testing out listing the pipelines, IR etc but while trying to start/stop IR using post method as mentioned in the BOL, the pipeline is failing with the following error message

Invoking endpoint failed with HttpStatusCode - '405 : MethodNotAllowed', message - 'Endpoint(url) knows the request method, but the target endpoint(url) doesn't support this method. Please verify, if the endpoint supports the method you have selected in Data Factory.'

https://management.azure.com/subscriptions/<<subcriptionid>>/resourceGroups/<RGNAME>/providers/Microsoft.DataFactory/factories/<ADF name>/integrationRuntimes/<IR NAME>/start?api-version=2018-06-01

I have tried both debugging and triggering the pipeline and they are not working as expected. Please help me with the issue

enter image description here


Solution

  • enter image description here

    The above error will arise when you try to start or stop the Azure IR or self-hosted IR. In ADF, we cannot start or stop Azure IR or Self-hosted IR. You can see that there is no option to do that in ADF portal.

    enter image description here

    These IRs are always will be in Running state. The billing for these also calculated only when any of the activities uses these. You can see I got same error even when I tried to do the same using Powershell script.

    Stop-AzDataFactoryV2IntegrationRuntime -ResourceGroupName 'RG_name' -DataFactoryName 'ADF_name' -Name 'IR_nmae'
    

    enter image description here

    In ADF IRs, we can only start or stop the Azure SSIS Integration runtimes manually. If you try the above method for the Azure SSIS, it will give the expected result. When you try it for the remaining IRs, it will give the above error because starting or stopping methods are not available by default.

    You can check the similar ask by @mrketata.