Slide 1

Slide 1 text

NGINX が提供する ソフトウェア・ソリューション Hiroshi Matsumoto

Slide 2

Slide 2 text

©2022 F5 2 NGINXとは nginx(「エンジンエックス」のように発音[1][2]) は、フリーかつオープンソースなWebサーバであ る。処理性能・高い並行性・メモリ使用量の小さ さに焦点を当てて開発されており、 HTTP, HTTPS, SMTP, POP3, IMAPのリバースプ ロキシの機能や、ロードバランサ、HTTPキャッ シュなどの機能も持つ。 出典: フリー百科事典『ウィキペディア(Wikipedia)』 作者 Igor Sysoev 開発元 Nginx Inc. 初版 2004年10月4日 (18年前) 最新版 1.22.1 最新評価版 1.23.0 リポジトリ hg.nginx.org/nginx プログラミング 言語 C言語 対応OS Unix系、Microsoft Windows 種別 Webサーバ、 リバースプロキシ ライセンス BSDライク 公式サイト nginx.org, Nginx Inc. https://ja.wikipedia.org/wiki/Nginx

Slide 3

Slide 3 text

©2022 F5 3 NGINXとは HTTPS/gRPC App TCP/UDP SMTP HTML File WEBサーバ / Path Routing / キャッシュ / 通信の細かな制御により、 高速 安定 高機能 高機能なReverse Proxy / キャッシュサーバ Load Balancing / API Gateway として利用可能

Slide 4

Slide 4 text

©2022 F5 4 NGINXが提供する ソフトウェア

Slide 5

Slide 5 text

©2022 F5 5 NGINXが提供するソフトウェア NGINX Plus NGINX OSSをベースに、さらなるエンタープライズユースに対応したソフトウェア (LBメソッド・冗長機能・JWT制御・API制御 に加え、各種セキュリティモジュールの利用が可能) NGINX Management Suite NGINX統合管理ソフトウェア。 API Connectivity Manager(ACM)はNGINX PlusによるAPI管理を提供 NGINX Instance Manager NGINX OSS、NGINX Plusの統合管理。ヒストリカルなAPM機能、コンフィグ・証明書管理、管理 対象のNGINX OSS / NGINX Plusに対するAPI制御機能を提供 NGINX App Protect WAF F5が提供する、ミッションクリティカル環境に最適な高速な高品質なWAF NGINX App Protect DoS 従来のツールでは検知できないレイヤー7のDoS脅威から高度な保護を提供 NGINX Ingress Controller Kubernetes環境での高度な通信制御を提供。NGINX機能をIngressリソースを通じて管理可能。 NGINX Service Mesh NGINX Plusによるコンテナ間の制御を提供するシンプルなサービスメッシュソリューション NGINX for Azure NGINX PlusをAzureからSaaS環境として提供、コンフィグを貼り付けるだけで活用が可能 All-In-One SW Overview NGINX OSS Dev/Opsに最適な、超軽量・高速・多機能なAll-In-One Software NGINX Unit 動的かつ分散アプリケーション環境向けに設計されたアプリケーションサーバ NJS (NGINX JavaScript) NGINXの機能を拡張するJavaScript言語のサブセットモジュール NJS Open Source Security Container SaaS

Slide 6

Slide 6 text

©2022 F5 6 主要NGINXソフトウェアの構成イメージ App Proxy Client App NJS オンプレミス クラウド・コンテナ K8S(コンテナ・NIC) NGINX OSS 環境 App HTTP gRPC etc TCP/ UDP NGINX Plus App オンプレミス クラウド・コンテナ K8S(コンテナ・NIC) App WAF DOS NJS HTTP gRPC etc TCP/ UDP NGINX Unit App オンプレミス クラウド・コンテナ K8S(コンテナ) JS Ruby Go Java Perl PHP Python HTTP JWT/OIDC/ActiveHC/ Cookie Persistence/ より詳細なMetrics/ メーカーSupport OSS NGINX Ingress Controller Pod K8S(NIC) Pod WAF DOS NJS HTTP SMTP etc TCP/ UDP Container NGINX Service Mesh K8S(NSM) C HTTP gRPC TCP/ UDP Container Container C Pod Pod Pod Pod

Slide 7

Slide 7 text

