背景
- レイヤーの低い部分のコーディングばっかりしてせいで、レイヤー高い部分触るようになって意識することがたくさん出てきたので、ちょっと整理がてらにアウトプットしておく
- メモ程度に残して、今後気になったりインプットしたら追記していく
目次
- リバースプロキシ
- abuse対策
- LB
- L4 スイッチ
- L7 スイッチ
- GSLB
リバースプロキシとは
リバースプロキシとは、外部ネットワーク(インターネット)からの接続を受け、何らかの処理を行った上で内部のサーバーに引き渡す、中継機能を果たす機器のことです。 クライアントとして接続しようとする外部のデバイスに対しては接続先のサーバーのようにふるまい、内部のサーバーに対しては外部のクライアントのようにふるまいます。
[リバースプロキシ - F5 Networks]
(https://f5.com/jp/education/glossary/glossary020-21502)
もう、この説明通りなんです。これやることの旨味としては、、、
- 負荷分散
- セキュリティ対策
- キャッシュによる高速化
- 異なるアプリやフレームワーク、プラットフォームの統合
などがあるっぽいです。
abuse対策
abuse(アビュース)とは、不正使用や乱用などを意味する。コンピュータネットワーク上で迷惑行為やその行為を通報する窓口を指している。misuseという似た英単語があるが、こちらは濫用・悪用以外に“誤用”“過誤”という故意ではない意味も含まれている。
不適切な公衆への振舞いをする者に対し、RFC 2142は通報するためにabuse@…を用意するべきと規定している。メールアドレスは、スパムメールの送信や第三者によるメールサーバの不正使用など、さまざまな通報先にあり、転じてネットワーク上の迷惑行為やその行為を通報する窓口として使われるようになった。
Abuse | インターネット用語辞典 | IT用語辞典 | 日立ソリューションズ
- 要するに濫用の対策です。昨今、APIを公開してるWebサービスが多いですが、abuseによって、クラッシュしてAPIがクラッシュしてフロントエンドに影響が出ることなどもありえます。そのためにabuse対策が必要みたいです。
- 簡単な対策としては、同一のIPアドレスから一定期間内に一定数のリクエストを受けた際に、遮断するなどがあります。多分、だいたいのサービスで導入されてます。
LB
- Load Balancer? Balancing?の略。
- 要するに負荷分散こと。
- 例えば、アプリケーションが本番に1台しか出てなかったとして(まあ、ありえない話ですが)、トラフィックが増大してパフォーマンスが出なくなります。そうすると、UX下がったり、最悪クラッシュします。
- そんなことを防ぐために、アプリケーションは冗長構成をとって負荷分散をして、最悪の事態を防ごうとしているってこと。
- そんで、LBを理解する上で重要になるのがどのレイヤーでLBをさせるかということ。
L4とL7について
- L4がトランスポート層、L7がアプリケーション層を指す
- 具体的には、ロードバランサをL4スイッチとして動作させるときはTCP/UDPの情報までを基にスイッチングを行うらしい。
- 一方でL7は、Cookieパーシステンス(Cookieを使用して接続維持を行う機能 )の使用時や、HTTPヘッダのUser-Agent:を見てスマホ向けとPC向けで接続先サーバ群を分ける場合、あるいはSOAPメッセージ内のトランザクションIDをベースに接続サーバを決定する場合に使われるっぽい。
- 要は、L7の方がレイヤーが低いだけあって複雑な構成なんだろうなって感じ。
GSLB
GSLB(グローバルサーバロードバラシング)は、複数のサイト間でサーバロードバランスを行う機能です。 ディザスタリカバリ対策ともなります。 また、DNSの動きと連動させてユーザのリクエストをトラフィック の少ないサーバへ転送することも可能です。 GSLBの専用装置にはF5のGTM、CitrixのMPXなどがあります。
[GSLB(広域負荷分散)とは - ネットワークエンジニアとして]
(https://www.infraexpert.com/study/loadbalancer8.html)
要するに、複数の拠点にサーバー置いて、障害に備えるやつ。