Microsoft Azure クラウドでの Layer7 API Gateway の実行

このセクションでは、Microsoft Azure クラウドで CA API Gateway イメージを実行する手順とベスト プラクティスについて説明します。 この記事はシステム管理者または同等の技術者ユーザを対象としています。
9-5
このセクションでは、Microsoft Azure クラウドで
Layer7 API Gateway
イメージを実行する手順とベスト プラクティスについて説明します。 この記事はシステム管理者または同等の技術者ユーザを対象としています。
目次
前提条件
General
  • Azure Portal アカウント(https://portal.azure.com)にアクセスできることを確認します。
  • ご使用のシステムに最新バージョンの Microsoft Azure Power Shell コマンド ライン インターフェースがインストールされていることを確認します。
  • Layer7 API Gateway
    では、DS2 以上の VM が必要です。 これらは、Premium Storage を対象とします。 VM のディスク コントローラは、少なくとも 5000 IOPS をサポートする必要があります。
Azure ツール
Gateway イメージを Azure として展開するには、以下のツールが使用されます。
  • Azure PowerShell コマンド ライン インターフェース
  • PowerShell に Azure Resource Manager に関する必要なアドオン モジュールをインストールします。
Azure への Gateway イメージの展開
Microsoft Azure Resource Manager に
Layer7 API Gateway
イメージを展開するには、以下の手順に従います。
  1. リソース グループの作成
  2. Premium Storage アカウントの作成
  3. Azure ポータルへの Gateway イメージの発行
  4. ネットワーク(サブネット、NIC および仮想ネットワーク)の作成
  5. 仮想マシンの作成
  6. 仮想マシンへの Gateway イメージの展開
: PowerShell CLI でコマンドを実行します。
開始する前に、Azure ポータルにログインしてから、以下のコマンドを使用してサブスクリプション ID を設定する必要があります。
Login-AzureRmAccount;
Set-AzureRmContext –SubscriptionId <subscriptionid>;
例: Set-AzureRmContext –SubscriptionId 03a51c26-273a-4669-97bc 48bc08c047de;
リソース グループの作成
リソース グループは、Azure ソリューションの関連リソースが格納されるコンテナです。 リソース グループには、ソリューションのすべてのリソース、またはグループとして管理するリソースのみを含めることができます。
以下のコマンドを使用して、リソース グループを作成します。
$rgName=”Resource_grp_name”;
$location=”Location”;
New-AzureRmResourceGroup -Name $rgName -Location $location;
Premium Storage アカウントの作成
Premium Storage の使用を開始するには、Premium Storage アカウントを作成する必要があります。 種類を「Premium_LRS」に指定して、Premium Storage アカウントを作成できます。ここでの LRS は Locally-redundant storage (LRS)レプリケーションです。
以下のコマンドを使用して、Premium Storage アカウントを作成します。
$storageName = "storage_name";
$storageType = "Premium_LRS";
$storageacc = New-AzureRmStorageAccount -ResourceGroupName $rgName –Name $storageName -Type $storageType -Location $location;
Azure ポータルへの Gateway イメージの発行
Gateway イメージを Azure ポータルに発行するには、BLOB URL を作成して、Gateway Hyper V Cent-OS イメージの場所を設定します。 以下のコマンドを使用します。
  • 場所のパスを設定します。
    $VHD_SRC_LOC = ”<image location path>”
    例: $VHD_SRC_LOC = “C:\Users\Avn01\Desktop\images\ gateway-
    <version>
    -hyperv-centos-x86_64.vhd”
  • BOLB URL を作成します。
    $BLOB_URL = “<storageAccount>/<blobContainer>/<targetVHDName>”;
    説明
    • storage account:
      作成したストレージ アカウント名を指定します。
    • Blobcontainer:
      blob コンテナ、すなわち blob.core.windows.net を指定します。
    • targetVHDName:
      VHD のロケーション パスを指定します。
    例: $BLOB_URL=”
    https://layer7images.blob.core.windows.net/vmdepot-images/gateway-
    <version>
    -azure-centos-x8664.vhd
    ”;
  • Azure ポータルに Gateway VDH を発行します。
    Add-AzureRmVhd -ResourceGroupName $rgName -Destination $BLOB_URL -LocalFilePath $VHD_SRC_LOC;
ネットワーク(サブネット、NIC および仮想ネットワーク)の作成
Azure 仮想ネットワーク(VNet)は、クラウド上の独自ネットワークを表します。 VNet を複数のサブネットを分割できます。 サブネットは VNet での IP アドレス範囲です。 NIC は、サブネット、パブリック IP アドレス、またはロード バランサに VM を接続するために使用されます。
サブネット、NIC および VNet を作成するには、以下のコマンドを使用します。
$nicname = "name_nic";
$subnetName = "name_subnet";
$vnetName = "name_vnet";
$vnetAddressPrefix = "<hostipaddress>/16";
$vnetSubnetAddressPrefix = "<hostipaddress>/24";
サブネットと仮想ネットワークを設定するには、以下のコマンドを使用します。
$pip = New-AzureRmPublicIpAddress -Name $nicname -ResourceGroupName $rgName -Location $location -AllocationMethod Dynamic;
$subnetconfig = New-AzureRmVirtualNetworkSubnetConfig -Name $subnetName -AddressPrefix $vnetSubnetAddressPrefix;
$vnet = New-AzureRmVirtualNetwork -Name $vnetName -ResourceGroupName $rgName -Location $location -AddressPrefix $vnetAddressPrefix -Subnet $subnetconfig;
$nic = New-AzureRmNetworkInterface -Name $nicname -ResourceGroupName $rgName -Location $location -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id;
Azure 仮想マシンの作成
Azure 仮想マシン(VM)では、クラウド上に VM を作成して使用することができます。 Gateway Blob を OS ディスクとして配置する VM を作成します。 Azure には複数の VM 標準サイズがあります。 複数の標準サイズの詳細については、「Cloud Service のサイズ」を参照してください。
注:
VM のサイズとして Standard_DS2 を使用することをお勧めします。
VM を作成するには、以下のコマンドを使用します。
$vmName = "VMname_vm";
$computerName = "computername_img";
$vmSize = "Standard_DS2";
$osDiskName = $vmName + "osDisk";
仮想マシンへの
Layer7 API Gateway
イメージの展開
VM を作成したら、VM に Gateway イメージを展開します。 VM に Gateway イメージを展開するには、以下のコマンドを使用します。
$vm = New-AzureRmVMConfig -VMName $vmName -VMSize $vmSize;
$vm = Add-AzureRmVMNetworkInterface -VM $vm -Id $nic.Id;
$vm = Set-AzureRmVMOSDisk -VM $vm -Name $osDiskName -VhdUri $BLOB_URL -CreateOption attach –Linux;
New-AzureRmVM -ResourceGroupName $rgName -Location $location -VM $vm -Verbose –Debug;
Azure 仮想マシンでの Gateway の設定
VM を正常に作成したら、VM の IP アドレスを使用して VM を接続します。
仮想マシンへの接続には任意の SSH クライアントを使用できます。 Windows の場合は PuTTY がよく使用されています。
SSH を介して Gateway に接続しようとすると、アカウント ロックアウトが発生するという既知の問題があります。 これが発生した場合は、「既知の問題」の「Azure クラウドで Gateway を実行する場合のアカウント ロックアウト」の記事を参照してください。
以下の手順に従います。
  1. SSH クライアントを開き、接続する VM の IP アドレスを指定します。
  2. 以下のユーザ名とパスワードを入力します。
    • ユーザ名:
      ssgconfig
    • パスワード:
      7layer
    • パスワードを忘れた場合:
      Azure VM のパスワードを忘れた場合は「Azure ユーティリティ」に説明されている Wa-agent の手順に従います。
    • パスワードの期限が切れた場合:
      パスワードが期限切れの場合は、以下のコマンドを実行してパスワードをリセットします。
      chage -M 99999 <USER>
      また、
      chage
      -l <USER>
      コマンドを使用することで変更を確認できます。 root ユーザのみがパスワードをリセットできます。
    Gateway のメイン メニューが表示されます。
  3. Gateway のメイン メニューからオプション[
    1
    (Configure system settings)]を選択します。
  4. ネットワークの詳細を設定するには、オプション [
    1
    (Configure networking and system time settings)]を選択します。
  5. ネットワーク インターフェースを設定するには、[option
    1
    (ssg_eth0)]を選択します。
  6. 起動時にインターフェースを有効にするには、「
    y
    」と入力します。
  7. IPv4 ネットワー キングを設定するには、「
    y
    」と入力します。
  8. 以下のネットワーク詳細を入力します。
    • Protocol:
      DHCP
    • DHCP Host-Name:
      <DHCP サーバのホスト名>
  9. IPv6 ネットワークを設定するには、「
    n
    」と入力します。
  10. ほかのネットワーク インターフェースを入力するには、「
    n
    」と入力します。
  11. 現在のデフォルト IPv4 ゲートウェイとインターフェースを変更するには、「
    n
    」と入力します。
  12. DHCP サーバの完全修飾ホスト名を入力します。
  13. 設定の変更を適用するには、「
    y
    」と入力します。
  14. 以下のいずれかの方法を使用してデータベースを作成します。
    • Gateway を使用してデータベースを作成します。
      Gateway のメイン メニューから、オプション
      2
      [(Display
      Layer7 API Gateway
      configuration menu)]を選択し、次にオプション
      2
      [(Create a new
      Layer7 API Gateway
      database)]を選択します。 詳細については、「[Gateway Configuration]メニュー(アプライアンス)」を参照してください。
    • Azure で MySQL のインスタンスを作成します。 手順については、Microsoft の「Azure Database for MySQL Documentation」を参照してください。
  15. Gateway のメイン メニューでオプション [R (Reboot SSG appliance)]を使用して Gateway を再起動します。
    Azure VM で Gateway が設定されます。
Policy Manager と Azure Gateway の接続
Policy Manager を Azure Gateway に接続します。
以下の手順に従います。
  1. データベース Azure VM の IP アドレスで設定した認証情報を入力します。
  2. Azure Gateway に接続します。 Policy Manager の接続の詳細については、「Policy Manager の起動」を参照してください。
Policy Manager が Azure Gateway に接続されます。