Red Hat OpenShift プラットフォームへの Qlik Sense Enterprise on Kubernetes のインストール

Qlik Sense EnterpriseRed Hat OpenShift Kubernetes プラットフォームにインストールするために、追加して考慮すべき事項は以下のとおりです。

  • OpenShift の既定の namespace は myproject です。
  • OpenShift は通常、独自の Docker 画像レジストリを備えています。現在すべてのチャートが global.imageRegistry に対応しているので、顧客は自分の画像レジストリからすべての画像プルをポイントすることができます。
  • OpenShift では、root として実行するコンテナーは既定では許可されていません。
  • OpenShift はクラスター全体のアクセスを阻止します。
  • OpenShift は、サービスがルートによって公開されることを期待します。
  • OpenShift は独自の認定コンテナー レジストリを備えており、認定されていないコンテナーを阻止します。
  • OpenShift 展開では、通常はインータネット アクセスは必要ありません。Qlik Sense Enterprise on Kubernetes ではインータネット アクセスが必要です。

Kubernetes クラスターをセットアップし、ローカル ツールを用意すれば、Qlik Sense EnterpriseKubernetes クラスターにインストールする準備が整います。「Qlik Sense Enterprise on Kubernetes のインストール」を参照してください。

Note: QlikRed Hat OpenShift プラットフォームへの Qlik Sense Enterprise on Kubernetes の展開に対応していますが、この展開は現在 Red Hat では認定されていません。

MiniShift の使用

OpenShift プラットフォームを実行させるには、MiniShift を使用して仮想マシン (VM) を作成し、その VM にローカルのシングルノード OpenShift クラスタをプロビジョニングします。RedHat では、OpenShift プラットフォームを実行するために、MiniShift をシンプルとして提供しています。MiniShifthttps://github.com/minishift/minishift で入手できます。

  1. MiniShift の最新バージョンをダウンロードします。
  2. これをディレクトリに解凍して、このディレクトリをパスに追加します。
  3. helm (必須) および kubectl (オプション) をインストールします。
  4. MiniShift のリソース設定を行い、Qlik Sense Enterprise on Kubernetes を完全に展開できる十分なリソースがあることを確認します。次のコマンドを使用します。

    minishift config set memory 8192

    minishift config set cpus 4

  5. 次のコマンドを使用して MiniShift を起動します。

    minishift start --vm-driver=virtualbox

  6. 次のコマンドを使用して環境を構成します。

    minishift oc-env

  7. 新しいプロジェクトを作成します。プロジェクトは、Kubernetes namespace の OpenShift と同義のものです。

    Note: この例では、kubectl の代わりに oc を使用することに注意してください。ほとんどの場合これらは同じ内容を実行しますが、oc は、kubectl ではできないことをいくつか実行します。

    oc new-project tiller

  8. tiller が見つかる場所を helm が分かるように変数を設定します。

    $Env:TILLER_NAMESPACE="tiller"

  9. helm クライアントを設定します。

    helm init --client-only

  10. tiller を OpenShift にインストールするには特殊な処理が必要です。OpenShift には、それを実行するための yaml ファイルが備えられています。次のコマンドを実行します。

    oc process -f https://github.com/openshift/origin/raw/master/examples/helm/tiller-template.yaml -p TILLER_NAMESPACE="$Env:TILLER_NAMESPACE" -p HELM_VERSION=v2.9.1 | oc create -f -

  11. 準備ができていることを確認するため、次のコマンドを実行します。

    oc rollout status deployment tiller

  12. 次のコマンドを使用して、Qlik 展開のプロジェクトを作成します。

    oc new-project qlik

  13. セキュリティを設定するため、次のコマンドを使用してシステム管理者としてログインする必要があります。

    oc login -u system:admin

  14. 次のコマンドを実行して、必要なセキュリティ設定を行います。

    oc policy add-role-to-user edit "system:serviceaccount:$($Env:TILLER_NAMESPACE):tiller"

    oc policy add-role-to-user cluster-admin "system:serviceaccount:$($Env:TILLER_NAMESPACE):tiller"

    oc adm policy add-scc-to-user anyuid "system:serviceaccount:$($Env:TILLER_NAMESPACE):tiller"

    oc adm policy add-cluster-role-to-user cluster-admin "system:serviceaccount:$($Env:TILLER_NAMESPACE):tiller"

    oc adm policy add-scc-to-group anyuid system:authenticated

    oc adm policy add-scc-to-user privileged "system:serviceaccount:$($Env:TILLER_NAMESPACE):tiller"

    oc adm policy add-scc-to-user privileged system:serviceaccount:qlik:default

    oc adm policy add-role-to-user admin system:serviceaccount:qlik:default

  15. ストレージを定義し、次のコマンドを使用して書き込み可能にします。

    minishift ssh -- "sudo chmod -R o+rwx /var/lib/minishift/base/openshift.local.pv*"

  16. 次のコマンドを使用して、開発者としてログインします。

    oc login -u developer

  17. Qlik helm リポジトリを追加し、次のコマンドを使用して更新します。

    helm repo add qlik https://qlik.bintray.com/stable

    helm repo update

  18. これで、minishift.yaml ファイルを使用して Qlik Sense Enterprise on Kubernetes を展開できるようになりました。

    helm upgrade --install qsefe qlik/qsefe --set devMode.enabled=true,engine.acceptEULA="yes" -f C:\dev\minishift.yaml

  19. 展開を監視するには、kubectl get pods または oc get pods を実行します。