2014/05/20

PowerCLI: 無償利用のESXiでWrite操作を実行する

ESXiは、無償・無料で利用できるライセンスがあるが、PowerCLIでこのライセンスを導入したESXiに接続すると、システムの動作を変更する操作(write operation、write操作)を実行することができない。例えば、仮想ホストをメンテナンスモードに移行しようとすると、エラーになる。

実際に実行して試してみる。まず、仮想ホストesxi01に接続する。
PowerCLI vis:¥> Connect-VIServer -Server esxi01 -User 管理者ユーザ名 -Password '管理者パスワード'

Name                           Port  User
----                           ----  ----
esxi01                         443   管理者ユーザ名


PowerCLI vis:¥>

現在の状態をGet-VMHostコマンドレットを使って確認する。
PowerCLI vis:¥> Get-VMHost

Name                 ConnectionState PowerState NumCpu CpuUsageMhz CpuTotalMhz   MemoryUsageGB   MemoryTotalGB Version
----                 --------------- ---------- ------ ----------- -----------   -------------   ------------- -------
esxi01               Connected       PoweredOn       2          78        4266           1.293          11.999   5.5.0


PowerCLI vis:¥>
「ConnectionState」が「Connected」即ち、接続中であることが判る。

状態の変更には、Set-VMHostコマンドレットを使う。
PowerCLI vis:¥> Set-VMHost -State Maintenance
Set-VMHost : 2014/05/20 17:41:52    Set-VMHost        Current license or ESXi version prohibits execution of the requested operation.
発生場所 行:1 文字:1
+ Set-VMHost -State Maintenance
+ ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
    + CategoryInfo          : NotSpecified: (:) [Set-VMHost], RestrictedVersion
    + FullyQualifiedErrorId : Client20_ComputeResourceServiceImpl_VmHostEnterMaintenaceMode_ViError,VMware.VimAutomation.ViCore.
   Cmdlets.Commands.SetVMHost

PowerCLI vis:¥>
ライセンスの問題で、要求した操作を実行できない。

PowerCLI: 接続時の証明書に関する警告を抑制

ESXiインストール直後の状態では、PowerCLI上でConnect-VIServerコマンドレットなどを使って当該ESXiに接続すると、X.509証明書に関する警告が表示される。
PowerCLI vis:¥> Connect-VIServer -Server esxi01 -User 管理者ユーザ名 -Password '管理者パスワード'
警告: There were one or more problems with the server certificate for the server esxi01:443:

* The X509 chain could not be built up to the root certificate.

* The certificate's CN name does not match the passed value.

Certificate: [Subject]
  OID.1.2.840.113549.1.9.2="1333622464,564d7761726520496e632e", CN=localhost.localdomain, E=ssl-certificates@vmware.com,
OU=VMware ESX Server Default Certificate, O="VMware, Inc", L=Palo Alto, S=California, C=US

[Issuer]
  O=VMware Installer

[Serial Number]
  4A6C787339575678

[Not Before]
  2012/04/05 19:41:05

[Not After]
  2023/10/05 19:41:05

[Thumbprint]
  CAFD0D77AB938E6B5A70D01262BA4C7FC79121FA



The server certificate is not valid.

警告: THE DEFAULT BEHAVIOR UPON INVALID SERVER CERTIFICATE WILL CHANGE IN A FUTURE RELEASE. To ensure scripts are not affected by
 the change, use Set-PowerCLIConfiguration to set a value for the InvalidCertificateAction option.


Name                           Port  User
----                           ----  ----
esxi01                         443   管理者ユーザ名


PowerCLI vis:¥> 
実用上、問題は無いが、この警告を抑制する方法を紹介する。

2014/05/19

PowerCLI: VMware ESXiにライセンスをインストールする。

VMware vSphere PowerCLIは、PowerShellを使ってvShpereやvCloudを管理するコマンドレット群(cmdlets)。ESXi/ESXやvCenter Serverに接続して、対話的な管理作業が可能で、スクリプトによる管理作業の自動化することもできる。

今回は、これを使って、ライセンス導入作業を実施する。

2014/05/12

劣化してベタベタになったラバーコーティングを除去する

注意: 作業は自己責任でお願いします。

ラバーコーティングは、製品の表面をゴムで被覆する仕上げ方で、見た目につや消しで高級感があり、すべり止め効果もあるため、広く使われている。

しかしながら、経年劣化により加水分解しやすく、結果ベタつき、埃や指紋などが付着し、見苦しくなることがある。

基本的に、劣化したものを元に戻す方法は無い。
ここでは、次善策として、ラバーコーティングを除去する方法を紹介したい。

2013/04/01

PowerShellでスマートにダウンロードする(BITS)・その3・バックグラウンド

バックグラウンドで実行するには、コマンドレットStart-BitsTransferに「-Asynchronous」オプションを与えて実行する。
PS C:\Download> Start-BitsTransfer http://ftp.nara.wide.ad.jp/pub/Linux/centos/6/isos/x86_64/CentOS-6.3-x86_64-LiveCD.iso CentOS-6.3-x86_64-LiveCD.iso -Asynchronous

JobId                      DisplayName                TransferType               JobState                   OwnerAccount
-----                      -----------                ------------               --------                   ------------
90341cf3-6ba2-4a68-b1a8... BITS Transfer              Download                   Connecting                 ホスト名\ユーザ名..


PS C:\Download>
登録されたBITSジョブの詳細が表示された後、プロンプトが表示され、制御が戻る。現在の状況は「Connecting」、つまり接続中であることが判る。

バックグラウンドの場合、進行状況がフォアグラウンドには表示されない。また、ダウンロードが完了するまで、ファイルは作成されない。
PS C:\Download> dir
PS C:\Download>
進行状況を確認するには、コマンドレットGet-BitsTransferを使う。
PS C:\Download> Get-BitsTransfer

JobId                      DisplayName                TransferType               JobState                   OwnerAccount
-----                      -----------                ------------               --------                   ------------
90341cf3-6ba2-4a68-b1a8... BITS Transfer              Download                   Transferring               ホスト名\ユーザ名..


PS C:\Download>
現在「Transferring」中、すなわち転送中であることが解る。

ダウンロードが完了した状態になると、次のように表示される。
PS C:\Download> Get-BitsTransfer

JobId                      DisplayName                TransferType               JobState                   OwnerAccount
-----                      -----------                ------------               --------                   ------------
90341cf3-6ba2-4a68-b1a8... BITS Transfer              Download                   Transferred                ホスト名\ユーザ名..


PS C:\Download>
この時点ではまだ、ファイルは存在していない。
PS C:\Download> dir
PS C:\Download>
コマンドレットComplete-BitsTransferでBITSジョブを完了させる。
PS C:\Download> Complete-BitsTransfer (Get-BitsTransfer)
PS C:\Download> Get-BitsTransfer
PS C:\Download>
BITSジョブを完了させると、BITSジョブは削除される。

BITSジョブを完了させた時点で、ファイルが作成される。
PS C:\Download> dir


    ディレクトリ: C:\Download


Mode                LastWriteTime     Length Name
----                -------------     ------ ----
-a---        2012/07/08      2:26  725614592 CentOS-6.3-x86_64-LiveCD.iso


PS C:\Download>


『その1・BITSとは』
『その2・フォアグラウンド』
『その3・バックグラウンド』