MS Web deploy tool over http connection - asp.net

I am trying to integrate Jenkins and Web deploy v3.5 over "HTTP" connection. The server has IIS 10 and Windows Server 2016. The build is getting failed with an error,
Web deployment task failed. (Could not complete the request to remote agent URL 'http://IPAddress:8172/MSDeploy.axd?site=WebSite'.)
I am using the following command,
/property:configuration=Dev /p:DeployOnBuild=True /p:DeployTarget=MsDeployPublish /p:CreatePackageOnPublish=False /p:AllowUntrusted=True /p:MsDeployPublishMethod=WMSvc /p:MsDeployServiceUrl="http://IpAddress:8172/MSDeploy.axd" /p:DeployIisAppPath="WebSite" /p:AllowUntrustedCertificate=True /p:Username=SomeUsername /p:Password=SomePassword
Troubleshooting:
8172 port is allowed for Jenkins.
Web deployment services are running.
Users have been given with sufficient rights to the directory.
WebDeploy user is added to administrator group.
I am suspecting if Web deploy tool doesn't work over HTTP connection, is that true?

Web Deploy is actually just a way of deploying. The services are running on a server and listening on the port 8172. I do not get why you are using a whole web adress, when all you need is the connection to the server (ip or domain only!).
Example: 0.00.000.000 or example.org
Check if you installed the handler too. You need the web deploy service and handler running.
Regards,
Maheshvara

I encountered the problem by taking following steps,
Ms web deploy works under the secure connection. it should be called by https://
Configured three rules as mentioned under Management Service Delegation Rule
2.1 ---- createApp with WDeployConfigWriter User
2.2 ---- setAcl
2.3 ---- contentPath_intiApp
Reference: https://learn.microsoft.com/en-us/iis/publish/using-web-deploy/configure-the-web-deployment-handler
In 2.1 step, WDeployConfigWriter user needs to be created manually. Web deploy tool use two users WDeployAdmin and WDeployConfigWriter
Reference: https://blog.richardszalay.com/2013/08/02/manually-creating-wdeployadmin-and-wdeployconfigwriter/

Related

Azure Scheduler Job: SendFailure The underlying connection was closed

I have created Scheduler Job in Azure using HTTPS action to periodically ping ASP.NET Web application deployed on VM. Web application is configured with HTTPS binding using SSL certificate. I have configured IIS security using IIS Crypto 2.0 tool.
Scheduler Job fails with an error:
Http Action - Request to host 'www.somesamplehost.com' failed: SendFailure The
underlying connection was closed: An unexpected error occurred on a
send.
The same URL works fine when I try to access it from any browser.
Screenshot from Azure Portal:
The issue was due to SSL certificate. I have ECC SSL certificate for my Web Application and Azure Scheduler Job does not support making requests to Web Application that has that kind of certificate.
Guys from MS suggested alternative for Scheduler Job. It is a feature in Azure Portal called "Logic Apps". You can set it up in a way that it periodically makes requests to specific URL, but "Logic Apps" has much more capabilities compared to Scheduler Job.

configuring a Windows Server 2012 VM using IIS to call Azure

I'm setting up an ASP.NET MVC5 application on a Windows Server 2012 VM running .Net 4.5 and IIS8. I've always leverages Azure for App and DB services (thank you Azure for your seamless 10 min server setup and publishing solution!) however I need to host this app using this alternative method. The VM is not an Azure VM. I've managed to configure the VM and publish the application (10 hrs of head banging experience... ) however when the application attempts to make a call to the Azure Db during the form registration process I receive a time out error; "The wait operation timed out".
My question is; I can access the application via the ip address from my local machine, I think port 80 is open by default. Do I need to specifically target this port in the applications web.config file for I/O calls?
If you want to connect a non-Azure Virtual machine which is behind a firewall to the resources in Azure, you will have to create a virtual network with either site to site or point to site VPN enabled. Please check this link which explains how to do it. https://azure.microsoft.com/en-us/documentation/articles/vpn-gateway-howto-site-to-site-resource-manager-portal/

Is domain controller necessary for BizTalk server 2010 in order to run BizTalk WCF published services?

