PowerShellはWindowsを管理するための強力なツールであり、マスターすべき多くの理由がある。さらに、Linuxユーザーにとっても無視できない存在になるだろう。
スクリプティングおよび自動化プラットフォーム「Windows PowerShell」(以下「PowerShell」)の歴史は、2002年にさかのぼる。その頃から同社は、先行発表していたホワイトペーパーで「Monad」(コードネーム)というプロジェクトを「システム管理の自動化に向けた次世代プラットフォーム」としてアピールしていた。「Monad manifesto」(Monadマニフェスト)と題したこのホワイトペーパーの著者はジェフリー・スノーバー氏だった。同氏は現在、Microsoftで「Windows Server」「Azure Stack」「System Center」などの製品を統括するエンタープライズクラウドグループのチーフアーキテクトとなっている。
本記事は、プレミアムコンテンツ「Computer Weekly日本語版 8月16日号」(PDF)掲載記事の抄訳版です。本記事の全文は、同プレミアムコンテンツで読むことができます。
なお、同コンテンツのEPUB版およびKindle(MOBI)版も提供しています。
ホワイトペーパーの記述と最終的にリリースされた物の間に多少の違いはあるものの、この文書には多くのテーマが含まれている。Monadは.NETプラットフォームに基づいていて、「cmdlet」(コマンドレット)と呼ばれるコンポーネントを利用することで拡張できる。また、.NETオブジェクトのパイプライン化をサポートしており、オブジェクトからの出力を次の入力につなげるようになっている。MonadはBourne Shell(UNIXのシェル)構文にも基づいている。Bourne Shellは、UNIXライクなシステムのコマンドシェルに強い影響を与え続けている。例えば、シェルの1つである「Bash」の名前は「Bourne Again Shell」を表している。
Monadマニフェストには、Windowsでスクリプティングを実行するためのオプションを複数用意していたという記述もある。つまり、cmd.exeで実行されるバッチファイルか、VBScriptを実行するCScript.exeでホストのスクリプティングを行うかの二者択一だ。ただしCScript.exeは、将来のバージョンのWindows Serverもサポートするには機能的に十分とはいえなかった。
PowerShellはWindowsのコアコンポーネントであり、同時にシステム管理者にとって不可欠なツールとなっている。その理由を一言でまとめるなら「自動化」で、GUI(グラフィカルユーザーインタフェース)ツールには不向きの機能だ。
スクリプトに記述できるものは全て自動化できる。自動化は、DevOpsやクラウドプラットフォームの管理者にとって必須の機能だ。
もう1つ、Windows Serverに必ずGUIがあるとは限らないという要因もある。「Server Core」や「Nano Server」は機能を絞り込んだWindows Serverなので、PowerShellは不可欠だ。「Office 365」を使用する場合、「Exchange Online」などのサービスを管理するにはWebブラウザで操作するか、PowerShellを使用するかのどちらかの方法しかない。最も完全で強力なアクセスを提供するのはPowerShellだ。Exchangeをオンプレミスで実行している場合もPowerShellが必須のタスクが幾つかあるので、PowerShellを覚えておくと後々役に立つ。
PowerShellが特に有用なタスクが存在する。例えば複数のリストに同じ処理を繰り返す場合が挙げられる。「Active Directory」はその顕著な例だ。Active Directoryモジュールは自動的に、あるいは「リモートサーバー管理ツール」をインストールする際に「ドメインコントローラ」にインストールされる。
Get-ADUserコマンドレットは、全てのユーザーをコレクションに取得する。リストをフィルタリングするか、foreachループを使って各ユーザーオブジェクトを検査する。Set-ADUserを使ってユーザー属性やグループメンバーシップを変更することもできる。
本記事は抄訳版です。全文は、以下でダウンロード(無料)できます。
■Computer Weekly日本語版 最近のバックナンバー
Computer Weekly日本語版 8月2日号 2つのオープンソースハードウェアプロジェクト
Computer Weekly日本語版 7月19日号 WannaCryはランサムウェアキラーか?
Computer Weekly日本語版 7月5日号 CIOが果たすべき3つの役割
Copyright © ITmedia, Inc. All Rights Reserved.
近年、SaaS利用が加速する中、「誰がどのサービスを使っているのか不明」「退職者のアカウントが残っている」といった管理上の問題が顕在化している。そこで本資料では、SaaSのアカウント管理を効率的に行う方法を紹介する。
今日、企業は俊敏かつ継続的なサービスを求められており、顧客離れやブランド価値の毀損につながるシステム停止は絶対に避けるべき要件となっている。そこで重要となるのが、データ保護とBCDR(事業継続性とディザスタリカバリー)である。
組織経営の存続を左右する「システム障害」だが、これまではその対策を単なるコスト要因と見なす風潮が強かった。しかし新世代のビジネスリーダーたちは重大な経営課題としてシステム障害に向き合い、さまざまな対策を実践しているという。
さまざまな業種の組織で稼働する「止まっては困るシステム」が、障害で停止するケースが増加している。こうしたリスクに対処する方法として注目されるHAクラスタの有用性と、製品選定時に押さえておきたいポイントをマンガ形式で解説する。
「AIOps」ツールはシステムの運用や開発における業務効率化に役立つ。どのようなメリットがあり、どのように活用できるのか。似た言葉である「MLOps」と共に紹介する。
いまさら聞けない「仮想デスクトップ」と「VDI」の違いとは
遠隔のクライアント端末から、サーバにあるデスクトップ環境を利用できる仕組みである仮想デスクトップ(仮想PC画面)は便利だが、仕組みが複雑だ。仮想デスクトップの仕組みを基礎から確認しよう。
「マーケティングオートメーション」 国内売れ筋TOP10(2025年5月)
今週は、マーケティングオートメーション(MA)ツールの売れ筋TOP10を紹介します。
「サイト内検索」&「ライブチャット」売れ筋TOP5(2025年4月)
今週は、サイト内検索ツールとライブチャットの国内売れ筋TOP5をそれぞれ紹介します。
「ECプラットフォーム」売れ筋TOP10(2025年4月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。