iRule LXにおける概要
iRule LXとは
iRule LX機能は、Node.jsの機能を活用して、BIG-IPベースのプログラミングができる機能です。
従来のiRuleからプログラムできる幅を広げるために、
“Node.jsでプログラムを呼び出すメカニズム” が追加されています。
iRule LXの基本的な設定
LX Workspace を作成する
LX Workspaceとは、Node.jsに対応するワークスペース です。
このワークスペースへ、以下をインストールすることで、iRule LX機能を使用することができます。
このワークスペースを使用し、仮想サーバー上でスクリプトが機能するよう、各種コードを構成していきます。
iRule を作成する
iRuleとは、TCL言語で作成できるF5独自のスクリプトのことです。
ここで作成するスクリプトとしては、主にNode.jsコードを呼び出すためのスクリプトを作成します。
RPC(Remote Procedure Call)
RPCとは、iRuleで作成されたプログラムを呼び出し、実行させるための技術です。
本来、BIG-IPで作成する、TMM(TCL iRule)とNode.js(JavaScript) には、互換性がありませんが、
LX Workspaceでは、RPC規格を採用しているため、
RPCでデータを送受信し合い、各々のコマンドで処理を実行することができます。
Node.js
Node.jsとは、JavaScriptコードを実行するためのアプリケーションです。
ここでは、Node.jsから、Big-IPへのデータパスをプログラムしていきます。
Extenstions を追加する
Extentionsとは、いわゆるJavaScript実行環境を指しており、
実行するNode.jsコードを作成するための環境です。
拡張機能の追加後は、デフォルトで、F5リポジトリから、
ライブラリやモジュールなど詰まったNode.jsパッケージがインストールされます。
その際、生成されるサンプルコード(index.js)を編集して、JavaScriptを実行します。
Node.jsパッケージに含まれるモジュールによって、プログラム内容を応用することもできますので、
Extentionsへ、GitHubからNode.jsパッケージをインストールして、そのサービスも適用することができます。
※インストールしたパッケージ上でJSファイルを作成した場合でも、
最終的には、その内容をF5のデフォルトサンプルコード(index.js)へ貼り付けて、
このindex.js(F5のデフォルト生成ファイル)を、実行ファイルとするのが一般的です。
LX Plugin を追加する
LX Pluginとは、Node.jsコードがアクティブになるためのプラグインです。
JavaScriptを実行するLX Workspaceへ、プラグインを作成します。
参考サイト
いかがでしたでしょうか。
BIG-IP仕様でプログラミングするにあたって、それぞれどういう要素が必要になるのか、要点を簡単にまとめることができたと思います。開発寄りの内容になるので、インフラSEからすると少しとっつき難く、理解するのに時間がかかってしまいますが、他サービスとAPI連携する時など、様々なことに使いこなしていきたいですね。
最後まで、お読みいただきありがとうございました。
コメント