AMIはベースイメージで、既製品みたいなのがある。

ec2ホストを作る時、クイックスタートのカテゴリでwindowsを選んで作ると英語版になってまう。

aws

英語版のwindowsを日本語に変更するのって結構面倒なのと、windows updateにめっちゃ時間かかる。

AMI選び

ちょっとは楽にならんのか。AMIから起動するとき、所有者を801119661308にしてキーワードを足して検索すると日本語版が選べるらしい。

aws

この所有者はamazonのことらしい。SQLってのを選ぶとMS-SQLserverが入ったイメージになってたはずやから、Baseってあるのを選んで使う。

aws

windows2019で検索してるけど2022でも行けるし、2025でも行ける。Windows_Server-2019-Japaneseって箇所を変えて検索したらええ。

検索結果はけっこうたくさんヒットするんやけど、windows updateの適用時期によってイメージ作ってるっぽい。

aws

AMI名で並び替えたら名前に日付が入ってる。たぶんこの日付はその月の2回目の水曜日(windows updateの対象が公開される日)なんやと思う。

その時々で一番新しいイメージ名を選んだらwindows updateも最低限で済む。

このAMIは古いのは削除されていき、1年経ったら当時使ったイメージはなくなる代わりに新しいのが提供される。

使い始めの設定

ec2を使い始めるための設定でいっつもやってる内容のメモ。

ホスト名を変更設定

aws-ec2のホスト名が適当についてまうから、手動で設定する。サーバでもクライアントでも、windowsやったら同じように変える。

OSのライセンスが切れていないか確認

ec2ホストを新規作成したときは大丈夫やけど、リストアしたときにOSライセンス切れてることがある。

ファイアウォールを無効化

ドメイン、プライベート、パブリック3つのプロファイルを無効化する。

タイムゾーンを日本に変更

時刻同期サーバを設定

w32tm /config /manualpeerlist:xx.xx.xx.xx,0x8 /syncfromflags:manual /update

レジストリエディタ(regedit)から、以下のパスの値(Type)を「NTP」から「NT5DS」へ変更する。

1
2
3
4
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters
    Type
    REG_SZ
    NT5DS

コマンドラインでw32tm /query /statusって確認。

C:\Users\Administrator>w32tm /query /status
閏インジケーター: 0 (警告なし)
階層: 4 (二次参照 - (S)NTP で同期)
精度: -23 (ティックごとに 119.209ns)
ルート遅延: 0.0004668s
ルート分散: 4.1181419s
参照 ID: 0xXXXXXXXX (ソース IP:  169.254.169.123)
最終正常同期時刻: 2023/11/08 11:38:37
ソース: 169.254.169.123,0x9
ポーリング間隔: 9 (512s)
C:\Users\Administrator>

リモートデスクトップ接続のNLA認証

無効にする。

リモートデスクトップの最大同時接続数を無効にする

gpedit.mscを実行してグループポリシーをいじる。

1
2
3
4
「コンピューターの構成」 →「 管理用テンプレート 」→ 「Windows コンポーネント」 →「 リモート デスクトップ サービス」 
    →「 リモート デスクトップ セッション ホスト」 → 「接続」
        → 「リモート デスクトップ サービス ユーザーに対してリモート デスクトップ サービス セッションを 1 つに制限する」を右クリック
            メニューにある「編集」をクリック、「無効」を選択して「適用」または「OK」をクリック

WindowsUpdate自動更新を無効にする

プライベートサブネットに設置するとしても、ホンマは常に最新化したほうがええんやけど、アプリケーションやらサービスの稼働前提が「現在の最新」っていうときは、初回に1回だけwindows updateして凍結する。

windows2025になって微妙にグループポリシーの階層が変わってる。

Cドライブ以外のドライブあるときはフォーマットしてドライブレター割り当て

GPTでNTFS5クイックフォーマットする。

管理者ユーザパスワードを変えて期限を無期限にする

ec2ホストに権限つける

IAMでロール作って、cloudwatchに書き込みする権限をつける。

ec2-linux

aws cliインストール

インストールしとく。

CloudWatchAgentインストール

こっちもインストールしとく。

CloudWatchメトリクス取得設定

「config.json」ファイルを以下パスに格納する。

C:\Program Files\Amazon\AmazonCloudWatchAgent\config.json
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{
    metrics: {
        append_dimensions: {
            AutoScalingGroupName: "${aws:AutoScalingGroupName}",
            ImageId: "${aws:ImageId}",
            InstanceId: "${aws:InstanceId}",
            InstanceType: "${aws:InstanceType}"
        },
        metrics_collected: {
            LogicalDisk: {
                measurement: [
                    % Free Space
                ],
                metrics_collection_interval: 60,
                resources: [
                    *
                ]
            },
            Memory: {
                measurement: [
                    % Committed Bytes In Use
                ],
                metrics_collection_interval: 60
            }
        }
    }
}

CloudWatchエージェントを起動

エージェントのサービスを起動する。

& "C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1" -a fetch-config -m ec2 -s -c file:"C:\Program Files\Amazon\AmazonCloudWatchAgent\config.json"

もしも起動うまく行ってなかったり、ログ書き込みに失敗してたりすると、cloudwatchエージェントのログ見たらヒントがあるかも。

C:\ProgramData\Amazon\AmazonCloudWatchAgent

aws

CloudWatchagentサービスを遅延起動に設定

windowsのサービスで遅延起動にしとく。

CloudWatchログの保管設定

保管期間設定しとかんと溜まり続ける。

aws

3年ぐらいとか設定。

aws