Méthode d'intégration de scénarios Powershell avec un flux de travail autre que Windows?

J'adore l'odeur de nouvelles voitures le matin.

Je vais automatiser le flux de travail de la création d'une machine comprenant plusieurs systèmes distincts de mon infrastructure, dont certains incluent des scripts. Perl Il y a 15 ans sur les hôtes Solaris, Système Linux Avec téléchargement PXE et ​​Powershell sur Windows Server 2008.

Je peux créer un script pour chacune des pièces individuelles et intégrer l'automatisation Linux et Unix assez simple, mais je ne comprends pas comment relier de manière fiable scénarios Powershell avec d'autres processus.

Je préférerais que le processus a commencé sur l'hôte Linux, Comme je suppose que cela se terminera comme une application Web vivant sur le serveur Apache, Mais s'il a besoin de commencer Windows, J'hésite à être d'accord avec cela.

Idéalement, je voudrais quelque chose comme
http://technet.microsoft.com/e ... .aspx
pour Linux, Travailler S. Windows, Mais la réponse dans cette direction semble
http://www.cygwin.com/
, Et peu importe combien j'apprécie leur dur labeur, ça n'a jamais

Senti bien

, si tu vois ce que je veux dire. C'est génial pour un ordinateur de bureau et offre de nombreuses fonctionnalités, mais je pense que avec des serveurs Windows Contact avec des serveurs Windows, et pas avec des machines UNIX médiocres (Quoi, au fait, est mon argument contre les serveurs OSX, Et ils

réellement

Unix). En tout cas, je ne veux pas utiliser Cygwin, Si ce n'est pas la dernière et unique option.

Donc, je suppose que je demande si il y a un moyen d'effectuer des tâches sur les voitures Windows de Linux. Sans Cygwin. Je suis ouvert aux idées et aux suggestions, y compris "look, idiot, tout usage Cygwin, Alors ne pressez pas et ne traitez pas. " Merci d'avance!
Invité:

Blanche

Confirmation de:

J'ai grimpé ma tête sur ce problème même et, à la fin, elle a conduit à deux

viable

Option (Il existe de nombreuses options non viables.):

Créer une fenêtre Windows avec le service IIS, sur lequel est situé WebAPI, qui est un domaine et configuré pour que les sessions WinRM Cela a fonctionné.

Cygwin

Avec la deuxième option, vous êtes coincé sur votre chemin à travers la couche d'abstraction GNU / Posix, Pour arriver aux bits réels Windows. Quelle limite ce que vous pouvez faire avec ça.

La première option crée largement une couche d'abstraction Web que vous vous écrivez, au-dessus de l'installation Windows Avec une pile complète. Si vous êtes prêt à travailler, le serveur principal Linux Vous avez juste besoin d'effectuer plusieurs appels. curl, Faire ce dont vous avez besoin. Cela fonctionne mieux lorsque les scripts fonctionnent et oubliés, car la création d'un système de rappel nécessite beaucoup plus d'effort.

Catherine

Confirmation de:

J'utiliserais la fonction Powershell Web Access, Présenté par B. Powershell v3.0. Cela vous permet d'utiliser des scripts Powershell De l'hôte Linux.

Alice

Confirmation de:

Vous pouvez également acheter un logiciel multi-plate-forme pour planifier ou automatiser des flux de travail pouvant exécuter vos propres scénarios sur de nombreux hôtes en fonction des actions précédentes ou même de leurs résultats. Les grandes entreprises utilisent des logiciels tels que Tivoli, UC4, Espresso (à présent CA dSeries), Ce qui le fait et je l'ai utilisé dans les grandes entreprises nécessitant de telles choses. À votre note, ils ont souvent un soutien intégré aux choses comme des emplois Oracle, Pour vous donner une idée de la balise de prix, que vous pouvez voir.

(Dans mon travail passé, ils ont également utilisé Cygwin

De toute façon

, afin qu'ils puissent utiliser les mêmes scénarios Perl Sans modifications lors du déplacement des charges de travail entre les plates-formes. Beaucoup d'amusement.)

Vous pouvez également essayer de créer votre propre, comme des offres @ sysadmin1138; Ce serait un projet amusant et il pourrait même être assez fiable pour l'utiliser et ne pas vous amener aux pages de 2 La nuit, lorsque les exportations financières ne sont pas tentées.

Alice

Confirmation de:

http://www.powershellinside.com/powershell/ssh/
Vous permet de vous connecter au serveur Windows par SSH Et obtenir une console PowerShell. Je ne l'ai pas utilisé après la version d'essai gratuite, mais mon usage informel m'a prouvé qu'il s'agit d'un produit plutôt fiable.

Catherine

Confirmation de:

Ce que vous voulez vous moquer de ressentir après cela, car il y a toujours un mollet :)

Et sérieusement, pourquoi avez-vous besoin du serveur Linux Appeler le script PowerShell? Pouvez-vous modifier votre flux de travail afin que le serveur Linux vient de livrer la bonne image boot.wim de l'autre côté tftp sur l'hôte chargé de PXE? Dans le passé, j'ai eu la chance de stocker l'image Windows Avec différents fichiers de réponse sur le serveur de fichiers Windows et livraison d'une image de démarrage utilisateur WinPE par tftpd De l'hôte Linux. Ensuite, vous pouvez avoir le fichier de réponses qui provoque le bon scénario. PowerShell, Et vous n'avez pas à gérer les abostivités multiples plate-forme, telles que Cygwin.

Giselle

Confirmation de:

Vous pouvez utiliser quelque chose comme nrpe Pour l'exécution à distance du script powershell sur l'hôte Windows. Vous voudrez peut-être changer vos scénarios PowerShell, de sorte qu'ils renvoient que les codes de sortie sont attendus de nrpe, Mais il n'y a aucune raison pour que vous ne puissiez pas appeler check_nrpe De vos scénarios sur votre hôte Linux.

Catherine

Confirmation de:

Sur ce sujet
https://serverfault.com/questi ... 38534
Avez-vous envisagé d'abuser du logiciel d'intégration continue en tant qu'outil d'orchestration inter-plateforme?

https://wiki.jenkins-ci.org/di ... nkins
où vous êtes plus pratique, installez l'agent sur votre ordinateur avec Windows (ou
https://wiki.jenkins-ci.org/di ... ndows
ou
https://wiki.jenkins-ci.org/di ... essly
), Configurez la tâche pour exécuter votre script PowerShell (soit directement l'appelant à l'aide de la configuration Windows Batch Command, soit en utilisant
https://wiki.jenkins-ci.org/di ... lugin
Si vous voulez écrire / Enregistrez votre script dans l'application CI) Sur votre agent Windows et
https://wiki.jenkins-ci.org/di ... uilds
de l'autre côté curl ou similaire.

Babette

Confirmation de:

Je travaille dans une grande entreprise où ce problème est commun. Pour les processus que nous soutenons actuellement, notre approche est des systèmes Unix Effectué les appels Web de serveur "administratif" Windows, qui fonctionne ColdFusion sur IIS. Nous avons des cours et des fonctions qui gèrent à partir de demandes. GET, qui utilise la directive cfexecute Pour commencer certains scénarios PowerShell. C'est laid, mais ça marche. Nous considérons les opportunités de service Web PowerShell v3, qui vous permettra de refuser d'utiliser ColdFusion comme un intermédiaire.

Pour répondre aux questions, connectez-vous ou registre