またーり作成中

IT、電子工作、裁縫とかとか

Amazon Web Services 基礎からのネットワーク&サーバ構築 #8

CHAPTER8の感想

この章は今まで作ったサーバにwordpressをインストールして動作確認するまでです。実務や検証ではwordpressをインストールすることは何度もありましたが、今回のように手順を示されてやったことはなく新鮮でした。内容はあまりネットワークの話ではなくまとめ章としての色が濃いです。内容如何、難易度如何、ここまできたという達成感がある章でした。

詳細

  • この章を読む終えた時点で把握できているであろうこと
    • パブリックサブネット、プライベートサブネットの構築。
    • パブリックサブネットにWebサーバを構築。
    • プライベートサブネットにDBサーバを構築。
    • NATサーバの構築。
    • wordpressmysqlのインストール
  • 構築したDB WEB NATサーバは以降の章では使わないようなのでこの章終了と同時に全部削除しました。

Amazon Web Services 基礎からのネットワーク&サーバ構築 #7

CHAPTER7の感想

NATサーバの構築ですね。本当に親切に書かれていて迷うところは一切ないかと思います。

詳細

  • NATサーバ
    • 2つのネットワークインターフェースを持つ。一般に片方にはパブリックIPを設定、もう片方にはプライベートIPを設定する。
    • プライベートサブネットとNATの通信は一方通行。プライベートサブネットからNATへの通信は許可。反対は拒否。
    • IPマスカレードとのNATの区別についてメモ書きがあり。へー、最近はIPマスカレードというのは言わなくなってきてるんだ。知らなかった。 
  • NATサーバ構築手順
    • セキュリティグループを作る
      • ここで踏み台からのインバウンド22ポートの送信元設定だけど表7-1の送信元IPは10.0.1.10/32 CIDR表記でよろです。
      • ファイヤーウォールにはステートレスとステートフルの2種類がある。
      • AMIからインスタンスを起動する。AMIは『ami-vpc-nat』で検索して64bitで最新のものを使う。
      • 送信先送信元のチェックを無効にする。
        • 偽装パケットを除外するEC2のデフォON機能。NATについては送信元IPや宛先アドレスを書き換えるからこのチェックは無効にする必要がある。
    • ルートテーブルの構成
    • 踏み台からDBインスタンスに入ってcurlhttps httpプロトコルでコンテンツが取得できるか確認。
    • NATサーバを落として上をもう一度実施し、プライベートサブネットからはNATサーバを通さないと通信ができないことを確認。

Amazon Web Services 基礎からのネットワーク&サーバ構築 #6

CHAPTER6の感想

この回は踏み台サーバーを介してプライベートサブネットに接続するという流れですね。とても丁寧に書かれていてすごいなーと思いながら読みました。ところで、文章を書いているとデスマスの統一で迷います。
いつも気分で書いているためなかなか統一できないですね。w

詳細

  • アベイラビリティゾーンが異なると無駄なコストが発生する件について
    • これは私の独り言だが、業務ではpublicとprivateのサブネットでは当然同じアベイラビリティゾーンになるように設計しているけど、時々ゾーンのインスタンス容量オーバーのエラーが出て作成でいないことあるんだよな。仕方なく違うゾーンになってしまったり、もしくはインスタンスタイプ変えざるをえなかったりすることがあるよなあ。
  • RouteTable
    • プライベートサブネットの場合はassociateしない。インターネットに接続することがないので不要
  • AWSの独自ルールで、Sourceにセキュリティグループを設定することができる。
    • 無意識で使っていたけどこれほんと便利だよね。
  • ICMPの解放
    • 私が今持っているのはこの本の初版なので改訂版だと修正が入っているかもしれないがインバウンドルールの選択のプロトコル表示にIPv6が入ってたりコンソール結構変わっているなあ。AWSのコンソールどんどん変わるから固定化したメディアで手順残すの難しいよなあ。
    • 疎通確認かー。もう80で疎通が取れないサーバーは削除してスケールアウトするようにしているしICMPで疎通とるようなこともなくなってきているのではと思うのですが、最近皆さんこのポートどう使っているんでしょうか?私はふさいでます。
  • SCP
  • 踏み台サーバを使ってログインする

Amazon Web Services 基礎からのネットワーク&サーバ構築 #5

CHAPTER5の感想

この章のタイトルは『HTTPの動きを確認する』。章まるごとHTTPでAWSはお休みですね。『HTTPをしゃべってみよう』という章があります。キャッチーですね。大好きです。サーバー側のサンプルjsですが、リンク切れを起こしていましたので下に書いていますが問題あったら消すので言ってください。内容はHTTPプロトコルの基礎です。これはweb系を仕事にしてる場合必須な知識かなと思います。

詳細

var http = require('http');
http.createServer(function(req,res){

    var data ={
        RequestHeader: req.headers
    };

    if(req.method == 'GET'){
        response(res,data);
    }else if(req.method == 'POST'){ 
        req.on('data',function(body) {
            data.RequestBody = body.toString();
            req.on('end',function(){
               response(res,data);
            });
        });
    }
}).listen(8080);

