Alteryx Connectにhttpsでアクセスしたい!AWS Certificate Managerで無償のSSL証明書を取得してALB経由でConnectへアクセスしてみた

2020.02.04

Alteryx社が提供するデータカタログ製品Alteryx Connectは、Webブラウザから組織内の情報資産を確認可能です。

Webブラウザ経由でアクセスするのであれば、SSL化してhttpsアクセスするように構築したいですよね。Alteryx ConnectをAmazon EC2上に構築されている方であれば、証明書の更新も自動で行えて証明書自体に利用費のかからないACM(AWS Certificate Manager)を利用するのが便利でおすすめです。

もくじ

前提条件

本エントリを書くにあたって使用した環境は以下の通り。

  • Alteryx Connect 2019.4
  • Windows Server 2019 Datacenter on EC2

構成図は以下の通りです。

ACMを使ってAlteryx ServerをSSL化する際はALB-EC2間をポート443で通信せざるを得なかったのですが、Alteryx ConnectはALB-EC2間はポート80で通信させるように構成します。

SSL証明書を取得してALB(Application Load Balancer)とターゲットグループを作成する

とにもかくにもSSL証明書が必要です。AWS上にAlteryx Connectを構築されている方であれば、ACM(AWS Certificate Manager)を利用可能です。今回は.netのドメインをRoute 53を使って取得しており年間11ドルのコストがかかっているものの、SSL証明書自体にコストはかかりません。

Route 53でドメインを取得する~SSL証明書を取得する方法は以下をご参照ください。

Alteryx ServerをSSL化させたい!AWS Certificate Managerで無償のSSL証明書を取得してGalleryにALB経由でアクセスする環境を作ってみた | Developers.IO

ACM(AWS Certificate Manager)はALB(Application Load Balancer)に適用されるため、ALBとターゲットグループを作成していきましょう。

AWSマネジメントコンソールよりターゲットグループの作成を選択し、以下項目を入力します。

項目 説明
プロトコル HTTP
ポート 80
(ヘルスチェックの設定)プロトコル HTTP
(ヘルスチェックの設定)パス /login

ターゲットグループができたらリスナーを追加しておきます。

次にロードバランサーを作成します。今回使用するのはApplication Load Balancer(ALB)です。

ロードバランサーのプロトコルはHTTPS(443)を、アベイラビリティゾーンを2つ以上選択します。

次に、証明書を選択します。「ACMから証明書を選択する(推奨)」を選択し、ドロップダウンリストから作成した証明書を選択します。

セキュリティグループは任意のものを指定します。今回の検証では新しく作成してみました。ポート443でアクセスできる設定にしておくのをお忘れなく。

ターゲットグループを選択します。先ほど作成したものをドロップダウンリストから選びましょう。

ターゲットの登録はすでにされているのでこのまま進めます。

確認後、ロードバランサーの作成が完了すると以下のような画面が表示されます。

Route 53でレコードセットの生成をする

レコードセットを作成し、任意のサブドメインでAlteryx Connectにアクセスできるような環境を作ります。Route 53の画面に移動し、ホストゾーンからレコードセットの作成を選びます。

名前には任意のサブドメインを入力し、エイリアス先に先ほど作成したALBを指定して保存します。

今回はconnect-test.cm-ayx.netというドメインでアクセスできるように設定しました。

ALB経由でのみAlteryx Connectにアクセス可能にする

Alteryx ConnectのインストールされたEC2に直接アクセスさせず、ALB経由でのみアクセスを許可するようにセキュリティグループに変更を加えておきましょう。必要な作業はEC2側のセキュリティグループにALBのセキュリティグループを追加することです。

ALBのセキュリティグループをコピーして……

Alteryx ConnectのインストールされたEC2のセキュリティグループに入力します。タイプはHTTPを選択してください。

Alteryx Connectの設定をする

Alteryx Connect側での設定はBase URLを設定するだけです。Alteryx Connect自体のインストール方法については以下をご参照ください。

Alteryx Connect 2019.3インストール手順(on Amazon EC2/Windows Server 2019 R2) | Developers.IO

Alteryx ConnectをインストールしたEC2インスタンス自体はSSL化する必要はありませんので、Set up SSLのチェックボックスには何もつけずにインストールを進めてください。

初期設定時のConfig WizardでもBase URLを設定できますが、もう初期設定済みだという場合はAdministration Console→Connect Configuration→Instance SettingsにURLを入力できます。

設定完了後、指定したhttps始まりのURLでAlteryx Connectにアクセスできるようになりました!

まとめ

ACMを使用してSSL証明書を取得し、ALB経由でAlteryx Connectにアクセスする環境を作ってみるの巻でした。ドメイン自体に費用はかかるものの、ACMで取得するSSL証明書自体に費用がかからないのはうれしいですね。余談ですが、同じような構成でAlteryx Serverの環境を構築しようとして大変大変苦労したので、Alteryx Connectはすんなり環境構築できてほっとしました。ブログの中でも触れていますが、Alteryx Serverを同様の手順でSSL化させたい際は以下のエントリをご参照ください。

Alteryxの導入なら、クラスメソッドにおまかせください

日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。 alteryx_960x400