©2022 F5 7 主要NGINXソフトウェアの構成イメージ:NIC App Proxy Client App NJS オンプレミス クラウド・コンテナ K8S(コンテナ・NIC) NGINX OSS NGINX Plus NGINX Unit NGINX Ingress Controller NGINX Service Mesh 環境 App App オンプレミス クラウド・コンテナ K8S(コンテナ・NIC) App WAF DOS NJS App オンプレミス クラウド・コンテナ K8S(コンテナ) JS Ruby Go Java Perl PHP Python HTTP gRPC etc TCP/ UDP HTTP gRPC etc TCP/ UDP HTTP Pod K8S(NIC) Pod WAF DOS NJS HTTP SMTP etc TCP/ UDP K8S(NSM) HTTP gRPC TCP/ UDP Container Container 用途をNICに 限定・安価 C C Container Pod Pod Pod Pod

Slide 8

Slide 8 text

©2022 F5 8 主要NGINXソフトウェアの構成イメージ:Support App Proxy Client App NJS オンプレミス クラウド・コンテナ K8S(コンテナ・NIC) NGINX OSS NGINX Plus NGINX Unit NGINX Ingress Controller NGINX Service Mesh 環境 App App オンプレミス クラウド・コンテナ K8S(コンテナ・NIC) App WAF DOS NJS App オンプレミス クラウド・コンテナ K8S(コンテナ) JS Ruby Go Java Perl PHP Python HTTP gRPC etc TCP/ UDP HTTP gRPC etc TCP/ UDP HTTP Pod K8S(NIC) Pod WAF DOS NJS HTTP SMTP etc TCP/ UDP K8S(NSM) HTTP gRPC TCP/ UDP Container Container OSS(無料) Support 有料 Support OSS(無料) Support OSS(無料) Support Plus(有料) Support 無料利用可 Support 有料 Support Plus Subで 対応可能 提供 Support C C Container Pod Pod Pod Pod

Slide 9

Slide 9 text

©2022 F5 9 主要NGINXソフトウェアの構成イメージ:Support App Proxy Client App NJS オンプレミス クラウド・コンテナ K8S(コンテナ・NIC) NGINX OSS NGINX Plus NGINX Unit NGINX Ingress Controller NGINX Service Mesh 環境 App App オンプレミス クラウド・コンテナ K8S(コンテナ・NIC) App WAF DOS NJS App オンプレミス クラウド・コンテナ K8S(コンテナ) JS Ruby Go Java Perl PHP Python HTTP gRPC etc TCP/ UDP HTTP gRPC etc TCP/ UDP HTTP Pod K8S(NIC) Pod WAF DOS NJS HTTP SMTP etc TCP/ UDP K8S(NSM) HTTP gRPC TCP/ UDP Container Container OSS(無料) Support 有料 Support OSS(無料) Support OSS(無料) Support Plus(有料) Support 無料利用可 Support 有料 Support Plus Subで 対応可能 提供 Support C C Container Pod Pod Pod Pod 困ったらF5までご連絡ください (問い合わせページもあります)

Slide 10

Slide 10 text

©2022 F5 10 主要NGINXソフトウェア:Management Suite/NGINX for Azure App Proxy App オンプレミス クラウド・コンテナ K8S(コンテナ) 環境 App NGINX Instance Manager WAF App App WAF App App 管理 IM NGINX for Azure HTTP App App SaaS Agent Agent Agent API Connectivity Manager API オンプレミス クラウド・コンテナ K8S(コンテナ) API API API API API APIGW APIGW APIGW Dev Portal ACM Agent Agent Agent

Slide 11

Slide 11 text

©2022 F5 11 NGINXのソフトウェアの インストール・デプロイメントガイド

Slide 12

Slide 12 text

©2022 F5 12 インストール・デプロイメントガイド NGINX Ingress Controller https://docs.nginx.com/nginx-ingress-controller/ NGINX Service Mesh https://docs.nginx.com/nginx-service-mesh/ NGINX App Protect WAF https://docs.nginx.com/nginx-app-protect/ NGINX App Protect DoS https://docs.nginx.com/nginx-app-protect-dos/ NGINX Management Suite https://docs.nginx.com/nginx-management-suite/ NGINX for Azure https://docs.nginx.com/nginxaas/azure/ Document NGINX OSS / NGINX Plus https://docs.nginx.com/nginx/ http://nginx.org/en/docs/ NGINX Unit https://unit.nginx.org/ NJS (NGINX JavaScript) http://nginx.org/en/docs/njs/index.html https://github.com/nginx/njs-examples/ NJS

