Service Windows vers Azure?

J’ai écrit un service Windows en C # qui effectue tout un tas de tâches d’administration en arrière-plan sur la firebase database. Maintenant, mon client veut migrer tout le shebang vers Azure. Je ne connais presque rien sur Azure et mon client dit que vous ne pouvez pas exécuter un service Windows sur Azure. J’ai googlé sur ce sujet et présenté quelques études de cas très spécifiques sur ce que quelqu’un a fait pour déplacer son service Windows vers Azure, en supposant un niveau de compréhension assez élevé du fonctionnement d’Azure, mais pas d’articles généraux sur le fait que Windows Les services peuvent s’exécuter sous Azure ou que faire pour les adapter.

J’aimerais vraiment voir une réponse claire et une explication à la première question (pouvez-vous exécuter un service Windows sous Azure?), Et si la réponse est non, j’aimerais trouver un guide pas à pas pour convertir un Service Windows compatible avec Azure.

Merci!

Oui, vous pouvez le faire – pour une visite simple, consultez http://blogs.msdn.com/b/mwasham/archive/2011/03/30/migrating-a-windows-service-to-windows-azuree.aspx

Autres liens avec des informations pertinentes:

Vous pouvez exécuter ce que vous voulez, y compris un service Windows.

Je pense que vous seriez plus heureux de vous convertir à un WorkerRole , ce qui devrait être très simple.

Pour les travaux plus petits, vous pouvez utiliser la fonctionnalité WebJob d’Azure, qui s’exécute dans une application Web (utile si vous effectuez des tâches en arrière-plan sur les mêmes données gérées par un site frontal).

Il y a une belle ventilation ici: https://azuree.microsoft.com/en-us/documentation/articles/web-sites-create-web-jobs/

Les WebJobs sont assez faciles à exécuter, mais n’ont pas la puissance des rôles de travail. Reportez-vous à ce qui suit pour une comparaison: rôle du travailleur et travail Web

Oui, pas de problème, voici un autre exemple simple et facile à suivre: Premiers pas avec Azure Cloud Services . Il montre clairement comment implémenter le WorkerRole. Vous pouvez utiliser WebRole pour gérer votre service.

Voici les étapes à suivre pour installer un service Windows sur Windows Azure exécutant une VM avec Windows Server 2012 R2:

  • Démarrez votre machine virtuelle dans Windows Azure Console et connectez-vous à celui-ci avec Remote Desktop Connector
  • mappez votre stockage en tant que nouveau lecteur sur votre machine virtuelle:

    net use z: \ mystorage.file.core.windows.net \ endoint / u: myusername verylongkeythatendswith ==

La clé de stockage se trouve dans votre console de gestion Azure -> Stockages -> Gérer les clés d’access

  • copier tous les fichiers d’installation nécessaires sur le stockage mappé (copier-coller)
  • copier nssm sur un lecteur local (pas z: il utilise le système de fichiers MAFS et n’est pas accessible avec des commandes API Windows de bas niveau)
  • Créez un fichier .bat avec les entrées suivantes

set username = xxx set password = yyy appel d: \ nssm install “Mon service” “% programfiles% \ PathToService \ myservice.exe” “-p 8677” d: \ nssm set “Mon service” ObjectName “% username%” ” % password% “échec sc Actions” Mon service “= redémarrer / 60000 / restart / 60000 / restart / 60000 reset = 240 d: \ nssm start” Mon service ”

Le nom d’utilisateur et le mot de passe doivent être ceux que vous avez utilisés pour créer la machine virtuelle.

  • lance le script. Le service doit être visible dans votre liste de services.

Prendre plaisir!

PS: j’ai utilisé NSSM pour simplifier le déploiement du service.

J’utiliserais des travaux Web pour cela, c’est la fonctionnalité de planification et le déploiement facile / config en font une tâche sortingviale. Compressez votre fichier .exe et téléchargez-le, puis définissez un calendrier et vous avez terminé.

Oui, vous pouvez, dans le site Web, il y a une tâche Web de tâches, vous pouvez créer un lot, wsh, powershell (besoin de l’azuree power shell) ou en utilisant l’API Web, rest API, d’autre part, nous avons utiliser le stream de travail