openshift に weave scope をインストールしたときの"No API token found"エラーの解決方法
あらまし
- openshift に weave scope をインストールしてみたが,動かなかった.
- "No API token found" というエラーがでていた.
- 最終的に,権限を設定するコマンドを修正したら動作した.
- 環境 2019/07/26 時点での情報
- OpenShift: 3.1.1
- weave scope: 1.11.3
- ガイド通りにインストールしても,起動しない
Installing Weave Scope / OpenShift の通りに実行しても,立ち上がらない.
$ oc login -u system:admin
$ oc new-project weave
$ oc adm policy add-cluster-role-to-user cluster-admin -z weave-scope
$ oc adm policy add-scc-to-user privileged -z weave-scope
$ oc adm policy add-scc-to-user anyuid -z default
$ oc apply -f 'https://cloud.weave.works/k8s/scope.yaml'
エラーなく終わるが,必要なpodが起動していない...
問題判別
$ oc describe ds
...
Error creating: No API token found for service account "default", retry after the token is automatically created and added to the service account
どうやら,何かの権限が足りないらしい.
解決策
試行錯誤の結果, ポリシー変更のコマンドの対象を default
から weave-scope
に変更してから apply
したら,インストールに成功した.
$ oc adm policy add-scc-to-user anyuid -z weave-scope
$ oc apply -f 'https://cloud.weave.works/k8s/scope.yaml'