F5 iRule LXの始め方

この記事は約3分で読めます。

iRule LXにおける概要

iRule LXとは

iRule LX機能は、Node.jsの機能を活用して、BIG-IPベースのプログラミングができる機能です。
従来のiRuleからプログラムできる幅を広げるために、
“Node.jsでプログラムを呼び出すメカニズム” が追加されています。
 

iRule LXの基本的な設定

LX Workspace を作成する

LX Workspaceとは、Node.jsに対応するワークスペース です。
このワークスペースへ、以下をインストールすることで、iRule LX機能を使用することができます。

  • TCL iRule(RPC経由の場合)の作成
  • LX Plugin の追加
  • Extentions(拡張機能)の追加

このワークスペースを使用し、仮想サーバー上でスクリプトが機能するよう、各種コードを構成していきます。

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へ、プラグインを作成します。
 

参考サイト

F5 iRule LX – 1

F5 iRule LX – 2

F5 iRule LX – 3 (RPCサーバ)
 


いかがでしたでしょうか。

BIG-IP仕様でプログラミングするにあたって、それぞれどういう要素が必要になるのか、要点を簡単にまとめることができたと思います。開発寄りの内容になるので、インフラSEからすると少しとっつき難く、理解するのに時間がかかってしまいますが、他サービスとAPI連携する時など、様々なことに使いこなしていきたいですね。

最後まで、お読みいただきありがとうございました。

コメント

タイトルとURLをコピーしました