I have a BizTalk Server 2010 installed in windows server 2008 R2. When i publish wcf service through wizard and try to run the service on browser, it returns an error :
The Messaging Engine failed to register the adapter for
"WCF-BasicHttp" for the receive location
"/OrderProcessingDescription/OrderProcessService.svc". Please verify
that the receive location exists, and that the isolated adapter runs
under an account that has access to the BizTalk databases.
Also account used in the application pool is a member of the BizTalk Isolated Host Users group.
One thing which is not installed in Windows Server 2010 is Domain Controller. Please let me know if I need to install it .
please see the following thread to check the actual error:
Link to thread
Answer from thread:
To solve this issue check the application pool security user account
in the IIS. Add that user account into the BizTalk Isolated Host Users
group. Or change the application pool to the pool which user is
already a member of the BizTalk Isolated Host Users Group.
The domain controller feature actually has very little to do with this and the feature is likely not to be installed on your BizTalk server.
Since you are using the publishing wizard:
Ensure that there is an app pool available which is linked to a BTS Isolated host account (you seem to have done this).
Ensure that the app/virtual directory created by the wizard in IIS for the basicHttp endpoint is configured to use this app pool.
Ensure that the corresponding receive port is created, and enabled (look in the BizTalk admin console).
Also ensure that the BTS host process for the receive port is running.

How do I publish ASP.NET MVC3 application to azure using "Publish -> "Web Deploy"? (getting error: Web Deployment task failed)

I'm getting this error when trying to deploy to azure using "Publish" from my MVC project. I checked Web Management Service and Web Deployment Agent Service and there are both running. Credentials I'm using are valid since I get access to server instance through remote desktop
I've also checked values for the properties VS filled for me on the "Publish Web" dialog and they are correct:
Service Url: https://*.cloudapp.net:8172/MsDeploy.axd (where * is my hosted service ID)
Site/Application: NLSubscriber.Web_IN_0_Web
Error 66 Web deployment task failed.(Could not connect to the destination computer (".cloudapp.net"). On the destination computer, make sure that Web Deploy is installed and that the required process ("The Web Management Service") is started.)
This error indicates that you cannot connect to the server. Make sure the service URL is correct, firewall and network settings on this computer and on the server computer are configured properly, and the appropriate services have been started on the server.
Error details:
Could not connect to the destination computer (".cloudapp.net"). On the destination computer, make sure that Web Deploy is installed and that the required process ("The Web Management Service") is started.
Unable to connect to the remote server
A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond xxx.xxx.xxx.xxx:8172
0 0 NLSubscriber.Web
I've checked that the service url is reachable (and not blocked by
the firewall), by directly accessing it through my browser typing
just the same address VS is showing and after warning me about the
not trusted certificated, it prompted me for user/password, which I
provided and accessed it with no problem at all.
I've opened Remote Desktop and checked site name from IIS manager,
which is the same as pre-inputted by VS: NLSubscriber.Web_IN_0_Web.
What am I missing?
It seems Arwind has solved this issue on http://social.msdn.microsoft.com/Forums/en-US/windowsazuredevelopment/thread/dfe98f28-b211-4124-a505-0c664f48b3e5/
Please check the link and see whether it helps.
Best Regards,
Ming Xu.

Is IIS7 Web Deploy Management Service accepting requests on 8172 or port 80 (or both?)

Our support team have enabled the management service on IIS 7, windows server 2008. Remote connections are enabled and the connections port is 8172.
If I hit https://localhost:8172/msdeploy.axd I am prompted for a password.
If I run
C:\Program Files\IIS\Microsoft Web Deploy V2>msdeploy -verb:getSystemInfo -source:webserver,computername=https://localhost:8172/MSDeploy.axd,username={username},password={password} -allowUntrusted -debug
I get a 401 error.
If I run
C:\Program Files\IIS\Microsoft Web Deploy V2>msdeploy -verb:getSystemInfo -source:webserver,computername=localhost,username={username},password={password}
I get valid output XML.
So, how come the msdeploy.axd is running on ssl and yet I get a valid response over plain http?
UPDATE: Adding "authType=basic" corrects the 401 for msdeploy over 8172.
msdeploy -verb:getSystemInfo -source:webserver,computername=https://localhost:8172/MSDeploy.axd,username={user},password={password},authType=basic -allowUntrusted
Are both machines on the same Active Directory domain? If Basic is working then chances are the NTLM authentication isn't flowing through. Ensure that you have enabled NTLM authentication as well (see section 7 on the web deployment handler setup)

Resources