Slide 13

Slide 13 text

©2022 F5 13 NGINXのソフトウェアの 利用開始・購入手法

Slide 14

Slide 14 text

©2022 F5 14 パブリック クラウド 導入計画に合わせた 柔軟な提供 Subscription すべてのプロダクト トライアル・ OSS Market Place NGINX Plus / App Protect WAF (仮想マシン / NGINX Ingress Controller) NGINXソフトウェアの利用開始・購入手法 小規模・PoC 本番環境 長期・大規模環境 オンプレミス Trial

Slide 15

Slide 15 text

©2022 F5 15 ライセンスによりカバーされるサポート内容 特徴 スタンダード プレミアム 重要度が比較的低く、長めの回答時間が 許容される、NGINXおよびNGINX Plus の本番環境デプロイメント向けサポート すべてのエンタープライズアプリケー ションまたは本番環境のデフォルトスタ ンダード インシデント数 無制限 無制限 サポート時間 営業時間(平日日中帯) 24時間 Emailサポート 英語対応 *日本語対応 (平日9:00-18:00) 英語対応 *日本語対応 (平日9:00-18:00) 電話サポート 英語対応 *日本語対応 (平日9:00-18:00) 英語対応 *日本語対応 (平日:9:00-18:00) 応答時間 英語 – 30分~24時間以内 日本語 - ベストエフォート 英語 - 30分~24時間以内 日本語 – ベストエフォート マニュアルに関する質問回答 24時間 24時間 ホットバグ修正 対応可 対応可 ソフトウェアアップデート メジャー、マイナー共に対応 メジャー、マイナー共に対応 サードパーティーモジュール サポート ◯ ◯ NGINX Unit - ◯ https://www.nginx.co.jp/support/ 推奨

Slide 16

Slide 16 text

©2022 F5 16 NGINX リリースサイクル

Slide 17

Slide 17 text

©2022 F5 17 NGINX OSS – リリースサイクル NGINX OSSは、mainline(奇数)とstable(偶数)の二種類に分かれます 毎年4月にmainlineからstableをforkします。以降のリリースVersionが新しい番号へ更新されます NGINX Plusは、NGINX OSSと別のレポジトリで管理されています。mainlineからforkされます NGINXはmainlineの利用を推奨しますが、更新頻度などの観点からstableの利用も可能です 1year 1year

Slide 18

Slide 18 text

©2022 F5 18 R25 R26 R27 NGINX Plusは、NGINXメインラインでテスト・実証された、すべてのOSS新機能を取り入れます。 NGINX Plusは、年3回バイナリパッケージがリリースされます。 NGINX Plusは、エンタープライズ向けの追加機能と商用サポート(英語、日本語)が含まれています。 NGINX Plus – リリースサイクル https://docs.nginx.com/nginx/releases/

Slide 19

Slide 19 text

©2022 F5 19 NGINX 実績・パフォーマンス

Slide 20

Slide 20 text

©2022 F5 20 コンテナプラットフォームに最適なNGINX Technology Source: Datadog Container Report 2022 Top Ingress Providers CNCF Survey Source: CNCF Survey 2020 安定・高速動作がクラウドネイティブ環境に最適 実績

Slide 21

Slide 21 text

