問題タブ [heapster]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scale - kubernetes autoscale がメトリクスの取得に失敗する (kube-system 名前空間にヒープスターが既にインストールされている)
vagrant と centos 7 でミニ クラスターを作成しました。kube-dns と heapster をインストールできましたが、php-apache の例で自動スケーリングをテストしようとすると、機能しません。
グラファナと制限でメトリックを確認できるので、これは奇妙です。私の kube-dns と heapster は kube-system 名前空間にあるので、動作するはずです。
私はkubernetes 1.2を持っています。誰かがそれを助けることができれば素晴らしいでしょう。
heapster のログは次のとおりです。
docker - Heapster が Kubernetes クラスター上の Kubelet からコンテナーの統計情報を取得できない
Docker ガイドを使用してローカルで Kubernetesを実行するガイドに基づいて Ubuntu (信頼できる) に Kubernetes クラスターをセットアップし、DNS をデプロイし、InfluxDB バックエンドと Grafana UI を使用して Heapster を実行しました。
Grafana を除いて、すべてがスムーズに実行されているように見えますが、グラフは表示されませんが、No datapoints
図にはメッセージが表示されます。
Docker コンテナーのログを確認したところ、Heapster が kubelet API にアクセスできない (?) ため、メトリクスが InfluxDB に永続化されていないことがわかりました。
Heapster が (ノードのループバックを介して) kubelet にアクセスするのではなく、代わりにそれ自体 (コンテナーのループバックを介して) にアクセスすることを理解させる同様の問題を説明する GitHub でいくつかの問題を見つけました。ただし、解決策を再現できません。
github.com/kubernetes/heapster/issues/1183
Heapster ポッドにホスト ネットワークを使用するか、ノードが 127.0.0.1 ではない通常の名前を持つようにクラスターを構成する必要があります。現在の問題は、ノード名が Heapster localhost に解決されることです。さらに問題が発生した場合は、再開してください。
-@piosz
- Heapster ポッドの「ホスト ネットワーク」を有効にするにはどうすればよいですか?
- 127.0.0.1 ではない通常の名前を使用するようにクラスター/ノードを構成するにはどうすればよいですか?
github.com/kubernetes/heapster/issues/744
hyperkube でより良いオプションを使用して修正しました。助けてくれてありがとう!
-@ddispaltro
- で kubelet のオプション フラグを追加/変更することで、この問題を解決する方法はあります
docker run
か?
(このGitHubの問題の最後の回答で提案されているように)設定を試み--hostname-override=<host's eth0 IP>
まし--address=127.0.0.1
たが、Heapsterのコンテナログには次のように記載されています:
I0701 08:23:05.000566 1 manager.go:79] Scraping metrics start: 2016-07-01 08:22:00 +0000 UTC, end: 2016-07-01 08:23:00 +0000 UTC E0701 08:23:05.000962 1 kubelet.go:279] Node 127.0.0.1 is not ready E0701 08:23:05.003018 1 kubelet.go:230] error while getting containers from Kubelet: failed to get all container stats from Kubelet URL "http://<host's eth0 IP>:10255/stats/container/": Post http://<host's eth0 IP>/stats/container/: dial tcp <host's eth0 IP>:10255: getsockopt: connection refused
名前空間の問題
default
この問題は、Kubernetes API を名前空間で実行し、Heapster を で実行していることが原因kube-system
でしょうか?
OS: Ubuntu 14.04.4 LTS (信頼できる) | Kubernetes: v1.2.5 | ドッカー: v1.11.2
api - Kubernetes で Heapster API を使用するための前提条件
Heapster API を使用して Kubernetes に関連するメトリクスを取得する前に、Heapster のサービスを開始する以外に、実行する必要がある前提条件の手順は何ですか? ありがとう。
docker - Kubernetes は、すでに使用されている NodePort のために Heapster および Grafana サービスを削除し続けます
Docker経由でローカルにUbuntu(信頼できる)でKubernetesクラスターを実行しています。
Vagrant を使用して Ubuntu VM を作成しているためdocker run
、公式の Kubernetes ガイドのコマンドを少し変更する必要がありました。
さらに、リバース プロキシを実行すると、VM の外部からブラウザーを介してクラスターのサービスにアクセスできます。
これらの手順は正常に機能し、最終的にブラウザーで Kubernetes UI にアクセスできるようになりました。
ここで、このガイドで説明されているように、InfluxDB バックエンドと Grafana UI を使用して、その Kubernetes クラスターで Heapster を実行したいと思います。そのために、Heapster リポジトリのクローンを作成し、以下grafana-service.yaml
を追加して外部 IP を使用するように構成しましたtype: NodePort
。
サービス、rcs などの作成:
ご覧のとおり、すべてがスムーズに実行されているように見えます。ブラウザー経由でhttp://localhost:8080/api/v1/proxy/namespaces/kube-system/services/monitoring-grafana/にある Grafana の UI にもアクセスできます。
ただし、約 1 分後、Heapster と Grafana の両方のエンドポイントがkubectl cluster-infoから消えます。
ブラウザ出力:
ポッドはまだ稼働中です...
...しかし、Heapster と Grafana のサービスはなくなりました:
の出力を確認しているときkubectl cluster-info dump
に、次のエラーを発見しました。
Heapster と Grafana のサービスとエンドポイントは、 nodePort
既に使用されているため削除されたようです。nodePort
で指定された を指定しませんでしたgrafana-service.yaml
。これは、Kubernetes がまだ使用されていないものを選択できることを意味します。では、どうしてこれがエラーになるのでしょうか? また、これを修正する方法はありますか?
OS: Ubuntu 14.04.4 LTS (信頼できる) | Kubernetes: v1.3.0 | ドッカー: v1.11.2
kubernetes - heapster で認証ファイルを使用する方法
keystone を使用して認証が行われる安全な kubernetes クラスターを実行しています。今、私は heapster を実行しようとしていますが、次のようなエラーが発生しています:
認証ファイルを heapster に渡す方法と、そのファイルに何を含める必要があるかを知りたいです。または、ヒープスターに資格情報を提供する他の方法はありますか?
ティア。
kubernetes - Minikube を使用して監視グラファナ サービスを作成できない
私は Minikube を使用しており、Heapster を Grafana と Influxdb で構成しようとしています。こちらの手順に従い、監視グラファナ サービスを除いて、すべての ReplicationController、Pod、およびサービスが正常に作成されました。
タイプを追加するために grafana-service.yaml のみを変更しました: NodePort:
kubectl create -f grafana-service.yaml と入力すると、Kubernetes がサービスを正常に作成しているように見えますが、実際にはそうではありません。それは単にそれを作成し、10 秒後に消えます。
コンテナー (InfluxDB、Grafana、および Heapter) のログを既に確認しましたが、すべて問題ないようです。
また、同じ結果で Kubernetes ダッシュボードからサービスを作成しようとしました。それはサービスを作成し、ほとんどすぐにサービスはありません。
巨大な投稿で申し訳ありません。あなたが私を助けてくれることを願っています。ありがとう。
編集
@Pixel_Elephant に感謝します。grafana-service.yaml と heapster-service.yaml の両方のファイルでラベル 'kubernetes.io/cluster-service: 'true'' を削除すると、サービスは存続する可能性があります。
もう 1 ステップ: influxdb-grafana-controller.yaml で次のように変更します。
為に
最終的にhttp://192.168.99.100/ < NODE_PORT>/の Grafana ダッシュボードにアクセスできました。
kubernetes - 自動スケーリング (HPA) が CPU 消費量を取得できませんでした: オブジェクトを []v1alpha1.PodMetrics 型の Go 値に非整列化できません
Kubernetes クラスターでHPA (水平ポッド自動スケーリング)をテストしようとしています。Heapster は稼働しており、Grafana でメトリックを確認できるので、うまく機能していると思います。また、DNS アドオンは完全に機能しています。
HPA の内部を見ると、「CPU 消費と要求を取得できませんでした: ヒープスターの応答を非整列化できませんでした: json: タイプ []v1alpha1.PodMetrics の Go 値にオブジェクトを非整列化できません」というエラーが表示されます。
Heapster のログには次のように記載されています。
私のクラスターには 2 つのノードがあり、マスター ノードもノードです。より詳しい情報:
Heapster 版と Kubernetes 版の問題でしょうか。今日、Heapster の git clone を行ったので、最新のリリースです。