SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

Windows Server 2008 以降のクラスターのコンピューターアカウント作成について

one comment

Windows Server 2008 以降のクラスターのコンピューターアカウント作成について少しメモを。
以下の技術情報を参考にしています。
フェールオーバー クラスター ステップ バイ ステップ ガイド: Active Directory のアカウントの構成
How to Troubleshoot Create Cluster failures in Windows Server 2012

■クラスターのコンピューターアカウントの種類と作成時のユーザー


Windows Server 2008 以降はクラスター (WSFC / 以前の MSCS) ではコンピューターアカウントの種類として以下の 2 種類があります。

クラスター名オブジェクト
(Cluster Name Object : CNO)
クラスターを構築する際に指定するコンピューター名
クラスターのコアリソースのコンピューター名として使用される
クライアントアクセスポイント
(Client Access Points (CAP)
クラスターのグループに指定するコンピューター名
クラスター対応のアプリケーションをインストールした際にクラスターのリソースにアクセスするためのコンピューター名として設定されるのが一般的

 
Windows Server 2003 R2 までのクラスターのサービス (Cluster Service : ClusSvc) はドメインユーザーで起動していましたが、Windows Server 2008 以降のクラスターのサービスがドメインユーザーではなくローカルシステムで起動します。
ただし、クラスターを構築するには AD 上にコンピューターアカウントを作成する必要があるため、ローカルの管理者権限 (Administrators グループ) を持ったドメインユーザーでログインする必要があるため、ドメインユーザーの準備が必須となります。
CNO を作成するときはこのドメインユーザーの権限が使用されます。
# ドメインユーザーでログインしてクラスターの構築を行うため。
ただし、CAP を作成する場合はドメインユーザーではなく CNO のコンピューターアカウントの権限が使用されます。
コンピューターアカウントを作成するときに使用されるユーザーは以下のようになります。

CNO クラスターを構築するためにログインしているドメインユーザー
CAP CNO のコンピューターアカウント

CNO を作成するのはクラスター構築のタイミングですので、作業をするためにログインをしているドメインユーザーとなるのはイメージがしやすいと思います。
CAP はクラスターが構築済みの状態でのみ作成が可能ですので、ドメインユーザーではなくクラスターの CNO の権限で操作が行われることになります。
コンピューターアカウントの作成に失敗した場合、イベントビューアーにどの権限が使用されたかは出力されますので追うことはできると思いますが、このあたりの動作を認識していないと少し違和感があるかもしれないですね。
 

■コンピューターアカウント作成時に必要となる権限


コンピューターアカウントを作成するときの方法ですが 2 種類あるかと思います。

  1. コンピューターアカウントを事前に作成しておく
  2. コンピューターアカウントが作成できる権限を付与しておく

コンピュータアカウントを事前に作成しておく場合は、CNO / CAP で使用するコンピューター名のアカウントを AD 上に作成して以下の設定をしておくことで事前に作成しておいたコンピューターアカウントを使用することができます。

  • 作成に使用されるユーザーにフルコントロール : 許可を付与
    image
  • コンピューターアカウントを無効の状態にしておく
    image

コンピューターアカウントを作成しないで作成時に使用されるユーザーに権限を付与する場合は、コンピュータアカウントが作成されるコンテナ / OU にコンピュータアカウントを策せうするために必要となる以下の権限をする必要があります。
以下の権限は詳細設定から設定することが可能です。デフォルトでは [読み取り] が付与されることがあるかと思いますが、読み取りは外して以下の権限だけ付与すれば権限は最小限になると思います。
Account Operators に入れてしまうという方法もあるかもしれないですね。
# 通常、コンピュータアカウントは [Computers] というコンテナに作成されます。

  • すべてのプロパティの読み取り : 許可
  • コンピューター オブジェクトの作成 : 許可

 
Windows Server 8 Beta (Windows Server 2012) では CNO の作成に機能追加がされており、コンピューターアカウントを作成する OU が指定できるようになりました。
CNO を作成するときのクラスター名の指定として以下のような設定ができます。
image
この時の注意点ですが以下の 2 つの権限が必要になってきます。

  • デフォルトでコンピューターアカウントが作成されるコンテナ / OU に対してコンピューターアカウントを作成するための権限が付与されている
  • 指定した OU に対してコンピューターアカウントを作成するための権限が付与されている

指定した OU だけでなくデフォルトでコンピューターアカウントが作成される コンテナ / OU に対しても適切な権限を付与しておく必要があります。
この指定を使用すると、事前にコンピューターアカウントを作成しておかなくても適切な OU にコンピューターアカウントを作成することができます。
今まで意識していなかったのですが、事前にコンピューターアカウントを登録していない場合、Windows Server 8 Beta では、CNO のコンピューターアカウントが格納されている OU に対して CAP のコンピュータアカウントが登録されるようでした。
クラスターを構築する際に、AD の管理者の方と話をしながら作業を進められるのであればこの辺は柔軟に対応できるのですが、事前に必要となるオブジェクトや権限を申請しないといけない場合は毎回検証して確認をしていたのでメモとして残しておきたいと思います。

Share

Written by Masayuki.Ozawa

5月 10th, 2012 at 10:35 pm

One Response to 'Windows Server 2008 以降のクラスターのコンピューターアカウント作成について'

Subscribe to comments with RSS or TrackBack to 'Windows Server 2008 以降のクラスターのコンピューターアカウント作成について'.

  1. ちょっと気になったのですが、CAPはコンピューター名リソースとIPアドレスリソースのまとまりを通常表しますので、文中の作成されるものはVCO(仮想コンピューターオブジェクト)かな?

    naonao71

    16 5月 12 at 14:15

Leave a Reply