©2022 F5 21 柔軟に拡張できる最高のパフォーマンス HARDWARE SPECS EXPECTED PERFORMANCE 2 CPU cores 4 GB RAM 2x10 GbE NIC 74,000 RPS 9,100 SSL TPS (ECC) 4 Gbps throughput 4 CPU cores 8 GB RAM 2x10 GbE NIC 150,000 RPS 17,600 SSL TPS (ECC) 8 Gbps throughput 8 CPU cores 16 GB RAM 2x10 GbE NIC 300,000 RPS 33,000 SSL TPS (ECC) 8 Gbps throughput HARDWARE SPECS EXPECTED PERFORMANCE 2 CPU cores 4 GB RAM 2x1 GbE NIC 90,000 RPS 4,500 SSL TPS (ECC) 1 Gbps throughput 4 CPU cores 4 GB RAM 2x40 GbE NIC 175,000 RPS 8,500 SSL TPS (ECC) 5 Gbps throughput 8 CPU cores 4 GB RAM 2x40 GbE NIC 350,000 RPS 16,000 SSL TPS (ECC) 40 Gbps throughput 0 2000 4000 6000 8000 10000 12000 14000 16000 18000 系列1 0 50000 100000 150000 200000 250000 300000 350000 400000 系列1 0 5000 10000 15000 20000 25000 30000 35000 系列1 0 50000 100000 150000 200000 250000 300000 350000 系列1 2 Core 4 GB 4 Core 4 GB 8 Core 4 GB 2 Core 4 GB 4 Core 8 GB 8 Core 16 GB https://www.nginx.com/resources/datasheets/nginx-plus-sizing-guide/ https://www.nginx.com/resources/datasheets/nginx-ingress-controller-kubernetes/ ベアメタル:CPU/メモリに応じて様々な規模に柔軟な対応 Ingress Controller:アプライアンスに相当する高速・安定な処理 安定・拡張性

Slide 22

Slide 22 text

その他参考資料

Slide 23

Slide 23 text

©2022 F5 23 お問い合わせフォーム • 製品に関するお問い合わせ • 購入に関するお問い合わせ • 構成・設計に関するご相談 など https://www.nginx.co.jp/contact-sales/ お気軽にお問い合わせください

Slide 24

Slide 24 text

©2022 F5 24 https://f5j-tech-info.readthedocs.io/ja/latest/content03/content3.html 有償版NGINXを触って頂くためのラボガイドです。こちらのページから各機能へのリンクが ありますので、ご興味のある機能についてはぜひ触ってみてください! NGINXラボガイド index

Slide 25

Slide 25 text

©2022 F5 25 O’REILLY NGINXクックブック設定レシピ集(日本語版) https://www.nginx.co.jp/resources/ebooks/nginx-cookbook-jp/

Slide 26

Slide 26 text

©2022 F5 26 NGINXドキュメント/コンテンツ https://nginx.co.jp/ NGINX日本語サイト https://nginx.org/en/docs/ https://nginx.org/en/docs/dirindex.html NGINX OSS / Directive / Variable etc. (各種マニュアル)

Slide 27

Slide 27 text

©2022 F5 27 • NGINXの持つ基本機能群 おさらい • NGINX(OSS版)とNGINX Plusの違い • NGINX Plus基本コン フィグのデモ Webinar 1 – これからはじめるNGINX技術解説~基本編 https://www.nginx.co.jp/resources/webinars/nginx-back-to-basic-jp/ このセミナーの主な内容:

Slide 28

Slide 28 text

©2022 F5 28 Webinar 2 – これからはじめるNGINX技術解説~基本編 Part2 • NGINXの持つ基本機能群 おさらい • NGINXの動作の基礎、 listen directiveについて • NGINXのReverse Proxy 機能&設定 • NGINX の高度なロード バランシング機能&設定 https://www.nginx.co.jp/resources/webinars/nginx-back-to-basic-2-jp/ このセミナーの主な内容:

Slide 29

Slide 29 text

©2022 F5 29 • NGINXの持つセキュリ ティ機能おさらい • NGINX Rate Limitの紹 介&設定 • JWT validation (OAuth, OIDC) の紹介&設定 • WAFの紹介&設定 Webinar 3 – これからはじめるNGINX技術解説Part 3 ~セキュリティ編 https://www.nginx.co.jp/resources/webinars/nginx-back-to-basic-3-security-jp/ このセミナーの主な内容:

Slide 30

Slide 30 text

©2022 F5 30 • NGINX Ingress Controllerとは? • KubernetesにおけるNGINX Ingress Controllerの必要性 • 基本設定の紹介 (Ingress/VS/VSR 機能・設定) • Ingress Snippetによる拡張(既 存コンフィグの再利用) • ログの確認方法 Webinar 4 – これからはじめるNGINX技術解説~Ingress Controller編 https://www.nginx.co.jp/resources/webinars/nginx-back-to-basic-ingress-controller-jp/ このセミナーの主な内容: