CentOS7上のPowerShell Coreで使えるコマンドレット群


2018/07/06修正
PowerShell Core 6.0からSend-MailMessageが搭載されました。
CentOS7環境でもWindows環境と同じSend-MailMessageでメール送信が可能でした。

他にも違いがあるのか、以前のPowerShell Coreから何が変わったのかと、Get-Module -ListAvailableの出力結果を比較してみると、下記の違いがありました。

追加されたもの
Cmdlet Get-PfxCertificate 3.0.0.0 M
Cmdlet Get-TimeZone 3.1.0.0 M
Alias gtz -> 3.1.0.0 M
Cmdlet Remove-Alias 3.1.0.0 M
Cmdlet Send-MailMessage 3.1.0.0 M
Cmdlet Test-Connection 3.1.0.0 M
Cmdlet Test-Json 3.1.0.0 M

削除もしくはモジュールでは無くなったもの
Function AfterAll 3.3.9 P
Function AfterEach 3.3.9 P
Function Assert-MockCalled 3.3.9 P
Function Assert-VerifiableMocks 3.3.9 P
Function BeforeAll 3.3.9 P
Function BeforeEach 3.3.9 P
Function Context 3.3.9 P
Function Describe 3.3.9 P
Alias gcfg -> 0.0 P
Alias gcfgs -> 0.0 P
Function Get-MockDynamicParameters 3.3.9 P
Function Get-TestDriveItem 3.3.9 P
Alias glcm -> 0.0 P
Function HookGetViewAutoCompleter 1.21 P
Function In 3.3.9 P
Function InModuleScope 3.3.9 P
Function Invoke-Mock 3.3.9 P
Function Invoke-Pester 3.3.9 P
Function It 3.3.9 P
Function Mock 3.3.9 P
Function New-Fixture 3.3.9 P
Alias pbcfg -> 0.0 P
Alias rtcfg -> 0.0 P
Alias sacfg -> 0.0 P
Function Set-DynamicParameterVariables 3.3.9 P
Function Setup 3.3.9 P
Function Should 3.3.9 P
Alias slcm -> 0.0 P
Alias tcfg -> 0.0 P
Alias ulcm -> 0.0 P
Alias upcfg -> 0.0 P

PS /root> Get-Module -ListAvailable | % { $_.ExportedCommands.Values } | Sort-Object Name

CommandType     Name                                               Version S
 o
 u
 r
 c
 e
