タグ: WindowsServer2012

  • メモ:Windows Server 2012 R2はTLS1.3に対応していない

    メモとして。Windows Server 2012 R2、Windows Server 2016は、TLS 1.3に対応していない。TLS 1.2まで。

    TLS 1.3のリリースが、2018年8月10日にIETFが「RFC 8446」として公開したので、それよりも前のOSは対応していないのはしかたない。

    参考)

    https://learn.microsoft.com/en-us/answers/questions/874023/tls1-3-on-windows-2012-r2

    https://learn.microsoft.com/en-us/answers/questions/958442/how-to-enable-tls-1-3-in-windows-server-2016

  • ESENTエラーが発生して、ファイルサーバが突然使えなくなる。

    Windows Server 2012のファイルサーバの挙動がおかしいので、調べたら、下記のログがイベントログに残っていた。

    イベント 910, ESENT
    svchost (952)  ファイル "C:\Windows\system32\LogFiles\Sum\Svc.log" のオフセット 3334144 (0x000000000032e000) への 4096 (0x00001000) バイトの書き込み要求は 36 秒間成功しませんでした。この問題はハードウェアの障害が原因であると思われます。問題をより詳しく診断するには、ハードウェアの製造元に連絡してください。
    
    イベント 910, ESENT
    svchost (1212) データベース キャッシュ サイズの保守タスクに 60 秒かかりましたが完了していません。このため、パフォーマンスが大きく低下する可能性があります。 現在のキャッシュ サイズは、5 のバッファーであり、構成済みのキャッシュ制限 (ターゲットの 266 パーセント) を超えています。 キャッシュ サイズの保守によって、0 のバッファーが削除され、14408 回のフラッシュが試行され、0 のバッファーのフラッシュに成功しました。保守が起動されてから 191576 回実行されました。
    
    イベント 510, ESENT
    svchost (1212) ファイル "C:\Windows\system32\LogFiles\Sum\Current.mdb" のオフセット 937984 (0x00000000000e5000) から 4096 (0x00001000) バイトの要求を書き込むことに成功しましたが、OS によるサービスを受けるまでに異常に長い時間 (36 秒) がかかりました。さらに、このファイルへの 4 の他の I/O 要求も、この問題に関する最後のメッセージが 1259 秒前に投稿されてからサービスを受けるまでに以上に長い時間がかかりました。これはハードウェアに問題がある可能性があります。問題の診断についての詳細はハードウェア製造元に問い合わせてください。
    

    ファイルシステムの異常の可能性もあるので、検査(チェックディスク)したが異常なし。ハードウェア的なディスク障害もなし。

    これが発生していた原因は、Veeam Backupの動作によるバックアップの競合だった。バックアップの間、ずっと発生するわけではなく、なんらかのタイミングで、ログなどの書き込みなどがスタックしたときに、書き込みができずに、ファイル共有の部分が止まってしまうようだ。動作中のバックアップも同じ時間ではないが、遅れて失敗している。この競合が解消されれば、ファイルサーバにはアクセスできるようになることはわかった。しかし、解消される時間はわからないので、バックアップを止めるのがよいのだろうが、状況が発生してしまうと止められない(止めても停止できず、効果がない)。動作時間を工夫するなどの対応が必要。

  • Windows10 のPowershellの最大メモリサイズの変更

    Windows 10(およびWindows Server 2012, 2012 R2, 2016, 2019も同じ)でのPowershellの実行時の最大メモリ数の変更手順。Powershellを実行したときに、メモリを使いすぎたので、制限する。

    変更手順

    1. Powershellを管理者モードで起動する
    2. Powershellのバージョン確認する
      $PSversionTable
      ※Powershellが3.0以降の場合は、追加手順あり。
    3. Powershellのメモリ割り当てサイズの確認
      Get-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB
    4. 設定変更
      Set-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB 2048
    5. プラグインの確認(Ver3.0以降の場合は実行)
      ls WSMan:localhost\Plugin 
    6. プラグインのPowershellの割り当てサイズの確認(Ver3.0以降の場合は実行)
      Get-Item WSMan:localhost\Plugin\microsoft.powershell\Quotas\MaxConcurrentCommandsPerShell 
    7. プラグインのPowershellの割り当てサイズの変更(Ver3.0以降の場合は実行)
      Set-Item WSMan:localhost\Plugin\microsoft.powershell\Quotas\MaxConcurrentCommandsPerShell 2048
    8. 設定変更後WinRMの再起動
      Restart-Service WinRM
    9. 事後確認
      Get-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB
    10. 32bitのPowershellを管理者モードで起動する
    11. Powershellのメモリ割り当てサイズの確認
      Get-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB 
      ※もし、32bitのPowershellのメモリが変わっていない場合は、同じように変更する。

    作業ログ。

    PS C:\WINDOWS\system32> Get-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB
    
    
       WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Shell
    
    Type            Name                           SourceOfValue   Value
    ----            ----                           -------------   -----
    System.String   MaxMemoryPerShellMB                            2048
    
    
    PS C:\WINDOWS\system32> Set-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB 2048
    警告: 更新された構成は、プラグインあたりのクォータの値が 2048
    を超えるプラグインの操作に影響する可能性があります。登録されているすべてのプラグインの構成を確認し、影響を受けるプラグ
    インのプラグインあたりのクォータの値を変更してください。
    PS C:\WINDOWS\system32>
    PS C:\WINDOWS\system32>
    PS C:\WINDOWS\system32>
    PS C:\WINDOWS\system32>
    PS C:\WINDOWS\system32>
    PS C:\WINDOWS\system32> ls WSMan:localhost\Plugin
    
    
       WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin
    
    Type            Keys                                Name
    ----            ----                                ----
    Container       {Name=Event Forwarding Plugin}      Event Forwarding Plugin
    Container       {Name=microsoft.powershell}         microsoft.powershell
    Container       {Name=microsoft.powershell.workf... microsoft.powershell.workflow
    Container       {Name=microsoft.powershell32}       microsoft.powershell32
    Container       {Name=WMI Provider}                 WMI Provider
    
    
    PS C:\WINDOWS\system32> Get-Item WSMan:localhost\Plugin\microsoft.powershell\Quotas\MaxConcurrentCommandsPerShell
    
    
       WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin\microsoft.powershell\Quotas
    
    Type            Name                           SourceOfValue   Value
    ----            ----                           -------------   -----
    System.String   MaxConcurrentCommandsPerShell                  2147483647
    
    
    PS C:\WINDOWS\system32> Set-Item WSMan:localhost\Plugin\microsoft.powershell\Quotas\MaxConcurrentCommandsPerShell 2048
    警告: 構成の変更は、WinRM サービスを再起動しないと有効になりません。WinRM
    サービスを再起動するには次のコマンドを実行します: 'Restart-Service winrm'
    PS C:\WINDOWS\system32>
    PS C:\WINDOWS\system32>
    PS C:\WINDOWS\system32> Restart-Service winrm
    PS C:\WINDOWS\system32>
    

    参考
    https://tech.guitarrapc.com/entry/2013/08/02/000842

  • NTFS.SYSの場所とバージョンの調べ方

    WindowsのNTFSシステムで使っているファイルのバージョンを調べる必要があったので、その確認方法のメモ。

    NTFS.SYSの場所は、下記。Windows10, Windows Server 2012 R2, Windows Server 2012, Windows Server 2008 R2も同じだった。

    C:\Windows\System32\drivers\ntfs.sys
    

    バージョンの調べ方

    1. バージョンは、ntfs.sysを右クリックして、プロパティを開く。
    2. 詳細タブにあるファイルバージョンを確認する。
    3. 同じ場所でファイルの更新日なども確認できる。
  • NTFSのデッドロックに関するページ(メモ)

  • Windows Server 2012 R2のEOSL

    Windows Server 2012 R2のサポート期限(EOSL)は、2023年10月10日。 驚くことに、すでにメインストリームサポートが終わっている。

    製品ライフサイクル開始日メインストリームサポート終了日延長サポート終了日
    Windows Server 2012 R2 Standard2013/11/252018/10/092023/10/10
    Windows Server 2012 Standard2012/10/302018/10/092023/10/10

    参考URL: https://support.microsoft.com/ja-jp/lifecycle/search?alpha=windows%20server%202012

    なお、現在のWindows Server 2016のサポート期限はメインストリームサポートが2022年、延長サポートが2027年まで。

  • Windows Server 2012(無印)はIE10のみ

    Windows Server 2008 R2は、IE11が使用できるので、Windows Server 2012もIE11が使えると思ったが、IE10のみ。通常のIE10はMSのサポートが終了しているが、Windows Server 2012のIE10は、OSのサポートに従い2023年まで。なんとも、紛らわしい。

    http://www.atmarkit.co.jp/ait/articles/1503/11/news134.html

  • Windows Server 2012 の重複排除機能をOFFにしたときの対応

    Windows Server 2012 の重複排除機能を使っている状態から、OFFにしたときの問題と対応について。

    ◆問題

    Windows Server 2012(および2012 R2)にて、重複排除機能を使用した場合、
    開始時には自動的に重複排除の機能が動作するが、機能をOFFにしたときには
    重複排除されたままの状態である。
    放置しておいても、解除されるようにみえず、手動でコマンドを実行する対処が必要。

    ◆対応方法

    1. 重複排除機能を使用していたサーバにログオンする。
    2. Powershellを管理者モードで起動する。
    3. 次のコマンドレットを実行する
      Start-DedupJob (D: などのボリュームを指定) -Type Unoptimization
    4. 実行したコマンドレットの状態を確認する
      Get-DedupJob -Type Unoptimization
    5. 重複排除が終わるまで待つ。
      めちゃくちゃ時間がかかるはず。

    ◆動作させてみたところ

     PS C:\>
     PS C:\> Start-DedupJob -Volume D: -Type Unoptimization
     
     Type               ScheduleType       StartTime              Progress   State                  Volume
     ----               ------------       ---------              --------   -----                  ------
     Unoptimization     Manual                                    0 %        Queued                 D:
     
     
     PS C:\>
     PS C:\>
     PS C:\> Get-DedupJob -Type Unoptimization
     
     Type               ScheduleType       StartTime              Progress   State                  Volume
     ----               ------------       ---------              --------   -----                  ------
     Unoptimization     Manual             15:19                  0 %        Running                D:
     
     
     PS C:\>
     PS C:\>
    
  • Windows Server 2012 Datacenter EditionはVMware環境でも仮想サーバ台数無制限にライセンス適用できる

    Windows Server 2012 Datacenter Editionは、作成する仮想マシンの数が無制限というライセンスになっている。
    これは、Hyper-V上の話だけではなく、VMwareなどの仮想ハイパーバイザでも有効とのこと。

    かなり高額だが、Datacenter Editionを購入すれば、仮想サーバを作りたい放題になる。

    マイクロソフト仮想環境ライセンスガイドにも明記されている。

    企業にとってはお買い得なライセンス形態になっているね。