function response(res,data){
    var json = JSON.stringify(data);
      res.writeHead(200,{'Content-Type':'application/json','Content-Length':json.length});
    res.end(json);
}
telnet ec2-xxxxxxxxxxxx.compute-1.amazonaws.com 8080

POST / HTTP/1.0
User-Agent: OreOreAgent
Content-Length: 3

abc
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 87
Date: Sat, 09 Feb 2019 12:31:46 GMT
Connection: close

{"RequestHeader":{"user-agent":"OreOreAgent","content-length":"3"},"RequestBody":"abc"}Connection closed by foreign host.

Amazon Web Services 基礎からのネットワーク&サーバ構築 #4

CHAPTER4の感想

この章のタイトルは『サーバーソフトをインストールする』ですがhttpdのインストールは速攻で終わる。この章のメインはhttpdを起動させエンドユーザ側からhttp://でアクセスできるまで。途中で必要なネットワークの基礎知識にも触れていてこの本は新人研修に最高なのではないかと思い始めてきた。

私とapatchの関係性だけど、最近はnginxに浮気してた。けどやはりapatchに戻り公式マニュアルを読み直している。マニュアルを見ているとこの子の実力をもっと生かしてあげなければと思う。Webサーバ構築はそれこそ何度もやったことがある手順だけど誰かから習ったことは考えたら1度もないためとてもよい章だった。

詳細

Amazon Web Services 基礎からのネットワーク&サーバ構築 #3

CHAPTER3の感想

この章を読むと、PublicからSSHでアクセス可能なEC2インスタンスをまずは作れるようになります。手順が本当に細かく載っているので初めて作る人でも迷うことなく作れると思う。
SSH接続の章が終わったところで、『なぜこんなこと(SSHでサーバにログイン)ができるのでしょうか?』と始まったのには驚いた。本名がネットワーク基礎を謳っているからね。作業の途中で関連する知識の解説が入る構成は頭に入りやすく良いですね。

詳細

  • Amazon Linux 2
    • 本の内容には関係ないですが、いつもインスタンス上げる時はMyAMIからだったため気が付かなかったけど、Amazon Linux 2って次世代のAmazon Linux出てますね。これはサポートに問い合わせて現行のAmazon Linuxからの移行スケジュール組まないといけないわー。systemdに変わるのね。ちょっと自分の開発環境を早めにアップして慣れておかないといけないね。
  • EC2インスタンスの作成
    • 個人的に大量に作ったことがあるが、何か見落としている項目がないか探しながら実施。この導入章では新しい発見はなかった。
    • SSHは解放したくないので初期からAnywhereではなくMy IPにしました。多分すぐ後続の手順でセキュリティとして出てくるんだろうけど、一瞬でもポート開けたくない。
  • SSHでの接続
  • なんでSSHにサーバに接続することができるか
    • この展開には驚いた!さすがネットワークの本。
    • EGP
      • BGP-4
    • IGP
      • OSPF
      • RIP
  • なぜログインしてコマンドを入力してサーバーを操作できるようになるのか。
    • sshd
    • ポート、TCP UDP
    • どのポートでどのサービスが待ち受けているか
      • sudo lsof -i -n -P
    • loopback address
    • well known port
  • パケットフィルタリング
    • セキュリティグループ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             

Amazon Web Services 基礎からのネットワーク&サーバ構築 #2

CHAPTER2の感想

このCHAPTERを終えると、AWSVPC作成、インターネットゲートウェイの設定ができるようになります。読んでいてまず思ったのはとても丁寧に書かれているなあということです。解説が多いのでネットワーク初心者でもAWSを少し触ったレベルであればサクサク進めるかと思います。ただ、AWS全く触ったことがない場合はユーザ作成などは触れられていないため別の本で学習する必要がありそうです。

詳細めも

いつもの箇条書きスタイルです
( ..)φメモメモ

  • IPアドレスに関する基礎知識が載っている。
    • 単語もかみ砕いていて分かりやすい記述が勉強になる。たとえばホストという単語についても注釈があるくらい。 連番に関しても解説があるのすごいな。初学者にとってはかゆいところに手が届く本だと思う。
    • 技術書書くときには本の目的とともに、読む方のレベル設定が必須ですな。
    • IPv4枯渇関連の話題
      • IPv4からIPv6の移行が終わるまではNATで不足問題を解決
  • 用語解説
  • 実験用VPCの作成。(手動かしたかった。待ってました~!
    • うわ~お!!なんて丁寧な手順ですか!!このレベルで書いてくれているなら、アップデートの激しいAWSでも問題なく新しくなったメニューを探して置換しながら読むことができると思われます。これ作るの大変だっただろうなあ。
    • サブネットの考え方
      • 細分化したCIDRブロック
      • サブネットを分ける理由について
  • VPC領域をサブネットに分割する
    • パブリックサブネットとプライベートサブネットの作成。
    • ルーティングテーブルに関する基礎知識
      • ルートテーブルの設定例とパケットの流れがの図が簡潔で素敵。
      • デフォルトのルートテーブル編集についてのメモが良かった。
    • デフォルトゲートウェイをインターネットゲートウェイに設定。