-----------     ----                                               -------    -
Cmdlet          Add-Content                                        3.1.0.0    M
Cmdlet          Add-Member                                         3.1.0.0    M
Function        Add-NodeKeys                                       0.0        P
Cmdlet          Add-Type                                           3.1.0.0    M
Function        AddDscResourceProperty                             0.0        P
Function        AddDscResourcePropertyFromMetadata                 0.0        P
Function        CheckResourceFound                                 0.0        P
Cmdlet          Clear-Content                                      3.1.0.0    M
Cmdlet          Clear-Item                                         3.1.0.0    M
Cmdlet          Clear-ItemProperty                                 3.1.0.0    M
Cmdlet          Clear-Variable                                     3.1.0.0    M
Cmdlet          Compare-Object                                     3.1.0.0    M
Function        Compress-Archive                                   1.1.0.0    M
Function        Configuration                                      0.0        P
Cmdlet          Convert-Path                                       3.1.0.0    M
Cmdlet          ConvertFrom-Csv                                    3.1.0.0    M
Cmdlet          ConvertFrom-Json                                   3.1.0.0    M
Cmdlet          ConvertFrom-SecureString                           3.0.0.0    M
Cmdlet          ConvertFrom-StringData                             3.1.0.0    M
Cmdlet          ConvertTo-Csv                                      3.1.0.0    M
Cmdlet          ConvertTo-Html                                     3.1.0.0    M
Cmdlet          ConvertTo-Json                                     3.1.0.0    M
Function        ConvertTo-MOFInstance                              0.0        P
Cmdlet          ConvertTo-SecureString                             3.0.0.0    M
Cmdlet          ConvertTo-Xml                                      3.1.0.0    M
Cmdlet          Copy-Item                                          3.1.0.0    M
Cmdlet          Copy-ItemProperty                                  3.1.0.0    M
Cmdlet          Debug-Process                                      3.1.0.0    M
Cmdlet          Debug-Runspace                                     3.1.0.0    M
Cmdlet          Disable-PSBreakpoint                               3.1.0.0    M
Cmdlet          Disable-RunspaceDebug                              3.1.0.0    M
Cmdlet          Enable-PSBreakpoint                                3.1.0.0    M
Cmdlet          Enable-RunspaceDebug                               3.1.0.0    M
Function        Expand-Archive                                     1.1.0.0    M
Cmdlet          Export-Alias                                       3.1.0.0    M
Cmdlet          Export-Clixml                                      3.1.0.0    M
Cmdlet          Export-Csv                                         3.1.0.0    M
Cmdlet          Export-FormatData                                  3.1.0.0    M
Cmdlet          Export-PSSession                                   3.1.0.0    M
Alias           fhx ->                                             3.1.0.0    M
Alias           fimo ->                                            1.6.0      P
Function        Find-Command                                       1.6.0      P
Function        Find-DscResource                                   1.6.0      P
Function        Find-Module                                        1.6.0      P
Cmdlet          Find-Package                                       1.1.7.0    P
Cmdlet          Find-PackageProvider                               1.1.7.0    P
Function        Find-RoleCapability                                1.6.0      P
Function        Find-Script                                        1.6.0      P
Cmdlet          Format-Custom                                      3.1.0.0    M
Cmdlet          Format-Hex                                         3.1.0.0    M
Cmdlet          Format-List                                        3.1.0.0    M
Cmdlet          Format-Table                                       3.1.0.0    M
Cmdlet          Format-Wide                                        3.1.0.0    M
Function        Generate-VersionInfo                               0.0        P
Cmdlet          Get-Alias                                          3.1.0.0    M
Cmdlet          Get-ChildItem                                      3.1.0.0    M
Function        Get-CompatibleVersionAddtionaPropertiesStr         0.0        P
Function        Get-ComplexResourceQualifier                       0.0        P
Function        Get-ConfigurationErrorCount                        0.0        P
Cmdlet          Get-Content                                        3.1.0.0    M
Cmdlet          Get-Credential                                     3.0.0.0    M
Cmdlet          Get-Culture                                        3.1.0.0    M
Cmdlet          Get-Date                                           3.1.0.0    M
Function        Get-DscResource                                    0.0        P
Function        Get-DSCResourceModules                             0.0        P
Function        Get-EncryptedPassword                              0.0        P
Cmdlet          Get-Event                                          3.1.0.0    M
Cmdlet          Get-EventSubscriber                                3.1.0.0    M
Cmdlet          Get-ExecutionPolicy                                3.0.0.0    M
Cmdlet          Get-FileHash                                       3.1.0.0    M
Cmdlet          Get-FormatData                                     3.1.0.0    M
Cmdlet          Get-Host                                           3.1.0.0    M
Function        Get-InnerMostErrorRecord                           0.0        P
Function        Get-InstalledModule                                1.6.0      P
Function        Get-InstalledScript                                1.6.0      P
Cmdlet          Get-Item                                           3.1.0.0    M
Cmdlet          Get-ItemProperty                                   3.1.0.0    M
Cmdlet          Get-ItemPropertyValue                              3.1.0.0    M
Cmdlet          Get-Location                                       3.1.0.0    M
Cmdlet          Get-Member                                         3.1.0.0    M
Function        Get-MofInstanceName                                0.0        P
Function        Get-MofInstanceText                                0.0        P
Cmdlet          Get-Package                                        1.1.7.0    P
Cmdlet          Get-PackageProvider                                1.1.7.0    P
Cmdlet          Get-PackageSource                                  1.1.7.0    P
Cmdlet          Get-PfxCertificate                                 3.0.0.0    M
Function        Get-PositionInfo                                   0.0        P
Cmdlet          Get-Process                                        3.1.0.0    M
Cmdlet          Get-PSBreakpoint                                   3.1.0.0    M
Cmdlet          Get-PSCallStack                                    3.1.0.0    M
Function        Get-PSCurrentConfigurationNode                     0.0        P
Function        Get-PSDefaultConfigurationDocument                 0.0        P
Cmdlet          Get-PSDrive                                        3.1.0.0    M
Function        Get-PSMetaConfigDocumentInstVersionInfo            0.0        P
Function        Get-PSMetaConfigurationProcessed                   0.0        P
Cmdlet          Get-PSProvider                                     3.1.0.0    M
Cmdlet          Get-PSReadlineKeyHandler                           1.2        P
Cmdlet          Get-PSReadlineOption                               1.2        P
Function        Get-PSRepository                                   1.6.0      P
Function        Get-PSTopConfigurationName                         0.0        P
Function        Get-PublicKeyFromFile                              0.0        P
Function        Get-PublicKeyFromStore                             0.0        P
Cmdlet          Get-Random                                         3.1.0.0    M
Cmdlet          Get-Runspace                                       3.1.0.0    M
Cmdlet          Get-RunspaceDebug                                  3.1.0.0    M
Cmdlet          Get-TimeZone                                       3.1.0.0    M
Cmdlet          Get-TraceSource                                    3.1.0.0    M
Cmdlet          Get-TypeData                                       3.1.0.0    M
Cmdlet          Get-UICulture                                      3.1.0.0    M
Cmdlet          Get-Unique                                         3.1.0.0    M
Cmdlet          Get-Uptime                                         3.1.0.0    M
Cmdlet          Get-Variable                                       3.1.0.0    M
Cmdlet          Get-Verb                                           3.1.0.0    M
Function        GetCompositeResource                               0.0        P
Function        GetImplementingModulePath                          0.0        P
Function        GetModule                                          0.0        P
Function        GetPatterns                                        0.0        P
Function        GetResourceFromKeyword                             0.0        P
Function        GetSyntax                                          0.0        P
Cmdlet          Group-Object                                       3.1.0.0    M
Alias           gtz ->                                             3.1.0.0    M
Cmdlet          Import-Alias                                       3.1.0.0    M
Cmdlet          Import-Clixml                                      3.1.0.0    M
Cmdlet          Import-Csv                                         3.1.0.0    M
Cmdlet          Import-LocalizedData                               3.1.0.0    M
Cmdlet          Import-PackageProvider                             1.1.7.0    P
Function        Import-PowerShellDataFile                          3.1.0.0    M
Cmdlet          Import-PSSession                                   3.1.0.0    M
Function        ImportCimAndScriptKeywordsFromModule               0.0        P
Function        ImportClassResourcesFromModule                     0.0        P
Function        Initialize-ConfigurationRuntimeState               0.0        P
Alias           inmo ->                                            1.6.0      P
Function        Install-Module                                     1.6.0      P
Cmdlet          Install-Package                                    1.1.7.0    P
Cmdlet          Install-PackageProvider                            1.1.7.0    P
Function        Install-Script                                     1.6.0      P
Cmdlet          Invoke-Expression                                  3.1.0.0    M
Cmdlet          Invoke-Item                                        3.1.0.0    M
Cmdlet          Invoke-RestMethod                                  3.1.0.0    M
Cmdlet          Invoke-WebRequest                                  3.1.0.0    M
Function        IsHiddenResource                                   0.0        P
Function        IsPatternMatched                                   0.0        P
Cmdlet          Join-Path                                          3.1.0.0    M
Cmdlet          Measure-Command                                    3.1.0.0    M
Cmdlet          Measure-Object                                     3.1.0.0    M
Cmdlet          Move-Item                                          3.1.0.0    M
Cmdlet          Move-ItemProperty                                  3.1.0.0    M
Cmdlet          New-Alias                                          3.1.0.0    M
Function        New-DscChecksum                                    0.0        P
Cmdlet          New-Event                                          3.1.0.0    M
Cmdlet          New-Guid                                           3.1.0.0    M
Cmdlet          New-Item                                           3.1.0.0    M
Cmdlet          New-ItemProperty                                   3.1.0.0    M
Cmdlet          New-Object                                         3.1.0.0    M
Cmdlet          New-PSDrive                                        3.1.0.0    M
Function        New-ScriptFileInfo                                 1.6.0      P
Cmdlet          New-TemporaryFile                                  3.1.0.0    M
Cmdlet          New-TimeSpan                                       3.1.0.0    M
Cmdlet          New-Variable                                       3.1.0.0    M
Function        Node                                               0.0        P
Cmdlet          Out-File                                           3.1.0.0    M
Cmdlet          Out-String                                         3.1.0.0    M
Cmdlet          Pop-Location                                       3.1.0.0    M
Function        PSConsoleHostReadline                              1.2        P
Function        Publish-Module                                     1.6.0      P
Function        Publish-Script                                     1.6.0      P
Alias           pumo ->                                            1.6.0      P
Cmdlet          Push-Location                                      3.1.0.0    M
Cmdlet          Read-Host                                          3.1.0.0    M
Function        ReadEnvironmentFile                                0.0        P
Cmdlet          Register-EngineEvent                               3.1.0.0    M
Cmdlet          Register-ObjectEvent                               3.1.0.0    M
Cmdlet          Register-PackageSource                             1.1.7.0    P
Function        Register-PSRepository                              1.6.0      P
Cmdlet          Remove-Alias                                       3.1.0.0    M
Cmdlet          Remove-Event                                       3.1.0.0    M
Cmdlet          Remove-Item                                        3.1.0.0    M
Cmdlet          Remove-ItemProperty                                3.1.0.0    M
Cmdlet          Remove-PSBreakpoint                                3.1.0.0    M
Cmdlet          Remove-PSDrive                                     3.1.0.0    M
Cmdlet          Remove-PSReadlineKeyHandler                        1.2        P
Cmdlet          Remove-TypeData                                    3.1.0.0    M
Cmdlet          Remove-Variable                                    3.1.0.0    M
Cmdlet          Rename-Item                                        3.1.0.0    M
Cmdlet          Rename-ItemProperty                                3.1.0.0    M
Cmdlet          Resolve-Path                                       3.1.0.0    M
Function        Save-Module                                        1.6.0      P
Cmdlet          Save-Package                                       1.1.7.0    P
Function        Save-Script                                        1.6.0      P
Cmdlet          Select-Object                                      3.1.0.0    M
Cmdlet          Select-String                                      3.1.0.0    M
Cmdlet          Select-Xml                                         3.1.0.0    M
Cmdlet          Send-MailMessage                                   3.1.0.0    M
Cmdlet          Set-Alias                                          3.1.0.0    M
Cmdlet          Set-Content                                        3.1.0.0    M
Cmdlet          Set-Date                                           3.1.0.0    M
Cmdlet          Set-ExecutionPolicy                                3.0.0.0    M
Cmdlet          Set-Item                                           3.1.0.0    M
Cmdlet          Set-ItemProperty                                   3.1.0.0    M
Cmdlet          Set-Location                                       3.1.0.0    M
Function        Set-NodeExclusiveResources                         0.0        P
Function        Set-NodeManager                                    0.0        P
Function        Set-NodeResources                                  0.0        P
Function        Set-NodeResourceSource                             0.0        P
Cmdlet          Set-PackageSource                                  1.1.7.0    P
Cmdlet          Set-PSBreakpoint                                   3.1.0.0    M
Function        Set-PSCurrentConfigurationNode                     0.0        P
Function        Set-PSDefaultConfigurationDocument                 0.0        P
Function        Set-PSMetaConfigDocInsProcessedBeforeMeta          0.0        P
Function        Set-PSMetaConfigVersionInfoV2                      0.0        P
Cmdlet          Set-PSReadlineKeyHandler                           1.2        P
Cmdlet          Set-PSReadlineOption                               1.2        P
Function        Set-PSRepository                                   1.6.0      P
Function        Set-PSTopConfigurationName                         0.0        P
Cmdlet          Set-TraceSource                                    3.1.0.0    M
Cmdlet          Set-Variable                                       3.1.0.0    M
Cmdlet          Sort-Object                                        3.1.0.0    M
Cmdlet          Split-Path                                         3.1.0.0    M
Cmdlet          Start-Process                                      3.1.0.0    M
Cmdlet          Start-Sleep                                        3.1.0.0    M
Cmdlet          Start-Transcript                                   3.0.0.0    M
Cmdlet          Stop-Process                                       3.1.0.0    M
Cmdlet          Stop-Transcript                                    3.0.0.0    M
Function        StrongConnect                                      0.0        P
Cmdlet          Tee-Object                                         3.1.0.0    M
Function        Test-ConflictingResources                          0.0        P
Cmdlet          Test-Connection                                    3.1.0.0    M
Cmdlet          Test-Json                                          3.1.0.0    M
Function        Test-ModuleReloadRequired                          0.0        P
Function        Test-MofInstanceText                               0.0        P
Function        Test-NodeManager                                   0.0        P
Function        Test-NodeResources                                 0.0        P
Function        Test-NodeResourceSource                            0.0        P
Cmdlet          Test-Path                                          3.1.0.0    M
Function        Test-ScriptFileInfo                                1.6.0      P
Function        ThrowError                                         0.0        P
Cmdlet          Trace-Command                                      3.1.0.0    M
Function        Uninstall-Module                                   1.6.0      P
Cmdlet          Uninstall-Package                                  1.1.7.0    P
Function        Uninstall-Script                                   1.6.0      P
Cmdlet          Unregister-Event                                   3.1.0.0    M
Cmdlet          Unregister-PackageSource                           1.1.7.0    P
Function        Unregister-PSRepository                            1.6.0      P
Function        Update-ConfigurationDocumentRef                    0.0        P
Function        Update-ConfigurationErrorCount                     0.0        P
Function        Update-DependsOn                                   0.0        P
Cmdlet          Update-FormatData                                  3.1.0.0    M
Function        Update-LocalConfigManager                          0.0        P
Function        Update-Module                                      1.6.0      P
Function        Update-ModuleManifest                              1.6.0      P
Function        Update-ModuleVersion                               0.0        P
Function        Update-Script                                      1.6.0      P
Function        Update-ScriptFileInfo                              1.6.0      P
Cmdlet          Update-TypeData                                    3.1.0.0    M
Alias           upmo ->                                            1.6.0      P
Function        ValidateNoCircleInNodeResources                    0.0        P
Function        ValidateNodeExclusiveResources                     0.0        P
Function        ValidateNodeManager                                0.0        P
Function        ValidateNodeResources                              0.0        P
Function        ValidateNodeResourceSource                         0.0        P
Function        ValidateNoNameNodeResources                        0.0        P
Function        ValidateUpdate-ConfigurationData                   0.0        P
Cmdlet          Wait-Debugger                                      3.1.0.0    M
Cmdlet          Wait-Event                                         3.1.0.0    M
Cmdlet          Wait-Process                                       3.1.0.0    M
Cmdlet          Write-Debug                                        3.1.0.0    M
Cmdlet          Write-Error                                        3.1.0.0    M
Cmdlet          Write-Host                                         3.1.0.0    M
Cmdlet          Write-Information                                  3.1.0.0    M
Function        Write-Log                                          0.0        P
Function        Write-MetaConfigFile                               0.0        P
Function        Write-NodeMOFFile                                  0.0        P
Cmdlet          Write-Output                                       3.1.0.0    M
Cmdlet          Write-Progress                                     3.1.0.0    M
Cmdlet          Write-Verbose                                      3.1.0.0    M
Cmdlet          Write-Warning                                      3.1.0.0    M
Function        WriteFile                                          0.0        P
PS /root>

以下は2017/02/27時点の内容


CentOS7上で使えるPowerShell Coreでメールを送ろうとした。

スクリプトは「PowerShellを使って日本語メールを送信する方法(v2.0も対応する版)」で使ったものを使用・・・

しかし、Send-MailMessageが存在せず、メール送信に失敗した。

PS /root> Send-MailMessage
Send-MailMessage : The term 'Send-MailMessage' is not recognized as the name of
 a cmdlet, function, script file, or operable program. Check the spelling of th
e name, or if a path was included, verify that the path is correct and try agai
n.
At line:1 char:1
+ Send-MailMessage
+ ~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Send-MailMessage:String) [], Co
   mmandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

PS /root>

どうやら、使えないコマンドレットがそこそこあるようなんだけど、具体的に何なら使えるのかを書いてあるところを見つけられなかった。

しかし、「Get-Module」で取得できるモジュール情報の「ExportedCommands」には、そのモジュールで提供されているコマンドレット/関数一覧がある。
そこで、PowerShell Core環境で用意されているPowerShellでは、どのようなコマンドレットが使えるのか、リストアップしてみた。

PS /root> Get-Module -ListAvailable | % { $_.ExportedCommands.Values } | Sort-Object Name

CommandType     Name                                               Version    S
                                                                              o
                                                                              u
                                                                              r
                                                                              c
                                                                              e
-----------     ----                                               -------    -
Cmdlet          Add-Content                                        3.1.0.0    M
Cmdlet          Add-Member                                         3.1.0.0    M
Function        Add-NodeKeys                                       0.0        P
Cmdlet          Add-Type                                           3.1.0.0    M
Function        AddDscResourceProperty                             0.0        P
Function        AddDscResourcePropertyFromMetadata                 0.0        P
Function        AfterAll                                           3.3.9      P
Function        AfterEach                                          3.3.9      P
Function        Assert-MockCalled                                  3.3.9      P
Function        Assert-VerifiableMocks                             3.3.9      P
Function        BeforeAll                                          3.3.9      P
Function        BeforeEach                                         3.3.9      P
Function        CheckResourceFound                                 0.0        P
Cmdlet          Clear-Content                                      3.1.0.0    M
Cmdlet          Clear-Item                                         3.1.0.0    M
Cmdlet          Clear-ItemProperty                                 3.1.0.0    M
Cmdlet          Clear-Variable                                     3.1.0.0    M
Cmdlet          Compare-Object                                     3.1.0.0    M
Function        Compress-Archive                                   1.0.1.0    M
Function        Configuration                                      0.0        P
Function        Context                                            3.3.9      P
Cmdlet          Convert-Path                                       3.1.0.0    M
Cmdlet          ConvertFrom-Csv                                    3.1.0.0    M
Cmdlet          ConvertFrom-Json                                   3.1.0.0    M
Cmdlet          ConvertFrom-SecureString                           3.0.0.0    M
Cmdlet          ConvertFrom-StringData                             3.1.0.0    M
Cmdlet          ConvertTo-Csv                                      3.1.0.0    M
Cmdlet          ConvertTo-Html                                     3.1.0.0    M
Cmdlet          ConvertTo-Json                                     3.1.0.0    M
Function        ConvertTo-MOFInstance                              0.0        P
Cmdlet          ConvertTo-SecureString                             3.0.0.0    M
Cmdlet          ConvertTo-Xml                                      3.1.0.0    M
Cmdlet          Copy-Item                                          3.1.0.0    M
Cmdlet          Copy-ItemProperty                                  3.1.0.0    M
Cmdlet          Debug-Process                                      3.1.0.0    M
Cmdlet          Debug-Runspace                                     3.1.0.0    M
Function        Describe                                           3.3.9      P
Cmdlet          Disable-PSBreakpoint                               3.1.0.0    M
Cmdlet          Disable-RunspaceDebug                              3.1.0.0    M
Cmdlet          Enable-PSBreakpoint                                3.1.0.0    M
Cmdlet          Enable-RunspaceDebug                               3.1.0.0    M
Function        Expand-Archive                                     1.0.1.0    M
Cmdlet          Export-Alias                                       3.1.0.0    M
Cmdlet          Export-Clixml                                      3.1.0.0    M
Cmdlet          Export-Csv                                         3.1.0.0    M
Cmdlet          Export-FormatData                                  3.1.0.0    M
Cmdlet          Export-PSSession                                   3.1.0.0    M
Alias           fhx ->                                             3.1.0.0    M
Alias           fimo ->                                            1.1.2.0    P
Function        Find-Command                                       1.1.2.0    P
Function        Find-DscResource                                   1.1.2.0    P
Function        Find-Module                                        1.1.2.0    P
Cmdlet          Find-Package                                       1.1.2.0    P
Cmdlet          Find-PackageProvider                               1.1.2.0    P
Function        Find-RoleCapability                                1.1.2.0    P
Function        Find-Script                                        1.1.2.0    P
Cmdlet          Format-Custom                                      3.1.0.0    M
Function        Format-Hex                                         3.1.0.0    M
Cmdlet          Format-List                                        3.1.0.0    M
Cmdlet          Format-Table                                       3.1.0.0    M
Cmdlet          Format-Wide                                        3.1.0.0    M
Alias           gcfg ->                                            0.0        P
Alias           gcfgs ->                                           0.0        P
Function        Generate-VersionInfo                               0.0        P
Cmdlet          Get-Alias                                          3.1.0.0    M
Cmdlet          Get-ChildItem                                      3.1.0.0    M
Function        Get-CompatibleVersionAddtionaPropertiesStr         0.0        P
Function        Get-ComplexResourceQualifier                       0.0        P
Function        Get-ConfigurationErrorCount                        0.0        P
Cmdlet          Get-Content                                        3.1.0.0    M
Cmdlet          Get-Credential                                     3.0.0.0    M
Cmdlet          Get-Culture                                        3.1.0.0    M
Cmdlet          Get-Date                                           3.1.0.0    M
Function        Get-DscResource                                    0.0        P
Function        Get-DSCResourceModules                             0.0        P
Function        Get-EncryptedPassword                              0.0        P
Cmdlet          Get-Event                                          3.1.0.0    M
Cmdlet          Get-EventSubscriber                                3.1.0.0    M
Cmdlet          Get-ExecutionPolicy                                3.0.0.0    M
Cmdlet          Get-FileHash                                       3.1.0.0    M
Cmdlet          Get-FormatData                                     3.1.0.0    M
Cmdlet          Get-Host                                           3.1.0.0    M
Function        Get-InnerMostErrorRecord                           0.0        P
Function        Get-InstalledModule                                1.1.2.0    P
Function        Get-InstalledScript                                1.1.2.0    P
Cmdlet          Get-Item                                           3.1.0.0    M
Cmdlet          Get-ItemProperty                                   3.1.0.0    M
Cmdlet          Get-ItemPropertyValue                              3.1.0.0    M
Cmdlet          Get-Location                                       3.1.0.0    M
Cmdlet          Get-Member                                         3.1.0.0    M
Function        Get-MockDynamicParameters                          3.3.9      P
Function        Get-MofInstanceName                                0.0        P
Function        Get-MofInstanceText                                0.0        P
Cmdlet          Get-Package                                        1.1.2.0    P
Cmdlet          Get-PackageProvider                                1.1.2.0    P
Cmdlet          Get-PackageSource                                  1.1.2.0    P
Function        Get-PositionInfo                                   0.0        P
Cmdlet          Get-Process                                        3.1.0.0    M
Cmdlet          Get-PSBreakpoint                                   3.1.0.0    M
Cmdlet          Get-PSCallStack                                    3.1.0.0    M
Function        Get-PSCurrentConfigurationNode                     0.0        P
Function        Get-PSDefaultConfigurationDocument                 0.0        P
Cmdlet          Get-PSDrive                                        3.1.0.0    M
Function        Get-PSMetaConfigDocumentInstVersionInfo            0.0        P
Function        Get-PSMetaConfigurationProcessed                   0.0        P
Cmdlet          Get-PSProvider                                     3.1.0.0    M
Cmdlet          Get-PSReadlineKeyHandler                           1.2        P
Cmdlet          Get-PSReadlineOption                               1.2        P
Function        Get-PSRepository                                   1.1.2.0    P
Function        Get-PSTopConfigurationName                         0.0        P
Function        Get-PublicKeyFromFile                              0.0        P
Function        Get-PublicKeyFromStore                             0.0        P
Cmdlet          Get-Random                                         3.1.0.0    M
Cmdlet          Get-Runspace                                       3.1.0.0    M
Cmdlet          Get-RunspaceDebug                                  3.1.0.0    M
Function        Get-TestDriveItem                                  3.3.9      P
Cmdlet          Get-TraceSource                                    3.1.0.0    M
Cmdlet          Get-TypeData                                       3.1.0.0    M
Cmdlet          Get-UICulture                                      3.1.0.0    M
Cmdlet          Get-Unique                                         3.1.0.0    M
Cmdlet          Get-Uptime                                         3.1.0.0    M
Cmdlet          Get-Variable                                       3.1.0.0    M
Cmdlet          Get-Verb                                           3.1.0.0    M
Function        GetCompositeResource                               0.0        P
Function        GetImplementingModulePath                          0.0        P
Function        GetModule                                          0.0        P
Function        GetPatterns                                        0.0        P
Function        GetResourceFromKeyword                             0.0        P
Function        GetSyntax                                          0.0        P
Alias           glcm ->                                            0.0        P
Cmdlet          Group-Object                                       3.1.0.0    M
Function        HookGetViewAutoCompleter                           1.21       P
Cmdlet          Import-Alias                                       3.1.0.0    M
Cmdlet          Import-Clixml                                      3.1.0.0    M
Cmdlet          Import-Csv                                         3.1.0.0    M
Cmdlet          Import-LocalizedData                               3.1.0.0    M
Cmdlet          Import-PackageProvider                             1.1.2.0    P
Function        Import-PowerShellDataFile                          3.1.0.0    M
Cmdlet          Import-PSSession                                   3.1.0.0    M
Function        ImportCimAndScriptKeywordsFromModule               0.0        P
Function        ImportClassResourcesFromModule                     0.0        P
Function        In                                                 3.3.9      P
Function        Initialize-ConfigurationRuntimeState               0.0        P
Alias           inmo ->                                            1.1.2.0    P
Function        InModuleScope                                      3.3.9      P
Function        Install-Module                                     1.1.2.0    P
Cmdlet          Install-Package                                    1.1.2.0    P
Cmdlet          Install-PackageProvider                            1.1.2.0    P
Function        Install-Script                                     1.1.2.0    P
Cmdlet          Invoke-Expression                                  3.1.0.0    M
Cmdlet          Invoke-Item                                        3.1.0.0    M
Function        Invoke-Mock                                        3.3.9      P
Function        Invoke-Pester                                      3.3.9      P
Cmdlet          Invoke-RestMethod                                  3.1.0.0    M
Cmdlet          Invoke-WebRequest                                  3.1.0.0    M
Function        IsHiddenResource                                   0.0        P
Function        IsPatternMatched                                   0.0        P
Function        It                                                 3.3.9      P
Cmdlet          Join-Path                                          3.1.0.0    M
Cmdlet          Measure-Command                                    3.1.0.0    M
Cmdlet          Measure-Object                                     3.1.0.0    M
Function        Mock                                               3.3.9      P
Cmdlet          Move-Item                                          3.1.0.0    M
Cmdlet          Move-ItemProperty                                  3.1.0.0    M
Cmdlet          New-Alias                                          3.1.0.0    M
Function        New-DscChecksum                                    0.0        P
Cmdlet          New-Event                                          3.1.0.0    M
Function        New-Fixture                                        3.3.9      P
Cmdlet          New-Guid                                           3.1.0.0    M
Cmdlet          New-Item                                           3.1.0.0    M
Cmdlet          New-ItemProperty                                   3.1.0.0    M
Cmdlet          New-Object                                         3.1.0.0    M
Cmdlet          New-PSDrive                                        3.1.0.0    M
Function        New-ScriptFileInfo                                 1.1.2.0    P
Cmdlet          New-TemporaryFile                                  3.1.0.0    M
Cmdlet          New-TimeSpan                                       3.1.0.0    M
Cmdlet          New-Variable                                       3.1.0.0    M
Function        Node                                               0.0        P
Cmdlet          Out-File                                           3.1.0.0    M
Cmdlet          Out-String                                         3.1.0.0    M
Alias           pbcfg ->                                           0.0        P
Cmdlet          Pop-Location                                       3.1.0.0    M
Function        PSConsoleHostReadline                              1.2        P
Function        Publish-Module                                     1.1.2.0    P
Function        Publish-Script                                     1.1.2.0    P
Alias           pumo ->                                            1.1.2.0    P
Cmdlet          Push-Location                                      3.1.0.0    M
Cmdlet          Read-Host                                          3.1.0.0    M
Function        ReadEnvironmentFile                                0.0        P
Cmdlet          Register-EngineEvent                               3.1.0.0    M
Cmdlet          Register-ObjectEvent                               3.1.0.0    M
Cmdlet          Register-PackageSource                             1.1.2.0    P
Function        Register-PSRepository                              1.1.2.0    P
Cmdlet          Remove-Event                                       3.1.0.0    M
Cmdlet          Remove-Item                                        3.1.0.0    M
Cmdlet          Remove-ItemProperty                                3.1.0.0    M
Cmdlet          Remove-PSBreakpoint                                3.1.0.0    M
Cmdlet          Remove-PSDrive                                     3.1.0.0    M
Cmdlet          Remove-PSReadlineKeyHandler                        1.2        P
Cmdlet          Remove-TypeData                                    3.1.0.0    M
Cmdlet          Remove-Variable                                    3.1.0.0    M
Cmdlet          Rename-Item                                        3.1.0.0    M
Cmdlet          Rename-ItemProperty                                3.1.0.0    M
Cmdlet          Resolve-Path                                       3.1.0.0    M
Alias           rtcfg ->                                           0.0        P
Alias           sacfg ->                                           0.0        P
Function        Save-Module                                        1.1.2.0    P
Cmdlet          Save-Package                                       1.1.2.0    P
Function        Save-Script                                        1.1.2.0    P
Cmdlet          Select-Object                                      3.1.0.0    M
Cmdlet          Select-String                                      3.1.0.0    M
Cmdlet          Select-Xml                                         3.1.0.0    M
Cmdlet          Set-Alias                                          3.1.0.0    M
Cmdlet          Set-Content                                        3.1.0.0    M
Cmdlet          Set-Date                                           3.1.0.0    M
Function        Set-DynamicParameterVariables                      3.3.9      P
Cmdlet          Set-ExecutionPolicy                                3.0.0.0    M
Cmdlet          Set-Item                                           3.1.0.0    M
Cmdlet          Set-ItemProperty                                   3.1.0.0    M
Cmdlet          Set-Location                                       3.1.0.0    M
Function        Set-NodeExclusiveResources                         0.0        P
Function        Set-NodeManager                                    0.0        P
Function        Set-NodeResources                                  0.0        P
Function        Set-NodeResourceSource                             0.0        P
Cmdlet          Set-PackageSource                                  1.1.2.0    P
Cmdlet          Set-PSBreakpoint                                   3.1.0.0    M
Function        Set-PSCurrentConfigurationNode                     0.0        P
Function        Set-PSDefaultConfigurationDocument                 0.0        P
Function        Set-PSMetaConfigDocInsProcessedBeforeMeta          0.0        P
Function        Set-PSMetaConfigVersionInfoV2                      0.0        P
Cmdlet          Set-PSReadlineKeyHandler                           1.2        P
Cmdlet          Set-PSReadlineOption                               1.2        P
Function        Set-PSRepository                                   1.1.2.0    P
Function        Set-PSTopConfigurationName                         0.0        P
Cmdlet          Set-TraceSource                                    3.1.0.0    M
Cmdlet          Set-Variable                                       3.1.0.0    M
Function        Setup                                              3.3.9      P
Function        Should                                             3.3.9      P
Alias           slcm ->                                            0.0        P
Cmdlet          Sort-Object                                        3.1.0.0    M
Cmdlet          Split-Path                                         3.1.0.0    M
Cmdlet          Start-Process                                      3.1.0.0    M
Cmdlet          Start-Sleep                                        3.1.0.0    M
Cmdlet          Start-Transcript                                   3.0.0.0    M
Cmdlet          Stop-Process                                       3.1.0.0    M
Cmdlet          Stop-Transcript                                    3.0.0.0    M
Function        StrongConnect                                      0.0        P
Alias           tcfg ->                                            0.0        P
Cmdlet          Tee-Object                                         3.1.0.0    M
Function        Test-ConflictingResources                          0.0        P
Function        Test-ModuleReloadRequired                          0.0        P
Function        Test-MofInstanceText                               0.0        P
Function        Test-NodeManager                                   0.0        P
Function        Test-NodeResources                                 0.0        P
Function        Test-NodeResourceSource                            0.0        P
Cmdlet          Test-Path                                          3.1.0.0    M
Function        Test-ScriptFileInfo                                1.1.2.0    P
Function        ThrowError                                         0.0        P
Cmdlet          Trace-Command                                      3.1.0.0    M
Alias           ulcm ->                                            0.0        P
Function        Uninstall-Module                                   1.1.2.0    P
Cmdlet          Uninstall-Package                                  1.1.2.0    P
Function        Uninstall-Script                                   1.1.2.0    P
Cmdlet          Unregister-Event                                   3.1.0.0    M
Cmdlet          Unregister-PackageSource                           1.1.2.0    P
Function        Unregister-PSRepository                            1.1.2.0    P
Alias           upcfg ->                                           0.0        P
Function        Update-ConfigurationDocumentRef                    0.0        P
Function        Update-ConfigurationErrorCount                     0.0        P
Function        Update-DependsOn                                   0.0        P
Cmdlet          Update-FormatData                                  3.1.0.0    M
Function        Update-LocalConfigManager                          0.0        P
Function        Update-Module                                      1.1.2.0    P
Function        Update-ModuleManifest                              1.1.2.0    P
Function        Update-ModuleVersion                               0.0        P
Function        Update-Script                                      1.1.2.0    P
Function        Update-ScriptFileInfo                              1.1.2.0    P
Cmdlet          Update-TypeData                                    3.1.0.0    M
Alias           upmo ->                                            1.1.2.0    P
Function        ValidateNoCircleInNodeResources                    0.0        P
Function        ValidateNodeExclusiveResources                     0.0        P
Function        ValidateNodeManager                                0.0        P
Function        ValidateNodeResources                              0.0        P
Function        ValidateNodeResourceSource                         0.0        P
Function        ValidateNoNameNodeResources                        0.0        P
Function        ValidateUpdate-ConfigurationData                   0.0        P
Cmdlet          Wait-Debugger                                      3.1.0.0    M
Cmdlet          Wait-Event                                         3.1.0.0    M
Cmdlet          Wait-Process                                       3.1.0.0    M
Cmdlet          Write-Debug                                        3.1.0.0    M
Cmdlet          Write-Error                                        3.1.0.0    M
Cmdlet          Write-Host                                         3.1.0.0    M
Cmdlet          Write-Information                                  3.1.0.0    M
Function        Write-Log                                          0.0        P
Function        Write-MetaConfigFile                               0.0        P
Function        Write-NodeMOFFile                                  0.0        P
Cmdlet          Write-Output                                       3.1.0.0    M
Cmdlet          Write-Progress                                     3.1.0.0    M
Cmdlet          Write-Verbose                                      3.1.0.0    M
Cmdlet          Write-Warning                                      3.1.0.0    M
Function        WriteFile                                          0.0        P


