blog

紫陽花

インフラ 学習 memo

インフラ で学んだことを雑にmemoしていく

サーバー

サーバーとは、「Linux」や「Windows Server」など、サーバー用のOSインストールしたコンピュータ

「サーバーにどのようなミドルウェアをインストールするか」によってサーバーの用途が変わる。

サーバーに複数のミドルウェアをインストールすることも可能。 この場合「Webサーバー 兼 データベースサーバ」となる

ネットワーク

TCP/IP

IPアドレス

32ビットで構成 8ビットずつ10進数に変換したものをピリオドで区切って表現 例:「192.168.100.200」 「0」~ 「255」 「0.0.0.0」から「255.255.255.255」まで IPアドレスは、ネットワーク上で互いに重複しない唯一無二の番号で、いわゆる「住所」に相当 IPアドレスには「パブリックIPアドレス」と「プライベートIPアドレス」がある。

パブリックIPアドレス

IPアドレスは重複が許されないため勝手に設定できない、 インターネットで利用するIPアドレスは「ICANN」という団体が一括管理 インターネットに接続する際に用いるIPアドレスのことを「パブリックIPアドレス」もしくは、 「グローバルIPアドレス」と呼ぶ

プライベートIPアドレス

プライベートIPアドレスは誰にも申請することなく自由に使える

ポート番号

ポート番号の利用で1IPアドレスに対して複数のアプリケーションが通信可能になる 「web」「DNS」「SMTP」にはあらかじめポート番号が決まってたりする。それを「ウェルノウンポート」と呼ぶ

HTTP

webサーバーとwebブラウザでやりとりする通信規約

TCP/IPモデル

OSI参照モデル

ドメイン

DNSサーバー

ドメイン名」と「IPアドレス」を結びつける

ホスト

ホスト「host」とは、コンピュータやルーターなどのネットワーク機器など、 IPアドレスを持つ通信機器の総称

VPC

VPCを「パブリック」と「プライベート」に分けて利用

パブリックサブネット

Webサーバーなどを置く インターネットに接続し、「公開」されている。

プライベートサブネット

DBサーバなどを置く インターネットには直接接続していないため、「非公開」とされている。

NAT

Network Address Translation 内部だけで通用するアドレスを外部とも通信できるアドレスに変換する技術

サブネットマスク

サブネットマスク表記」

表記方法の違い

CIDR

「CIDR表記 (サイダー表記)」

表記方法の違い

ルーティング

ネットワークにデータを流すために必要な設定「ルーティング情報」 「ルーティングテーブル」や「ルートテーブル」と呼ばれる AWSでは「ルートテーブル」

インターネットゲートウェイ

インターネットに接続する間口 EC2からインターネットへ、インターネットからEC2へアクセスできるようにするためにアタッチする必要がある

ネットワーク関連コマンド

AWS

2004年11月からサービス開始

AWSの特徴 - 豊富なサービス - 柔軟なリソース - 従量課金

リージョン

世界中の地域に存在するデータセンター群 「オレゴンリージョン」「東京リージョン」「バージニアリージョン」

アベイラビリティゾーン

リージョンのさらに分割されたデータセンター群 大阪と東京的な

エッジロケーション

東京に2つ、大阪に1つある CDNサービスのcloudFrontやRoute53のDNSサーバなどで用いられている

Amazon VPC

Amazon Virtual Private Cloud」

AWS上に論理的な仮想ネットワークを構築するサービス 元々AWSパブリッククラウドサービス

Amazon EC2

Amazon Elastic Compute Cloud」 「EC2インスタンス」と呼ぶ インスタンスとは、仮想的なサーバーのこと

AMI (Amazon Machine Image)

Amazon Route53

WebベースのDNSサービス 権威DNSサーバー

  • Hosted Zone

Hosted ZoneはDNSレコード (Resource Record) の集合

  • Record Set Record Setは、各DNSレコード

  • Routing Policy Routing Poricyは、Route53がRecord Setに対してどのようにルーティングを行うのかを決定する

レコードタイプ

A (Address Record)

ホスト名とIPV4IPアドレスマッピングを行う ドメイン名とIPアドレスドメイン名:IPアドレス = 1:n

CNAME (Canonical Name Record)

他のDNS名の別名を設定する Aレコードで定義されているドメイン名と別名を定義する。 IPアドレス:ドメイン名 = 1:n を定義する

AレコードとCNAMEレコードの違い

Aレコードはドメイン名とIPアドレスの関係性を定義、CNAMEはそれの別名を定義する

DNSフェイルオーバー

利用の前提としてヘルスチェックを設定する必要がある

Amazon S3 (Simple Storage Service)

シンプルでとても使い易いインターネットストレージサービス

CloudFront

CloudFrontはAWSが提供するCDNサービス CDNサービス (Content Delivery Network) 画像などの性的コンテンツをS3から配信している時に、S3の前段にCloudFrontを挟むことで静的コンテンツをエッジサーバーがキャッシュし、速度を早くすることができる

S3とCloudFrontを連携して用いる

サーバー移設

road_workerのファイルを変更しmasterブランチへマージ circleciが変更を確認しAWSのRoute53の設定を変更 変更が反映されたタイミングでDNSサーバーからのレスポンスに応じて飛び先を変える DNSフェイルオーバーをサーバーの向き先変更には利用しない 重み付けはサーバーで失敗した時のリスクを最小限に抑えたい場合などで利用する レイテンシーは大規模サービスで主に利用する

アプリケーション管理ツール

  • ElasticBeanstalk
  • Opsworks
  • CloudFormation