NGINXの機能やユースケース、アップデートなどに関する質問について、FAQでお答えします。
NGINX Plusは、オープンソース版のNGINXにさまざまな機能拡張を施した商用版です。
そもそもNGINXは、イベント駆動型アーキテクチャの採用などにより、従来のWebサーバに比べ多くの同時接続数を可能にし、軽量で高いスケーラビリティを実現するWebサーバソフトウェアです。そのオープンソース版のNGINXに標準実装されていないセッションパーシステンス機能や、APIによる動的設定変更機能、アクティブヘルスチェック機能などの多くの追加機能が使用でき、サポートを得られるのがNGINX Plusとなります。
NGINXおよびNGINX Plusの機能比較表は、こちらのURLから参照ください。
NGINX Plusはより拡張性に優れ、メーカーによりサポートされた高度な機能を多く実装しています。
簡易なインストール:NGINXのプライベートリポジトリから、ビルド済みでテスト済みのバイナリをインストールするだけです。
安心のサポート:NGINXオープンソースとNGINX Plusのどちらも熟知し経験と知識豊富なチームによる完全なサポートとアップデートが保証されます。
豊富な機能:NGINX Plusは、高性能なWebサーバ機能、強力なフロントエンドロードバランサー機能、拡張性の高い高速なキャッシュ機能などを組み合わせて、Webアプリケーションに理想的なエンドツーエンドプラットフォームを実現します。 NGINX Plusは、NGINXオープンソースをベースに取り入れ設計されており、NGINXオープンソースの開発も続けています。詳細については、以下の英文Blog(NGINX(F / OSS)とNGINX Plusの違いは何か?)もご参照ください。
NGINXオープンソースは…
NGINX Plusは、Linuxベースシステム向けの、NGINXオープンソースと同じコンパクトなソフトウェアパッケージシステムです。パッケージ化された仮想アプライアンスとして、Amazon AWSでも利用できますし、また仮想化技術のchroot jail内部や、Linuxコンテナー、および独自の仮想マシンなどでも、NGINX Plusをデプロイすることが可能です。
標準のNGINX Plusパッケージには、公式のオープンソースビルドのNGINXで作成されたモジュールとNGINX Plusの拡張機能が含まれており、サードパーティのモジュールは、実行中のNGINX Plusインスタンスに動的にロードすることができます。NGINX Inc.では、広範囲のサードパーティモジュールへの対応および保守に努めています。これらの対応モジュールの一覧リストは、こちらから入手できます。
上記のリストにないカスタムまたはサードパーティのモジュールも、実行中のNGINX Plusインスタンスでいつでも動的にロードすることができます。実行方法の詳細については、こちらを参照してください。
https://cs.nginx.com/repo_setupの指示に従ってください。
再インストールの必要はありません、そのままお使いいただけます。ただし、評価用証明書を本番証明書に置き換える必要があります。これを行わないと、評価証明書の有効期限が切れた際に、インストールできなくなります。MyF5というカスタマーポータルから製品証明書を取得できます。これを/etc/ssl/nginxディレクトリにコピーし、評価用証明書を置き換えてください。
NGINX Plusには、NGINX Plus APIに基づいて構築され、詳細なモニタリングメトリクスを備えたビルドインのダッシュボードが含まれています。実際の動作を確認するには、こちらのライブデモをご覧ください。
また、NGINX Plus用の集中型プラットフォームであるNGINX Controllerを使えば、マルチクラウド環境全体においてすべてのNGINX Plusロードバランサーなどの機能を管理することが可能です。直感的なウィザード形式のGUIを使用して、すべてのNGINX Plusインスタンスを構成することができます。また、カスタムダッシュボードを作成して、最も重要なメトリックを追跡することもできます。
さらに、AppDynamics、Datadog、Dynatraceなど多くのモニタリング製品がNGINX Plusとの統合ソリューションを提供しています。 対応製品のリストについては、パートナーページをご覧ください。
さらなる詳細については、ライブアクティビティモニタリングについての製品ページ、NGINX Plus管理ガイド、およびNGINX Plus APIモジュールのリファレンスドキュメントを参照してください。
ダウンタイムはもちろんなし、また現在の接続を中断することなく、NGINXの構成をリロードすることができます。 簡易な再構成で、NGINXプロセスを新しくセットすることができ、古いプロセスは終了させるまで動作し続けます(ただし、新しい要求は受け入れません。すべての新しい要求は新しいプロセスのセットによって受け入れられます)。 ライブバイナリアップグレードも同様に機能します。 アップグレードが成功すると、NGINXワーカープロセスの古いセットが終了するように通知され、新しいセットが引き継ぎます。 詳細については、NGINXの制御を参照してください。
ロードバランシングパラメータ変更と負荷分散対象サーバの追加削除ができます。 (詳細は、On-the-fly reconfiguration of NGINX Plusを参照ください。)
NGINX Plusビルドの一部である(つまり、コンパイルされた)サードパーティソフトウェアのリストは、NGINX Plusリファレンスドキュメントの付録Bにあります。 NGINX Plusは、動的リンクを使用して、次のサードパーティライブラリに対してもリンクされます。 このソフトウェアはNGINX Plusに同梱はしていません。
NGINX Plusは「SSL対応」でもありますが、OpenSSLライブラリ自体の出荷/配布はしていません。
ログイン手順を記載したメールをお送りいたします。ログイン後、アクセスキーを取得していただき、NGINX Plusの管理ガイドのインストール手順に沿って操作してください。
NGINX Plusは、あらかじめ定義されたモジュールのセットが組み込まれたバイナリとして配布されるため(NGINX Plusの技術仕様にリストされている)、ソースからコンパイルされたサードパーティモジュールを使用している場合、NGINX Plusをインストールすると、NGINXサーバの動作が変わる可能性があります。 ただし、実行時にサードパーティのモジュールを動的にNGINX Plusにロードすることができます。 アップグレードする前に、NGINXの現在のバージョンと現在のNGINX Plusリリースの機能の違いを確認することをお勧めします。
NGINX Plusインストールの実行方法は、既存のデプロイメント内容によって異なります。 NGINXまたはNGINX Plusをアップグレードする前に、常に既存のNGINX構成ファイルをバックアップすることをお勧めします。
NGINX Plusでは、セッション維持、障害チェックのためのヘルスチェック、再構成時のスロースタート制御などのロードバランシングアルゴリズムが使用可能です。 詳細については、NGINX OSSとNGINX Plusによる機能比較を参照してください。
現在、NGINX Plusでは次のような複数のロードバランシングメソッドをサポートしています。
セッション維持のメソッドでは、ユーザーセッションを識別し、初回のアクセス以降は負荷分散処理を行わず、そのトラフィックを適切なアップストリーム宛に転送することができます。
詳細については、NGINX Plusのページを参照してください。
はい、サポートしています。 Cookieの挿入、変数ベースのルーティングをサポートし、セッション維持をCookie情報から認識します。 参照:NGINX Plusによるロードバランシング
HTTP/HTTPS/FastCGI/uwsgi/SCGI/memcacheの負荷分散のみをサポートしています。SMTP/POP3/IMAPトラフィックを負荷分散するのではなく、1つのアップストリームにプロキシおよびルーティングします。
アクティブヘルスチェック機能を提供しています。
NGINX Plusは、静的コンテンツと動的コンテンツの両方に対して非常にスケーラブルなキャッシュエンジンを備えています。キャッシングは、HTTP / FastCGI / uwsgi / SCGIなどのすべてのプロキシモード/プロトコルでサポートされています。キャッシュされたコンテンツはハイブリッドキャッシュに保存されます。ホットコンテンツはメモリに保存され、すべてのコンテンツはディスク上のキャッシュに保存され、ソフトウェアの再起動や再起動後も保持されます。詳細については、NGINX Plusによるコンテンツキャッシングを参照してください。
はい。NGINX Plusは、特定のURLまたはワイルドカードの一致に基づく完全なキャッシュ無効化をサポートしています。参照:NGINX Plusの機能:キャッシュ
NGINX Plusでは、サポート力に定評のある(受賞歴のある)NGINXエンジニアの優れたサポートに加え、アクティブヘルスチェック、セッション維持、JWT認証など、NGINXオープンソースでは利用できない独自の高度な機能が含まれています。
詳細については、NGINX PlusとNGINXオープンソースの機能比較をご覧ください。
NGINX Plusは、エンタープライズ向けに開発され信頼の高いテクニカルサポートの提供と拡張機能を備えた商用製品です。 NGINXをすでにお使いいただいているユーザ様は、さらに高度な負荷分散メソッドの活用や、APIの高度な構成やキャッシュ管理、セッション維持、アプリケーションに最適なヘルスチェック機能など、さらに商用向けにプラスされた高度な機能を活用し、用途を広げることができます。
NGINX Plusの最も一般的な利用目的は次のとおりです。
はい、可能です。実際、NGINXは長年、Node.jsの優先プロキシ/フロントエンドとして使用されてきました。 NGINX PlusおよびWebSocketプロトコルの使用について説明している次の記事をご参照ください:WebSocketsプロキシとしてのNGINX(英語)
はい、可能です。 NGINX PlusはオープンソースのNGINXソフトウェアに基づいており、Amazon Web Services(AWS)の全ウェブサイトの35%以上で使用されています。 NGINX AMI(Amazon LinuxおよびUbuntu用)と、独自のAMIまたはVMの上で使用できるスタンドアロン(BYOLのような)サブスクリプションの両方を提供しています。 AWS Marketplaceの製品リンクは次のとおりです。
[編集者:2015年現在、2つの追加のAMIが利用可能です(最新の情報はお問合せください):
AWS Marketplaceには、現在「試用版」モードもあります。詳細については、Amazon EC2でのNGINX Plusの使用開始を参照、またはnginx.co.jp問合せフォームより最新情報をご確認ください。
はい、可能です。Amazon Elastic Load Balancing(ELB)の代わりにNGINX Plusを安全に使用することができます。特に、アプリケーションに対し、非常に細かく高度に構成可能なリクエストルーティング、正確なロギング、SSL終端、キャッシング、接続/帯域幅管理の機能などが必要な場合に有効です。NGINX Plusは、ELBとバックエンドサーバーの間でも使用できます。
可能です。CloudFrontは非常に分散されたアーキテクチャであり、世界中の何千ものエッジノードを網羅しています。そのため、機能としてNGINX Plusは非常に強力なエッジキャッシングソリューションとして使うことが可能です。
NGINXは、ストリーミングメディア機能がバックエンドサーバー(NGINXなど)によって処理される場合に、ストリーミングメディアのプロキシに使用できますが、NGINX Plusストリーミングメディア拡張機能は、直接接続されたストレージからのみコンテンツをストリーミングするためのものです。ビデオコンテンツを取り込む別の方法は、RTMPを使用する方法です。
はい、可能です。NGINX PlusはHTTPビデオ配信用の非常に人気のあるソリューションであり、WowzaまたはAdobe製品に代わる優れた高性能、拡張性、コスト効率の高い代替品です。
NGINX Plusは、Webアクセラレーションソリューションとして有名です。システム(ERP/CRM/Eコマースなど)が通信プロトコルとしてHTTPを使用している場合、NGINX Plusはさまざまな最適化を使用して、アプリケーションバックエンドの不要な負荷を減らし、高可用性を改善し、レイテンシを減らし、全体的に高いパフォーマンスを向上させるため、様々な最適化を採用しています。 NGINX Plusは、アプリケーションスタックに次の高速化手法を導入しています。