PS /root>

CentOS7のdmesgにperf: interrupt took too longに関するメッセージが出力される


CentOS7で運用しているサーバで「perf: interrupt took too long (3989 > 3933), lowering kernel.perf_event_max_sample_rate to 50000」というような出力が発生しているのに気がついた。

$ dmesg|grep "kernel.perf_event_max_sample_rate"
[ 1502.981806] perf: interrupt took too long (2512 > 2500), lowering kernel.perf_event_max_sample_rate to 79000
[ 2019.987492] perf: interrupt took too long (3147 > 3140), lowering kernel.perf_event_max_sample_rate to 63000
[ 2910.077414] perf: interrupt took too long (3989 > 3933), lowering kernel.perf_event_max_sample_rate to 50000
$

パフォーマンス情報を取得するために、どれくらいの周期でデータを取得したらいいのかは、サーバのハードウェア構成などによって変化するため、自動調整するようになっているようだ。

まずは、長い間隔で収集(サンプリングレート)し、うまくデータが取れているようだったら、徐々に間隔を短縮していく、ということになっているようだ。

journalctlでログから発生時刻を確認する。

# journalctl |grep "perf_event_max_sample_rate"
 2月 27 10:44:11 blog.osakana.net kernel: perf: interrupt took too long (2512 > 2500), lowering kernel.perf_event_max_sample_rate to 79000
 2月 27 10:52:48 blog.osakana.net kernel: perf: interrupt took too long (3147 > 3140), lowering kernel.perf_event_max_sample_rate to 63000
 2月 27 11:07:38 blog.osakana.net kernel: perf: interrupt took too long (3989 > 3933), lowering kernel.perf_event_max_sample_rate to 50000
#

この日は10:19頃にkernelアップデートのため再起動したことにより、サンプリングレートの値が初期化され、調整が必要になったようだ。

過去のログを遡ってみると「perf: interrupt took too long (5208 > 5190), lowering kernel.perf_event_max_sample_rate to 38000」というのが、一番低い値である模様。

最初の変更後の値が79000ということを考えると、起動時の初期値は80000以上だったと思われるので、周期が半分以下となったということである。

さて、kernel.perf_event_max_sample_rateの現在値は「/proc/sys/kernel/perf_event_max_sample_rate」で確認出来る。

# cat /proc/sys/kernel/perf_event_max_sample_rate
50000
#

値を変更する場合は、上記に値を入れる。

恒久的に変更するには、sysctlの設定ファイルを作成する。

CentOS7の場合、/etc/sysctl.d ディレクトリに設定ファイルを作成する。(/etc/sysctl.confに追加するという手もあるが、今後のパッチでsysctl.confが修正される可能性があるためお薦めしない。)

まず、現在の設定値を確認

# sysctl -a | grep perf_event_max_sample_rate
kernel.perf_event_max_sample_rate = 50000
#

/etc/sysctl.d/90-local.conf として設定値を入れた設定ファイルを作成

# echo "kernel.perf_event_max_sample_rate = 38000" > /etc/sysctl.d/90-local.conf
# cat /etc/sysctl.d/90-local.conf
kernel.perf_event_max_sample_rate = 38000
#

sysctlの設定をシステムに適用します。

