デフォルトでは、HTTPS はポートが 443 であると想定します。つまり、https://looker.yourdomain.com
はユーザーが https://looker.yourdomain.com:443
を入力したときと同じように自動的に処理されます。ただし、標準の HTTPS ポート(443)を使用する場合は、root として Looker を実行する必要があります。これはサポート対象外で、おすすめしません。
一つは、ユーザーが Looker にアクセスするときに、URL の一部としてポート番号を指定することです。たとえば、ポート 9999 を使用している場合は、https://looker.yourdomain.com:9999
と入力します。
ユーザーのために、https://looker.yourdomain.com
を入力して適切なポートを取得できるように、別のデフォルト ポートを設定することをおすすめします。Looker のデフォルト ポートを設定するか、いくつかの方法でトラフィックを別のポートにリダイレクトできます。
--port=<i>
Looker 起動オプションを使用して、目的のポート(--port=9999
など)を指定します。このオプションについては、Looker 起動オプションのドキュメント ページをご覧ください。iptables
を使用するスクリプトを作成します。xinetd
を使用します。- Nginx リバース プロキシ サーバーを使用する。
- ロードバランサを使用する。
ブラウザがリクエストをキャンセルしたことを検出すると、Looker にはデータベース クエリを停止する機能があるため、間接的(ウェブプロキシ経由)ではなく、パケットを Looker に直接転送する方がよいことに注意してください。
Looker ホストの iptables
iptables を使用すると、別のポートから Looker にアクセスできます。次のスクリプトは、ポート 443 から 9999 にトラフィックを転送します。これは Ubuntu Linux 用に記述されているため、別の Linux ディストリビューションを実行している場合は、変更が必要な場合があります。
スクリプト ファイルを作成します。
/etc/network/if-up.d/looker-https-forward
次の内容をファイルに追加します。
#!/bin/sh # Forward HTTPS traffic to the Looker app iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 9999
実行可能にします。
sudo chmod 755 /etc/network/if-up.d/looker-https-forward
スクリプトを実行します。このスクリプトは、次回のシステムまたはネットワークの再起動時に自動的に実行されます。
sudo /etc/network/if-up.d/looker-https-forward
Looker ホスト上の xinetd
xinetd を使用する手法もあります。
xinetd で、必要なすべてのアドレスからの受信トラフィックが許可されていることを確認します。/etc/xinetd.conf のデフォルト セクションに以下のものを追加します。
{ only_from = 0.0.0.0 # or replace 0.0.0.0 with an IP range # (i.e., 128.0.0.0/16) if desired }
/etc/xinetd.d/lookerhttps
という名前のファイルを作成します次の内容をファイルに追加します。
# default: on # description: Redirect HTTPS/443 requests to # Looker default port 9999 service https { disable = no id = lookerhttps socket_type = stream protocol = tcp user = root wait = no redirect = 127.0.0.1 9999 }
リバース プロキシ サーバー
Looker ではリバース プロキシを使用できます。推奨されるリバース プロキシ サーバーは Nginx です。これは、Google がテストを行い、完全にサポートしている唯一のリバース プロキシですが、他の選択肢を必ずしも禁止していません。サンプルの Nginx 構成については、サンプル Nginx 構成のドキュメントをご覧ください。
Apache リバース プロキシにはバグがあり、Looker が接続を正常に閉じない原因となっています。つまり、ユーザーがキャンセルした場合でも、すべてのデータベース クエリは完了するまで実行されます。このため、Looker では Apache リバース プロキシを使用しないでください。
ロードバランサ
多数のロードバランサ ソリューションが用意されています。大まかに言うと、ロードバランサはポート 443 でリッスンし、すべてのリクエストをポート 9999 で Looker に転送するように構成されます。この場合、SSL サーバー証明書はロードバランサにインストールされます。
次のステップ
ポート転送を構成したら、Looker サポートによるデプロイへのアクセスを許可できます。