パスワードを忘れた? アカウント作成
12055764 story
マイクロソフト

Microsoft、PowerShell DSC for Linuxを公開 45

ストーリー by headless
公開 部門より
Microsoftは5日、システム構成管理の自動化プラットフォーム「PowerShell Desired State Configuration(DSC) for Linux」バージョン1を公開した(Windows PowerShell Blogの記事Windows PowerShell Desired State Configuration OverviewSoftpediaの記事本家/.)。

Windows版のPowerShell DSCは2013年にリリースされており、PowerShellのインターフェイスからWindowsとLinuxだけでなく、スイッチなどのネットワーク機器を管理することもできる。機能的にはChefやPuppetと似ているが、OMIをベースにすることでOSや機器に縛られない構成管理が可能となっている。今回のリリースでは幅広いLinuxサーバーOSをサポートし、Linuxの構成管理に使用する10種の組み込みリソースが提供される。構成の適用にはPush(WS-Man)モードとPull(HTTP/HTTPS)モードが提供され、PullモードでのPartial Configurationサポートや、構成不一致時の自動保護が利用できるとのこと。
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • ふーむ、リリースとして、ツール側だけでなく、管理基盤としてもある程度良くなったということか?

    # 参考 http://tech.guitarrapc.com/entry/2014/12/01/073047 [guitarrapc.com]

    --
    M-FalconSky (暑いか寒い)
  • by Anonymous Coward on 2015年05月10日 13時58分 (#2811666)

    なんか、Windowsで無理やりUnix-likeなツールを使うときの難しさを逆に再現するだけのような気がする。

    WindowsとLinuxが並存する環境であっても、それぞれ別々の構成管理ツールを使ったほうが扱いやすいと思う。
    別々にしたところで、メンテすべきツールが1つから2つになるだけなので、複雑さが無限に拡大するわけじゃないし。

    Windows中心のシステム環境で、少数のLinuxに導入する場合、かなりシンプルな構成の場合に限定してつかうぶんには、
    ないよりはましかもしれない。

    #本家のコメントで知ったんだけど、WBEM/CIMってLinuxにすでに導入済みなんですね。
    #使ってた人いるのかしら。
    http://linux.slashdot.org/comments.pl?sid=7381491&cid=49638359 [slashdot.org]

  • by Anonymous Coward on 2015年05月10日 13時59分 (#2811667)

    マジいいんすよマジ
    もうbatやvbsは書きたくなくなるぐらいに

    • by Anonymous Coward on 2015年05月10日 15時49分 (#2811722)

      昔からのバッチファイルの使い方もできて
      .NETもCOMもWMIもシームレスに繋げられるし
      コマンドレット起こして*NIXの各種コマンドラインツールっぽく繋げることもできて
      システム管理に用いるグルー言語としてはかなりいい線いってるよね

      親コメント
    • PowerShell てとにかく遅くないですか? バッチ代わりに作ったものを bash と比べて数倍だか十数倍だか遅くてびっくりした記憶があります。検索する [google.co.jp]と私だけでは無いような。
      親コメント
      • by Anonymous Coward

        遅いです。実行速度に関して何かを期待するべきではありません。
        物量のある作業をPowerShellに振る時は注意が必要です。ある程度使い慣れたユーザーは把握していると思いますが・・・。
        まず単純にPowerShell文の処理(ループ、算術演算の類)が遅いですし、何故かCOM経由の操作の反応が(VBSからExcel操作等より)遅かったり、
        うっかり型の自動変換が発生するコードを書きやすかったり、何かと直接必要でないデータをプールしがちだったりします。

        速度が問題となる場合は、ボトルネック部分を
        1. C#で記述し化Add-Type -TypeDefinition で読み込ませて使う
        2. dll化しAdd-Typeでロードして使う
        3. PowerShellではやらない
        等の改善策はあります。まあ全部3に集約されるのですが。

        しかしワンライナ―レベルのコードはかなり短く記述でき、表現力と活用範囲が広いため、
        思い立った操作を完了するための、人レベルでの作業速度としては優秀と個人的には思います。

      • by Anonymous Coward

        遅いのはしゃあないです。1行1行ぜんぶ動的に.NETのPowerShellで使うオブジェクトにラップしてっから長大なバッチ処理には向きませんね
        それのお蔭でブレークポイントやインスペクタとかが標準でお手軽に利用できる訳ではあるのですが…まぁ…適材適所って逃げの方向で…

    • by uxi (5376) on 2015年05月11日 16時38分 (#2812327)

      これが本当に致命的に使い辛い。
      WindowsでPowerShellスクリプトの実行セキュリティポリシーを変更する [atmarkit.co.jp]
      セキュリティ上の理由でそうしているのは分かるが、
      解除すれば結局、穴開けてるわけだし、バッチも WSH もデフォで ON なのに、PowerShell だけデフォルトで restricted にしてる意味が分からない。

      --
      uxi
      親コメント
      • by Anonymous Coward

        PowerShellは(最近のWindowsでは)OS標準で入っているものだから、デフォでONだとwshの悪夢再び
        になってしまうから。
        この設定でいいと思うよ。使いたい人だけRemoteSignedにすりゃいい。

    • by Anonymous Coward on 2015年05月10日 14時36分 (#2811691)

      PowerShellを使い出してから、Cygwin/MingwあたりのUNIX互換ツールセットを、職場でも自宅でもほぼ使わなくなりましたね。
      学生の頃から10年以上使い続けてきましたが。

      UNIXのCLIと比べても良くできてると思います(あらゆる点で勝っているとは言いませんが)。
      なにより、統一感があって、使い方を覚えやすく、忘れにくいのがいい。

      親コメント
      • by Anonymous Coward on 2015年05月10日 16時07分 (#2811732)

        これは同意する。

        cmd.exeやBatchファイルでは難しかったor面倒だった処理が
        PowerShellなら結構楽に記述できるので、Cygwinが無いと辛いって
        処理が殆ど無くなった。(perlかawk/sed使わせてくれって思う時あるけど)
        なによりWindowsに標準添付されツールってのは大きいですね。
        自分が運用管理していない機器でも、ある程度はスクリプトの動作が保障できる。

        嫌な点は、起動時の微妙な待ち時間かな。
        cmd.exeと違うし、起動処理に時間が必要なのは判るんだけど・・・
        あの数秒の待ち状態が嫌(笑
        #単なる我侭って事は、十分に認識してます・

        親コメント
        • by Anonymous Coward

          cmdでは面倒、出来なかった処理が簡単に出来るのは確かなんですが
          逆にcmdじゃないと無理な事が残っているのが残念
          (例えばファイルのリネームとか、動画処理などで大量のデータをパイプで転送する時など)

          ちなみにPSの起動時間は該当アセンブリをngenしておくとかなり改善されます

    • by Anonymous Coward

      C#ベースのインタプリタなら覚える気になりますが…
      あと変な変数スコープ

      • by Anonymous Coward on 2015年05月10日 15時32分 (#2811713)

        変数スコープはいわゆるダイナミックスコープで、bashなどのUNIX系シェルの変数スコープと同じです。
        まあ、いまどき何故?という疑問はありますが、言語設計者によれば、いろいろ試した結果、ダイナミックスコープがいちばん納得できたそうです。

        文法的には、基本的には普通の手続き型言語ですし、.NET Frameworkのライブラリがすべて使えますので、
        必要とあれば、型なしのC#みたいな使い方ができます(LINQとかはありませんが)。
        .NET Frameworkを使いまくるPowerShellプログラムを書いていると、「これ、C#でよくね?」みたいな気分になりますが、
        そういう使い方ができてしまうのはやはり便利です。

        また、C#で書いたコードをPowerShellから呼び出すのも簡単ですし、C#でコマンドレットを定義するのも簡単です。
        PowerShellの基盤が.NET Frameworkで、型システムも共通なので、C#とは非常に親和性が高く、
        C#で定義したクラスがPowerShellから普通に扱えます(いわゆる型変換ではなく、オブジェクトをそのままPowerShellで操作できるのです)。
        C#プログラムのフロントエンドインターフェイス用の環境としても、便利に使えると思います。

        親コメント
        • by Anonymous Coward

          >bashなどのUNIX系シェルの変数スコープと同じです。
          Bashとは違う。
          ローカルで同じ名前の変数をときに、枝分かれする感じ。 = Python?
          最初から別々になっているPHP/Rubyタイプとも違う。

      • by Anonymous Coward

        LINQ欲しいかな。いや呼ぼうと思えば呼べるけどね。
        正規表現で書くとばっと見がひどい、かといってパイプで分離すると処理的にイマイチ、下手に分離することで誤解招くかもしれない、なんてとき使うの悩むんで。
        まあシェルなんでパイプでつなぐ思想だろうから無いのが正しいのかも知れませんがね。

    • by Anonymous Coward

      Windowsをよく使っていて、自分がIT技術者のカテゴリに入る人間だと思っているなら今日からでも使うべきですね。
      覚えるというより、日常的に使用して知識を蓄積して行くのがよいでしょう。

    • by Anonymous Coward

      よりによって基準がそこ?

    • by Anonymous Coward

      十年前ならわかるが、今さらベンダー・ロックインの言語覚えたくないです。マルチプラットフォームで出直してください

      • by Anonymous Coward

        だからLinuxでも使えるようになりつつあるという記事なのだが。

        出直して来たって話でしょ?

    • by Anonymous Coward

      PowerShellで業務ソフトを組んでます。
      速度はあれだけど、開発はとても楽です。

      • by Anonymous Coward

        開発を依頼してた会社がパンク状態になり
        1晩で夜間バッチを10本ほどでっち上げたところ
        そのまま本番環境まで生き残ることになりました

        #開発費返せw

    • by Anonymous Coward

      確かに便利なんだが、サーバをリモートから管理する際にいちいちリモートデスクトップで入らないといけないので、標準でSSHサーバに対応してくれませんかねぇ。

typodupeerror

最初のバージョンは常に打ち捨てられる。

読み込み中...