# sysctl --system
* Applying /usr/lib/sysctl.d/00-system.conf ...
* Applying /usr/lib/sysctl.d/50-default.conf ...
kernel.sysrq = 16
kernel.core_uses_pid = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.promote_secondaries = 1
net.ipv4.conf.all.promote_secondaries = 1
fs.protected_hardlinks = 1
fs.protected_symlinks = 1
* Applying /etc/sysctl.d/90-local.conf ...
kernel.perf_event_max_sample_rate = 38000
* Applying /etc/sysctl.d/99-sysctl.conf ...
* Applying /etc/sysctl.conf ...
#

値が変更されたことを確認します。

# sysctl -a | grep perf_event_max_sample_rate
kernel.perf_event_max_sample_rate = 38000
#

2017/03/03追記
kernel.perf_event_max_sample_rate の値を調整した後、現在のところは同じメッセージは出力されていません。

2017/03/22追記
約1ヶ月経過しましたが、出力されていないので、うちの環境では38000で問題ないようです。

2018/07/09追記
別環境で作ったサーバでも38000で落ち着きました。

muninのDisk IOs per deviceからsdaなどを除外する



Linux LVMベースでパーテーションが構成されている環境で、muninを使ったら、Disk IOs per deviceなどで、「sda」が存在していた。

今回の環境だと、sda内に、それ以外のLVMが含まれている形となるので、sda自体を表示する意味がほとんど無いので、除外しようと思う。

資料は「diskstats 」。

「/etc/munin/plugin-conf.d/diskstats」というファイルに下記を記載した。

[diskstats]
env.exclude sda

この変更を行った後は、下記の様なグラフとなった。

Linux上のPowerShellでvSphereの操作を行うPowerCLI Coreを試す+CentOS7で使うための回避策



2018/07/06追記

PowerCLI Coreが無くなり、VMware PowerCLI本体の方でPowerShell Coreへの対応が行われるようになり、
RHEL7/CentOS7にも正式に対応したので、手順がだいぶ変わりました。
詳細は「CentOS7環境にPowerShell CoreとVMware PowerCLIをインストール」に記載しました。


2018/05/25 追記

時々アクセスがあるので、2018/05/25時点での状況を書いておきます。
・PowerCLIの公式ページは「https://code.vmware.com/web/dp/tool/vmware-powercli/
・PowerCLI Coreという単品はなくなり、PowerCLI本体でPowerShellとPowerShell Core双方に対応します。
・インストーラーによる配布はなくなり、「PowerShell Galleryでの配布」になりました。
PowerShellGalleryPowerShellGet moduleがインストールされている環境では「Install-Module -Name VMware.PowerCLI」を実行するだけでダウンロード&インストールを行います。
・PowerShell Core 6では標準でPowerShellGet moduleがインストールされているので、コマンドを実行するだけでした。
・パッケージ名は「VMware.PowerCLI」です。パッケージのインストール状況を確認する場合は「Get-Module -ListAvailable VMware*」でやります。


(以下、過去記事)
先日、インストールしてみたPowerShell Core(Power Shell Core 6.0をCentOS7で使ってみる)。

これ、もしかして、vSphere環境の操作を行うVMware PowerCLIが動かないかな?と思って調べてみると、開発中の「PowerCLI Core」というのがあるのを発見。

「October 17, 2016 v1.0」版では、かなりサポート範囲が狭い。まさに「Core」

Module Description PowerCLI for Windows PowerCLI Core
Core vCenter and ESXi Cmdlets
VDS vSphere Distributed Switch Cmdlets
Storage Storage Cmdlets ×
License License View Cmdlets ×
VUM Update Manager Cmdlets ×
Auto Deploy Auto Deploy Cmdlets ×
Image Builder Image Builder Cmdletes ×
VCD vCloud Director Cmdlets ×
vCloud Air vCloud Air Cmdlets ×
Content Library COntent Library Cmdlets ×

さて、インストール。

1. PowerCLI CoreからPowerCLI_Core.zipを入手
ファイルを展開し、中にある、PowerCLI.ViCore.zipとPowerCLI.Vds.zipを適当な場所に置く。
(今回は~/work/に置いた)

2. powershell Core上で「$env:PSModulePath」を実行し、モジュールを読み込むディレクトリを確認

# powershell "$env:PSModulePath"
:PSModulePath : The term ':PSModulePath' is not recognized as the name of a cmd
let, function, script file, or operable program. Check the spelling of the name
, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ :PSModulePath
+ ~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (:PSModulePath:String) [], Comma
   ndNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException
#

ん?

# powershell
PowerShell
Copyright (C) 2016 Microsoft Corporation. All rights reserved.

PS /root> $env:PSModulePath
PS /root> exit
#

どうやら、環境変数「PSModulePath」が定義されていないらしい。

3. 個人用のModuleインストール先として「~/.local/share/powershell/Modules」を作成

# mkdir -p ~/.local/share/powershell/Modules
#

4. 作成したディレクトリ内にPowerCLI.ViCore.zipとPowerCLI.Vds.zipを展開

# cd ~/.local/share/powershell/Modules
# unzip ~/work/PowerCLI.ViCore.zip
Archive:  ~/work/PowerCLI.ViCore.zip
  inflating: PowerCLI.ViCore/ComponentDescriptor-VMware.VimAutomation.Vds.xml
  inflating: PowerCLI.ViCore/ComponentDescriptor-VMware.VimAutomation.ViCore.Cmdlets.xml
  inflating: PowerCLI.ViCore/ComponentDescriptor-VMware.VimAutomation.ViCore.xml
  inflating: PowerCLI.ViCore/ICSharpCode.SharpZipLib.Tar.dll
  inflating: PowerCLI.ViCore/ICSharpCode.SharpZipLib.Tar.pdb
  inflating: PowerCLI.ViCore/Initialize.ps1
  inflating: PowerCLI.ViCore/InternalVimService50.dll
  inflating: PowerCLI.ViCore/InventoryService55.dll
  inflating: PowerCLI.ViCore/log4net.dll
  inflating: PowerCLI.ViCore/Newtonsoft.Json.dll
  inflating: PowerCLI.ViCore/phclient.dll
  inflating: PowerCLI.ViCore/PowerCLI.ViCore.psd1
  inflating: PowerCLI.ViCore/System.Drawing.Primitives.dll
  inflating: PowerCLI.ViCore/System.Management.Automation.dll
  inflating: PowerCLI.ViCore/System.Net.WebSockets.Client.dll
  inflating: PowerCLI.ViCore/System.Net.WebSockets.dll
  inflating: PowerCLI.ViCore/System.Runtime.Serialization.Formatters.dll
  inflating: PowerCLI.ViCore/VimService.dll
  inflating: PowerCLI.ViCore/VMware.AspNet.WebApi.Client.dll
  inflating: PowerCLI.ViCore/VMware.AspNet.WebApi.Client.pdb
  inflating: PowerCLI.ViCore/VMware.Binding.Ls2.dll
  inflating: PowerCLI.ViCore/VMware.Binding.Ls2.pdb
  inflating: PowerCLI.ViCore/VMware.Binding.Wcf.dll
  inflating: PowerCLI.ViCore/VMware.Binding.Wcf.pdb
  inflating: PowerCLI.ViCore/VMware.System.Private.ServiceModel.dll
  inflating: PowerCLI.ViCore/VMware.Vim.dll
  inflating: PowerCLI.ViCore/VMware.Vim.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Ceip.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Ceip.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Common.Interop.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Common.Interop.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Common.Types.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Common.Types.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Common.Util10.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Common.Util10.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Common.Util10Ps.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Common.Util10Ps.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Format.ps1xml
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Sdk.Impl.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Sdk.Impl.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Sdk.Interop.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Sdk.Interop.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Sdk.Types.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Sdk.Types.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Sdk.Util10.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Sdk.Util10.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Sdk.Util10Ps.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Sdk.Util10Ps.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Vds.Impl.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Vds.Impl.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Vds.Interop.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Vds.Interop.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Vds.Types.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.Vds.Types.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.ViCore.Cmdlets.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.ViCore.Cmdlets.dll-Help.xml
  inflating: PowerCLI.ViCore/VMware.VimAutomation.ViCore.Cmdlets.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.ViCore.Impl.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.ViCore.Impl.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.ViCore.Interop.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.ViCore.Interop.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.ViCore.Types.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.ViCore.Types.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.ViCore.Util10.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.ViCore.Util10.pdb
  inflating: PowerCLI.ViCore/VMware.VimAutomation.ViCore.Util10Ps.dll
  inflating: PowerCLI.ViCore/VMware.VimAutomation.ViCore.Util10Ps.pdb
  inflating: PowerCLI.ViCore/Scripts/GetVmGuestNetworkInterface_LinuxGuest
  inflating: PowerCLI.ViCore/Scripts/GetVmGuestNetworkInterface_windows7Server64Guest.bat
  inflating: PowerCLI.ViCore/Scripts/GetVmGuestNetworkInterface_windows7_64Guest.bat
  inflating: PowerCLI.ViCore/Scripts/GetVmGuestNetworkInterface_WindowsGuest.bat
  inflating: PowerCLI.ViCore/Scripts/GetVMGuestRoute_LinuxGuest
  inflating: PowerCLI.ViCore/Scripts/GetVMGuestRoute_WindowsGuest.bat
  inflating: PowerCLI.ViCore/Scripts/GuestDiskExpansion_LinuxGuest
  inflating: PowerCLI.ViCore/Scripts/GuestDiskExpansion_rhel5Guest
  inflating: PowerCLI.ViCore/Scripts/GuestDiskExpansion_WindowsGuest.bat
  inflating: PowerCLI.ViCore/Scripts/GuestDiskExpansion_winXPProGuest.bat
  inflating: PowerCLI.ViCore/Scripts/NewVMGuestRoute_LinuxGuest
  inflating: PowerCLI.ViCore/Scripts/NewVMGuestRoute_WindowsGuest.bat
  inflating: PowerCLI.ViCore/Scripts/RemoveVMGuestRoute_LinuxGuest
  inflating: PowerCLI.ViCore/Scripts/RemoveVMGuestRoute_WindowsGuest.bat
  inflating: PowerCLI.ViCore/Scripts/SetVMGuestNetworkInterface_LinuxGuest
  inflating: PowerCLI.ViCore/Scripts/SetVMGuestNetworkInterface_windows7Server64Guest.bat
  inflating: PowerCLI.ViCore/Scripts/SetVMGuestNetworkInterface_windows7_64Guest.bat
  inflating: PowerCLI.ViCore/Scripts/SetVMGuestNetworkInterface_WindowsGuest.bat
# unzip ~/work/PowerCLI.Vds.zip
Archive:  ~/work/PowerCLI.Vds.zip
  inflating: PowerCLI.Vds/ComponentDescriptor-VMware.VimAutomation.Vds.Commands.xml
  inflating: PowerCLI.Vds/Initialize-VMware_VimAutomation_Vds.ps1
  inflating: PowerCLI.Vds/PowerCLI.Vds.psd1
  inflating: PowerCLI.Vds/VMware.VimAutomation.Vds.Commands.dll
  inflating: PowerCLI.Vds/VMware.VimAutomation.Vds.Commands.dll-Help.xml
  inflating: PowerCLI.Vds/VMware.VimAutomation.Vds.Commands.pdb
  inflating: PowerCLI.Vds/VMware.VimAutomation.Vds.Format.ps1xml
# ls -F
PowerCLI.Vds/  PowerCLI.ViCore/
#

5. PowerShell上でモジュールが認識されていることを確認
「Get-Module -ListAvailable」の出力結果内に「PowerCLI.ViCore」と「PowerCLI.Vds」があることを確認。

# powershell
PowerShell
Copyright (C) 2016 Microsoft Corporation. All rights reserved.

PS /root/work> $env:PSModulePath
PS /root/work> Get-Module -ListAvailable PowerCLI*


    Directory: /root/.local/share/powershell/Modules


ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------
Binary     1.21       PowerCLI.Vds
Binary     1.21       PowerCLI.ViCore                     HookGetViewAutoCom...


PS /root/work>

6. 上記のモジュールを読み込み利用可能状態とする

PS /root/work> Get-Module -ListAvailable PowerCLI* | Import-Module
PS /root/work>

(モジュール名がPowerCLIと異なるため注意。どちらでも動かすやり方→「PowerCLIとPowerCLI Coreの双方で動くPowerShellスクリプトの作り方」)

7. vCenterへの接続テストをしてみる

PS /root/work> Connect-VIServer -Server サーバ名 -User ユーザ名 -Password "パスワード"
Connect-VIServer : 2017/02/22 17:40:20  Connect-VIServer                The libcurl library in
 use (7.29.0) and its SSL backend ("NSS/3.21 Basic ECC") do not support custom
handling of certificates. A libcurl built with OpenSSL is required.
At line:1 char:1
+ Connect-VIServer -Server サーバ名 -User ユーザ名 -Password "パスワード"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Connect-VIServer], ViError
    + FullyQualifiedErrorId : Client20_ConnectivityServiceImpl_Reconnect_Excep
   tion,VMware.VimAutomation.ViCore.Cmdlets.Commands.ConnectVIServer

PS /root/work>

手順にある証明書の問題を無視する設定を飛ばしたせいかな?と次を実施。

8. 証明書の問題を無視する設定を実施
手順書では「Set-PowerCLIConfiguration -InvalidCertificateAction Ignore」、プロンプトを出したくないのであれば、「Set-PowerCLIConfiguration -InvalidCertificateAction Ignore -Confirm:$false」を実行

PS /root/work> Set-PowerCLIConfiguration -InvalidCertificateAction Ignore

Perform operation?
Performing operation 'Update PowerCLI configuration.'?
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help
(default is "Y"):y

Scope    ProxyPolicy     DefaultVIServerMode InvalidCertificateAction  DisplayD
                                                                       eprecati
                                                                       onWarnin
                                                                       gs
-----    -----------     ------------------- ------------------------  --------
Session  UseSystemProxy  Multiple            Ignore                    True
User                                         Ignore
AllUsers


PS /root/work> Connect-VIServer -Server サーバ名 -User ユーザ名 -Password "パスワード"

Connect-VIServer : 2017/02/22 17:43:23  Connect-VIServer                The libcurl library in
 use (7.29.0) and its SSL backend ("NSS/3.21 Basic ECC") do not support custom
handling of certificates. A libcurl built with OpenSSL is required.
At line:1 char:1
+ Connect-VIServer -Server サーバ名 -User ユーザ名 -Password "パスワード"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Connect-VIServer], ViError
    + FullyQualifiedErrorId : Client20_ConnectivityServiceImpl_Reconnect_Excep
   tion,VMware.VimAutomation.ViCore.Cmdlets.Commands.ConnectVIServer

PS /root/work>

あれ?
証明書を無視するという問題ではなかった模様。

調べるとGithubのPowerShell Issue#2511と同じ状況
On CentOS Powershell uses the system libcurl that does not support custom SSL certificate validation #2511
現時点では、「CERN CentOS 7」に含まれている「libcurl-openssl」をインストールすると回避できるらしい。

CERN CentOS7を利用する回避手順
(1) 標準状態のCentOS7での「libcurl」関連パッケージの状況を確認

# yum search libcurl
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
============================= N/S matched: libcurl =============================
libcurl-devel.i686 : Files needed for building applications with libcurl
libcurl-devel.x86_64 : Files needed for building applications with libcurl
libcurl.i686 : A library for getting files from web servers
libcurl.x86_64 : A library for getting files from web servers
perl-WWW-Curl.x86_64 : Perl extension interface for libcurl
python-pycurl.x86_64 : A Python interface to libcurl

  Name and summary matches only, use "search all" for everything.
#

(2) CERN CentOS 7のレポジトリ設定が含まれるcentos-release-~cern.rpmを取得
http://linuxsoft.cern.ch/cern/centos/7/cern/x86_64/Packages/から「centos-release-~.el7.cern.x86_64.rpm」の一番新しいものをダウンロード

(3) rpmファイルを展開し、CentOS-CERN.repoファイルを入手
「rpm2cpio centos-release-~.el7.cern.x86_64.rpm | cpio -ivd」で展開すると「./etc/yum.repos.d/CentOS-CERN.repo」などが作成される
2017/02/22の段階でのCentOS-CERN.repoファイルは下記の内容だった。

# CentOS-CERN.repo
#
# CERN CentOS 7 uses local repositories at http://linuxsoft.cern.ch distribution service
#

[cern]
name=CentOS-$releasever - CERN
baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/cern/$basearch/
gpgcheck=1
enabled=1
protect=1
priority=5
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern

[cern-testing]
name=CentOS-$releasever - CERN Testing
baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/cern-testing/$basearch/
gpgcheck=1
enabled=0
protect=1
priority=5
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern

[cernonly]
name=CentOS-$releasever - CERN Only
baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/cernonly/$basearch/
gpgcheck=1
enabled=0
protect=1
priority=5
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern

[cernonly-testing]
name=CentOS-$releasever - CERN Only Testing
baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/cernonly-testing/$basearch/
gpgcheck=1
enabled=0
protect=1
priority=5
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern

[cern-debug]
name=CentOS-7 - CERN - Debuginfo
baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/cern/Debug/$basearch/
gpgcheck=1
enabled=0
protect=1
priority=5
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern

[cernonly-debug]
name=CentOS-7 - CERN Only - Debuginfo
baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/cernonly/Debug/$basearch/
gpgcheck=1
enabled=0
protect=1
priority=5
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern

[cern-source]
name=CentOS-$releasever - CERN Sources
baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/cern/Sources/
gpgcheck=1
enabled=0
protect=1
priority=5
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern

[cernonly-source]
name=CentOS-$releasever - CERN Only Sources
baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/cernonly/Sources/
gpgcheck=1
enabled=0
enabled=0
protect=1
priority=5
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern

[cern-testing-source]
name=CentOS-$releasever - CERN Testing Sources
baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/cern-testing/Sources/
gpgcheck=1
enabled=0
protect=1
priority=5
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern

[cernonly-testing-source]
name=CentOS-$releasever - CERN Only Testing Sources
baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/cernonly-testing/Sources/
gpgcheck=1
enabled=0
enabled=0
protect=1
priority=5
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern

(4) ./etc/yum.repos.d/CentOS-CERN.repoを「/etc/yum.repos.d/」にコピー
(5) ./etc/pki/rpm-gpg/RPM-GPG-KEY-cernを「/etc/pki/rpm-gpg/」にコピー

(6) CERNレポジトリが登録されている状態で「libcurl」関連を検索

# yum search libcurl
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
============================= N/S matched: libcurl =============================
libcurl-devel.i686 : Files needed for building applications with libcurl
libcurl-devel.x86_64 : Files needed for building applications with libcurl
libcurl-openssl-devel.x86_64 : Files needed for building applications with
                             : libcurl-openssl
libcurl.i686 : A library for getting files from web servers
libcurl.x86_64 : A library for getting files from web servers
libcurl-openssl.x86_64 : A library for getting files from web servers
perl-WWW-Curl.x86_64 : Perl extension interface for libcurl
python-pycurl.x86_64 : A Python interface to libcurl

  Name and summary matches only, use "search all" for everything.
#

(7) libcurl-opensslをインストール

# yum install libcurl-openssl
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ libcurl-openssl.x86_64 0:7.51.0-2.1.el7.cern を インストール
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
 Package               アーキテクチャー
                                    バージョン                 リポジトリー
                                                                           容量
================================================================================
インストール中:
 libcurl-openssl       x86_64       7.51.0-2.1.el7.cern        cern       215 k

トランザクションの要約
================================================================================
インストール  1 パッケージ

合計容量: 215 k
インストール容量: 446 k
Is this ok [y/d/N]: y
Downloading packages:
警告: /var/cache/yum/x86_64/7/cern/packages/libcurl-openssl-7.51.0-2.1.el7.cern.x86_64.rpm: ヘッダー V4 DSA/SHA1 Signature、鍵 ID 1d1e034b: NOKEY
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern から鍵を取得中です。
Importing GPG key 0x1D1E034B:
 Userid     : "CERN Linux Support (RPM signing key for CERN Linux Support) <linux.support@cern.ch>"
 Fingerprint: 86b5 5b37 12c1 e4a4 13c9 60e6 5e03 fde5 1d1e 034b
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-cern
上記の処理を行います。よろしいでしょうか? [y/N]y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
警告: RPMDB は yum 以外で変更されました。
  インストール中          : libcurl-openssl-7.51.0-2.1.el7.cern.x86_64      1/1
  検証中                  : libcurl-openssl-7.51.0-2.1.el7.cern.x86_64      1/1

インストール:
  libcurl-openssl.x86_64 0:7.51.0-2.1.el7.cern

完了しました!
#

(8)普段の運用に差し支える可能性があるので普段はCERNレポジトリを無効化する
「/etc/yum.repos.d/CentOS-CERN.repo」内にある「enabled=1」を「enabled=0」に変更する

(9) libcurl-opensslが/opt/shibboleth/lib64/にインストールされていることを確認

# ls /opt/shibboleth/lib64/
libcurl.so.4  libcurl.so.4.4.0
#

(10) LD_LIBRARY_PATHに「/opt/shibboleth/lib64/」を追加

# export LD_LIBRARY_PATH=/opt/shibboleth/lib64/:$LD_LIBRARY_PATH
#

9. 改めてPowerShellを起動しなおして接続

# powershell
PowerShell
Copyright (C) 2016 Microsoft Corporation. All rights reserved.

PS /root> Get-Module -ListAvailable PowerCLI* | Import-Module
PS /root> Connect-VIServer -Server サーバ名 -User ユーザ名 -Password "パスワード"

Name                           Port  User
----                           ----  ----
サーバ名                       443   ユーザ名


PS /root>

問題なく成功

Get-VMとかも通常のPowerCLIと同様に可能

PS /root> Get-VM

Name                 PowerState Num CPUs MemoryGB
----                 ---------- -------- --------
仮想マシン名         PoweredOn  2        8.000


PS /root>

ということで、PowerCLI COREで利用可能なコマンドレットの一覧。

PS /root> Get-Module

ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------
Script     0.0        Initialize
Script     0.0        Initialize-VMware_VimAutomation_Vds
Manifest   3.1.0.0    Microsoft.PowerShell.Management     {Add-Content, Clea...
Manifest   3.1.0.0    Microsoft.PowerShell.Utility        {Add-Member, Add-T...
Binary     1.21       PowerCLI.Vds                        {Add-VDSwitchPhysi...
Binary     1.21       PowerCLI.ViCore                     {Add-PassthroughDe...
Script     1.2        PSReadLine                          {Get-PSReadlineKey...


PS /root> (Get-Module PowerCLI.ViCore).ExportedCommands

Key                                        Value
---                                        -----
Add-PassthroughDevice                      Add-PassthroughDevice
Add-VirtualSwitchPhysicalNetworkAdapter    Add-VirtualSwitchPhysicalNetworkA...
Add-VMHost                                 Add-VMHost
Add-VMHostNtpServer                        Add-VMHostNtpServer
Connect-VIServer                           Connect-VIServer
Copy-DatastoreItem                         Copy-DatastoreItem
Copy-HardDisk                              Copy-HardDisk
Copy-VMGuestFile                           Copy-VMGuestFile
Disconnect-VIServer                        Disconnect-VIServer
Dismount-Tools                             Dismount-Tools
Export-VApp                                Export-VApp
Export-VMHostProfile                       Export-VMHostProfile
Format-VMHostDiskPartition                 Format-VMHostDiskPartition
Get-AdvancedSetting                        Get-AdvancedSetting
Get-AlarmAction                            Get-AlarmAction
Get-AlarmActionTrigger                     Get-AlarmActionTrigger
Get-AlarmDefinition                        Get-AlarmDefinition
Get-Annotation                             Get-Annotation
Get-CDDrive                                Get-CDDrive
Get-Cluster                                Get-Cluster
Get-ContentLibraryItem                     Get-ContentLibraryItem
Get-CustomAttribute                        Get-CustomAttribute
Get-Datacenter                             Get-Datacenter
Get-Datastore                              Get-Datastore
Get-DatastoreCluster                       Get-DatastoreCluster
Get-DrsRecommendation                      Get-DrsRecommendation
Get-DrsRule                                Get-DrsRule
Get-EsxCli                                 Get-EsxCli
Get-EsxTop                                 Get-EsxTop
Get-FloppyDrive                            Get-FloppyDrive
Get-Folder                                 Get-Folder
Get-HAPrimaryVMHost                        Get-HAPrimaryVMHost
Get-HardDisk                               Get-HardDisk
Get-Inventory                              Get-Inventory
Get-IScsiHbaTarget                         Get-IScsiHbaTarget
Get-Log                                    Get-Log
Get-LogType                                Get-LogType
Get-NetworkAdapter                         Get-NetworkAdapter
Get-NicTeamingPolicy                       Get-NicTeamingPolicy
Get-OSCustomizationNicMapping              Get-OSCustomizationNicMapping
Get-OSCustomizationSpec                    Get-OSCustomizationSpec
Get-OvfConfiguration                       Get-OvfConfiguration
Get-PassthroughDevice                      Get-PassthroughDevice
Get-PowerCLIConfiguration                  Get-PowerCLIConfiguration
Get-PowerCLIVersion                        Get-PowerCLIVersion
Get-ResourcePool                           Get-ResourcePool
Get-ScsiController                         Get-ScsiController
Get-ScsiLun                                Get-ScsiLun
Get-ScsiLunPath                            Get-ScsiLunPath
Get-SecurityPolicy                         Get-SecurityPolicy
Get-Snapshot                               Get-Snapshot
Get-Stat                                   Get-Stat
Get-StatInterval                           Get-StatInterval
Get-StatType                               Get-StatType
Get-Tag                                    Get-Tag
Get-TagAssignment                          Get-TagAssignment
Get-TagCategory                            Get-TagCategory
Get-Task                                   Get-Task
Get-Template                               Get-Template
Get-UsbDevice                              Get-UsbDevice
Get-VApp                                   Get-VApp
Get-VIAccount                              Get-VIAccount
Get-VIEvent                                Get-VIEvent
Get-View                                   Get-View
Get-VIObjectByVIView                       Get-VIObjectByVIView
Get-VIPermission                           Get-VIPermission
Get-VIPrivilege                            Get-VIPrivilege
Get-VIProperty                             Get-VIProperty
Get-VIRole                                 Get-VIRole
Get-VirtualPortGroup                       Get-VirtualPortGroup
Get-VirtualSwitch                          Get-VirtualSwitch
Get-VM                                     Get-VM
Get-VMGuest                                Get-VMGuest
Get-VMGuestNetworkInterface                Get-VMGuestNetworkInterface
Get-VMGuestRoute                           Get-VMGuestRoute
Get-VMHost                                 Get-VMHost
Get-VMHostAccount                          Get-VMHostAccount
Get-VMHostAdvancedConfiguration            Get-VMHostAdvancedConfiguration
Get-VMHostAuthentication                   Get-VMHostAuthentication
Get-VMHostAvailableTimeZone                Get-VMHostAvailableTimeZone
Get-VMHostDiagnosticPartition              Get-VMHostDiagnosticPartition
Get-VMHostDisk                             Get-VMHostDisk
Get-VMHostDiskPartition                    Get-VMHostDiskPartition
Get-VMHostFirewallDefaultPolicy            Get-VMHostFirewallDefaultPolicy
Get-VMHostFirewallException                Get-VMHostFirewallException
Get-VMHostFirmware                         Get-VMHostFirmware
Get-VMHostHardware                         Get-VMHostHardware
Get-VMHostHba                              Get-VMHostHba
Get-VMHostModule                           Get-VMHostModule
Get-VMHostNetwork                          Get-VMHostNetwork
Get-VMHostNetworkAdapter                   Get-VMHostNetworkAdapter
Get-VMHostNtpServer                        Get-VMHostNtpServer
Get-VMHostPatch                            Get-VMHostPatch
Get-VMHostPciDevice                        Get-VMHostPciDevice
Get-VMHostProfile                          Get-VMHostProfile
Get-VMHostProfileRequiredInput             Get-VMHostProfileRequiredInput
Get-VMHostRoute                            Get-VMHostRoute
Get-VMHostService                          Get-VMHostService
Get-VMHostSnmp                             Get-VMHostSnmp
Get-VMHostStartPolicy                      Get-VMHostStartPolicy
Get-VMHostStorage                          Get-VMHostStorage
Get-VMHostSysLogServer                     Get-VMHostSysLogServer
Get-VMQuestion                             Get-VMQuestion
Get-VMResourceConfiguration                Get-VMResourceConfiguration
Get-VMStartPolicy                          Get-VMStartPolicy
Import-VApp                                Import-VApp
Import-VMHostProfile                       Import-VMHostProfile
Install-VMHostPatch                        Install-VMHostPatch
Invoke-DrsRecommendation                   Invoke-DrsRecommendation
Invoke-VMHostProfile                       Invoke-VMHostProfile
Invoke-VMScript                            Invoke-VMScript
Mount-Tools                                Mount-Tools
Move-Cluster                               Move-Cluster
Move-Datacenter                            Move-Datacenter
Move-Datastore                             Move-Datastore
Move-Folder                                Move-Folder
Move-HardDisk                              Move-HardDisk
Move-Inventory                             Move-Inventory
Move-ResourcePool                          Move-ResourcePool
Move-Template                              Move-Template
Move-VApp                                  Move-VApp
Move-VM                                    Move-VM
Move-VMHost                                Move-VMHost
New-AdvancedSetting                        New-AdvancedSetting
New-AlarmAction                            New-AlarmAction
New-AlarmActionTrigger                     New-AlarmActionTrigger
New-CDDrive                                New-CDDrive
New-Cluster                                New-Cluster
New-CustomAttribute                        New-CustomAttribute
New-Datacenter                             New-Datacenter
New-Datastore                              New-Datastore
New-DatastoreCluster                       New-DatastoreCluster
New-DrsRule                                New-DrsRule
New-FloppyDrive                            New-FloppyDrive
New-Folder                                 New-Folder
New-HardDisk                               New-HardDisk
New-IScsiHbaTarget                         New-IScsiHbaTarget
New-NetworkAdapter                         New-NetworkAdapter
New-OSCustomizationNicMapping              New-OSCustomizationNicMapping
New-OSCustomizationSpec                    New-OSCustomizationSpec
New-ResourcePool                           New-ResourcePool
New-ScsiController                         New-ScsiController
New-Snapshot                               New-Snapshot
New-StatInterval                           New-StatInterval
New-Tag                                    New-Tag
New-TagAssignment                          New-TagAssignment
New-TagCategory                            New-TagCategory
New-Template                               New-Template
New-VApp                                   New-VApp
New-VIPermission                           New-VIPermission
New-VIProperty                             New-VIProperty
New-VIRole                                 New-VIRole
New-VirtualPortGroup                       New-VirtualPortGroup
New-VirtualSwitch                          New-VirtualSwitch
New-VM                                     New-VM
New-VMGuestRoute                           New-VMGuestRoute
New-VMHostAccount                          New-VMHostAccount
New-VMHostNetworkAdapter                   New-VMHostNetworkAdapter
New-VMHostProfile                          New-VMHostProfile
New-VMHostRoute                            New-VMHostRoute
Open-VMConsoleWindow                       Open-VMConsoleWindow
Remove-AdvancedSetting                     Remove-AdvancedSetting
Remove-AlarmAction                         Remove-AlarmAction
Remove-AlarmActionTrigger                  Remove-AlarmActionTrigger
Remove-CDDrive                             Remove-CDDrive
Remove-Cluster                             Remove-Cluster
Remove-CustomAttribute                     Remove-CustomAttribute
Remove-Datacenter                          Remove-Datacenter
Remove-Datastore                           Remove-Datastore
Remove-DatastoreCluster                    Remove-DatastoreCluster
Remove-DrsRule                             Remove-DrsRule
Remove-FloppyDrive                         Remove-FloppyDrive
Remove-Folder                              Remove-Folder
Remove-HardDisk                            Remove-HardDisk
Remove-Inventory                           Remove-Inventory
Remove-IScsiHbaTarget                      Remove-IScsiHbaTarget
Remove-NetworkAdapter                      Remove-NetworkAdapter
Remove-OSCustomizationNicMapping           Remove-OSCustomizationNicMapping
Remove-OSCustomizationSpec                 Remove-OSCustomizationSpec
Remove-PassthroughDevice                   Remove-PassthroughDevice
Remove-ResourcePool                        Remove-ResourcePool
Remove-Snapshot                            Remove-Snapshot
Remove-StatInterval                        Remove-StatInterval
Remove-Tag                                 Remove-Tag
Remove-TagAssignment                       Remove-TagAssignment
Remove-TagCategory                         Remove-TagCategory
Remove-Template                            Remove-Template
Remove-UsbDevice                           Remove-UsbDevice
Remove-VApp                                Remove-VApp
Remove-VIPermission                        Remove-VIPermission
Remove-VIProperty                          Remove-VIProperty
Remove-VIRole                              Remove-VIRole
Remove-VirtualPortGroup                    Remove-VirtualPortGroup
Remove-VirtualSwitch                       Remove-VirtualSwitch
Remove-VirtualSwitchPhysicalNetworkAdapter Remove-VirtualSwitchPhysicalNetwo...
Remove-VM                                  Remove-VM
Remove-VMGuestRoute                        Remove-VMGuestRoute
Remove-VMHost                              Remove-VMHost
Remove-VMHostAccount                       Remove-VMHostAccount
Remove-VMHostNetworkAdapter                Remove-VMHostNetworkAdapter
Remove-VMHostNtpServer                     Remove-VMHostNtpServer
Remove-VMHostProfile                       Remove-VMHostProfile
Remove-VMHostRoute                         Remove-VMHostRoute
Restart-VM                                 Restart-VM
Restart-VMGuest                            Restart-VMGuest
Restart-VMHost                             Restart-VMHost
Restart-VMHostService                      Restart-VMHostService
Set-AdvancedSetting                        Set-AdvancedSetting
Set-AlarmDefinition                        Set-AlarmDefinition
Set-Annotation                             Set-Annotation
Set-CDDrive                                Set-CDDrive
Set-Cluster                                Set-Cluster
Set-CustomAttribute                        Set-CustomAttribute
Set-Datacenter                             Set-Datacenter
Set-Datastore                              Set-Datastore
Set-DatastoreCluster                       Set-DatastoreCluster
Set-DrsRule                                Set-DrsRule
Set-FloppyDrive                            Set-FloppyDrive
Set-Folder                                 Set-Folder
Set-HardDisk                               Set-HardDisk
Set-IScsiHbaTarget                         Set-IScsiHbaTarget
Set-NetworkAdapter                         Set-NetworkAdapter
Set-NicTeamingPolicy                       Set-NicTeamingPolicy
Set-OSCustomizationNicMapping              Set-OSCustomizationNicMapping
Set-OSCustomizationSpec                    Set-OSCustomizationSpec
Set-PowerCLIConfiguration                  Set-PowerCLIConfiguration
Set-ResourcePool                           Set-ResourcePool
Set-ScsiController                         Set-ScsiController
Set-ScsiLun                                Set-ScsiLun
Set-ScsiLunPath                            Set-ScsiLunPath
Set-SecurityPolicy                         Set-SecurityPolicy
Set-Snapshot                               Set-Snapshot
Set-StatInterval                           Set-StatInterval
Set-Tag                                    Set-Tag
Set-TagCategory                            Set-TagCategory
Set-Template                               Set-Template
Set-VApp                                   Set-VApp
Set-VIPermission                           Set-VIPermission
Set-VIRole                                 Set-VIRole
Set-VirtualPortGroup                       Set-VirtualPortGroup
Set-VirtualSwitch                          Set-VirtualSwitch
Set-VM                                     Set-VM
Set-VMGuestNetworkInterface                Set-VMGuestNetworkInterface
Set-VMHost                                 Set-VMHost
Set-VMHostAccount                          Set-VMHostAccount
Set-VMHostAdvancedConfiguration            Set-VMHostAdvancedConfiguration
Set-VMHostAuthentication                   Set-VMHostAuthentication
Set-VMHostDiagnosticPartition              Set-VMHostDiagnosticPartition
Set-VMHostFirewallDefaultPolicy            Set-VMHostFirewallDefaultPolicy
Set-VMHostFirewallException                Set-VMHostFirewallException
Set-VMHostFirmware                         Set-VMHostFirmware
Set-VMHostHba                              Set-VMHostHba
Set-VMHostModule                           Set-VMHostModule
Set-VMHostNetwork                          Set-VMHostNetwork
Set-VMHostNetworkAdapter                   Set-VMHostNetworkAdapter
Set-VMHostProfile                          Set-VMHostProfile
Set-VMHostRoute                            Set-VMHostRoute
Set-VMHostService                          Set-VMHostService
Set-VMHostSnmp                             Set-VMHostSnmp
Set-VMHostStartPolicy                      Set-VMHostStartPolicy
Set-VMHostStorage                          Set-VMHostStorage
Set-VMHostSysLogServer                     Set-VMHostSysLogServer
Set-VMQuestion                             Set-VMQuestion
Set-VMResourceConfiguration                Set-VMResourceConfiguration
Set-VMStartPolicy                          Set-VMStartPolicy
Start-VApp                                 Start-VApp
Start-VM                                   Start-VM
Start-VMHost                               Start-VMHost
Start-VMHostService                        Start-VMHostService
Stop-Task                                  Stop-Task
Stop-VApp                                  Stop-VApp
Stop-VM                                    Stop-VM
Stop-VMGuest                               Stop-VMGuest
Stop-VMHost                                Stop-VMHost
Stop-VMHostService                         Stop-VMHostService
Suspend-VM                                 Suspend-VM
Suspend-VMGuest                            Suspend-VMGuest
Suspend-VMHost                             Suspend-VMHost
Test-VMHostProfileCompliance               Test-VMHostProfileCompliance
Test-VMHostSnmp                            Test-VMHostSnmp
Update-Tools                               Update-Tools
Wait-Task                                  Wait-Task
Wait-Tools                                 Wait-Tools


PS /root> (Get-Module PowerCLI.Vds).ExportedCommands

Key                                   Value
---                                   -----
Add-VDSwitchPhysicalNetworkAdapter    Add-VDSwitchPhysicalNetworkAdapter
Add-VDSwitchVMHost                    Add-VDSwitchVMHost
Export-VDPortGroup                    Export-VDPortGroup
Export-VDSwitch                       Export-VDSwitch
Get-VDBlockedPolicy                   Get-VDBlockedPolicy
Get-VDPort                            Get-VDPort
Get-VDPortgroup                       Get-VDPortgroup
Get-VDPortgroupOverridePolicy         Get-VDPortgroupOverridePolicy
Get-VDSecurityPolicy                  Get-VDSecurityPolicy
Get-VDSwitch                          Get-VDSwitch
Get-VDSwitchPrivateVlan               Get-VDSwitchPrivateVlan
Get-VDTrafficShapingPolicy            Get-VDTrafficShapingPolicy
Get-VDUplinkLacpPolicy                Get-VDUplinkLacpPolicy
Get-VDUplinkTeamingPolicy             Get-VDUplinkTeamingPolicy
New-VDPortgroup                       New-VDPortgroup
New-VDSwitch                          New-VDSwitch
New-VDSwitchPrivateVlan               New-VDSwitchPrivateVlan
Remove-VDPortGroup                    Remove-VDPortGroup
Remove-VDSwitch                       Remove-VDSwitch
Remove-VDSwitchPhysicalNetworkAdapter Remove-VDSwitchPhysicalNetworkAdapter
Remove-VDSwitchPrivateVlan            Remove-VDSwitchPrivateVlan
Remove-VDSwitchVMHost                 Remove-VDSwitchVMHost
Set-VDBlockedPolicy                   Set-VDBlockedPolicy
Set-VDPort                            Set-VDPort
Set-VDPortgroup                       Set-VDPortgroup
Set-VDPortgroupOverridePolicy         Set-VDPortgroupOverridePolicy
Set-VDSecurityPolicy                  Set-VDSecurityPolicy
Set-VDSwitch                          Set-VDSwitch
Set-VDTrafficShapingPolicy            Set-VDTrafficShapingPolicy
Set-VDUplinkLacpPolicy                Set-VDUplinkLacpPolicy
Set-VDUplinkTeamingPolicy             Set-VDUplinkTeamingPolicy
Set-VDVlanConfiguration               Set-VDVlanConfiguration


PS /root>

GithubのPowerShell Issue#2511の関連を調べたら、「PowervRA」と「PowervRO」があるのを発見。
どちらもPowerShell Core対応である模様。

vSphere環境でCentOS7やUbuntu 16.04などをインストールするとコンソールが高解像度過ぎる


vSphere環境でCentOS7やUbuntu 16.04などをインストールすると、X-Windowを起動しないコンソール画面での解像度が高くて使いにくいという問題が発生しやすい。

せめて1024×800ぐらいに収まらないか・・・と思ったら設定はあった。

Adding video resolution modes to Windows guest operating systems (1003)
上記の日本語版KB「Windows ゲスト OS へのビデオ解像度モードの追加 (2078472)

高解像度にしたい場合は、上記にある手順をいろいろやらなければならないが、低解像度にしたい場合は、vmxファイルの直接編集の必要はなく、仮想マシンオプションの詳細にて「svga.maxWidth」と「svga.maxHeight」の値を追加するだけ良い。

仮想マシンの電源を停止した状態で、仮想マシンオプションの詳細を開き、svga.maxWidthを1024、svga.maxHeightを800で追加している。


2018/05/25 追記

なお、Hyper-Vの場合は、grubへの設定で対応する。
Changing Ubuntu Screen Resolution in a Hyper-V VM

上記はUbuntuの場合の例となっているが、RedHat/CentOSでも基本的には同じ
grubの設定に、「video=hyperv_fb:1024×800」を追加して解像度を指定する。という形になる。


2019/07/17追記

RHEL8のインストーラで発生する英語だと問題なかったのが、日本語にした途端画面外にはみ出る、ということへの対応について「vSphere上にRHEL8を日本語でインストールしようとするとインストーラがちゃんと表示されない」で記載しました。

まぁ、インストール時のカーネルオプションとして 「inst.resolution=1024×800」 を追加する、という話ですね。