問題タブ [kubernetes]
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.
centos - コンテナー内のアプリケーションへの Kubernetes 外部アクセス
Digital Ocean のクラスターで kubernates を使用しています。
Pod のコンテナ内にアプリケーションがあります。そして、このアプリケーションに外部接続する必要があります。具体的なインスタンスにアクセスする必要があります (このアプリケーションには 10 個を超える Pod があるため)。
だから、私の質問は次のとおりです。このアプリケーションへの外部アクセスを作成するにはどうすればよいですか。
たとえば、私はパブリック IP 192.168.9.9 を持っています
また、インスタンスを含む 2 つのポッドがあります。最初のリッスン ポート 8990 とそのポッド IP は 10.0.0.1 で、2 番目のリッスン ポート 8991 とそのポッド IP は 10.0.0.1 です。
したがって、トラフィックを 192.168.9.9:8990 から 10.0.0.1:8990 および 192.168.9.9:8991 から 10.0.0.1:8991 にリダイレクトする必要があります。
はい、手動で iptables を使用して実行できます。しかし、私はそれを自動的にやりたいです。新しい Pod が立ち上がったら、iptables に記録したい。
API を使用してサービスを監視できます。
ここでポッドのIPを取得できます:
ここで私のニーズに似た解決策を見つけました。しかし、アーキテクチャ上の決定が不十分なようです。新しい Pod が起動した後、外部トラフィックを Pod に自動的にリダイレクトするより良い方法はありますか?
openshift-origin - Openshift .kubeconfig ファイルと証明書認証
私はopenshiftをいじり、できるだけ多くのドキュメントを読んでいます。それでも、デフォルトで実行される認証 (admin .kubeconfig を使用) には困惑します。
1) client-certificate-data と client-key-data は、管理者の証明書とキーと同じですか? 証明書/キー ファイルの内容が .kubeconfig と同じではないため、これを尋ねます。
2).kubeconfig (AFAIK) は、kubernetes マスターを再認証するために使用されます。しかし、OpenShift では、OpenShift マスターに対する認証です (そうですか?)。.kubeconfig を使用する理由
よろしくお願いいたします。
kubernetes - 現在、Kubernetes は自動スケーリングをサポートしていますか?
負荷 (つまり、CPU 負荷、トラフィック) の増減を監視するときに、Kubernetes はポッドの数を自動的に追加または削減できますか?
可能であれば、どのように設定できますか?
kubernetes - kube-proxy が iptables ルールのインストールに失敗しました
https://github.com/GoogleCloudPlatform/kubernetes/blob/master/examples/guestbook/README.mdに従って、kubernetes ゲストブックの例を試しています。
ステップ 6: 外部からゲストブック サイトにアクセスできるように json ファイルを変更しました。変更は次のとおりです: 10.11.22.33 を自分の IP に置き換え、行 ""createExternalLoadBalancer": true" を削除します。
http://<my ip>:8000
ブラウザで試してみると、接続に失敗しました。デバッグを検索したところ、kube-proxy が iptables ルールのインストールに失敗したことがわかりました。以下のようなエラー ログがあります。ログには、iptable ルールのインストールが他のサービスでも失敗したことも示されています。
なにか提案を?
...
google-cloud-platform - コンテナに docker attach する方法 - Google Cloud Platform / Kubernetes
VM でコンテナー化されたアプリを実行しています。2 つの Docker コンテナーで構成されます。最初のファイルには、WebSphere Liberty サーバーと Web アプリが含まれています。2 番目には、PostgreSQL とアプリの DB が含まれています。
私のローカル VM では、docker runを使用して 2 つのコンテナーを開始し、次にdocker attachを使用して Web サーバー コンテナーにアタッチします。これにより、server.xml ファイルを編集して DB のパブリック ホスト IP を指定し、コンテナー内の Web サーバー。アプリは正常に動作します。
今、Google Cloud Platform にアプリをデプロイしようとしています。
- gcloud 構成 (プロジェクト、コンピューティング/ゾーン) をセットアップしました。
- クラスタを作成しました。
- 両方のコンテナーを指定する JSON ポッド構成ファイルを作成しました。
- ポッドを作成しました。
- ポッド構成ファイルで指定されたポートのファイアウォールを開きました。
この時点で:
- ポッド ( gcloud preview container kubectl get pods ) を見ると、両方のコンテナが実行されていることがわかります。
- クラスタに SSH 接続し ( gcloud compute ssh xxx-mycluster-node-1 )、sudo docker psを発行すると、実行中のデータベース コンテナが表示されますが、ウェブサーバー コンテナは表示されません。sudo docker ps -lを使用すると、実行されていない Web サーバー コンテナーを確認できますが、10 秒ごとに開始と終了を試み続けます。
そのため、server.xml を更新して Liberty サーバーを開始する必要がありますが、このレルムでそれを行う方法がわかりません。ローカル VM と同じように Web サーバー コンテナーに接続できますか? どんな助けでも大歓迎です。ありがとう。
redis - HAProxy IP 構成を動的に設定するにはどうすればよいですか?
Kubernetes を使用して Redis クラスターをデプロイしました。現在、HAProxy を使用して負荷分散を試みています。静的 IP がある場合、HAProxy は redis クラスターの負荷分散に最適です。ただし、kubernetes を使用する場合、これはありません。フェイルオーバーのテスト中、Redis と Kubernetes はそれぞれ新しいマスターの選択と新しいポッドのデプロイを処理します。ただし、kubernetes は新しいポッドに新しい IP を選出します。この新しい IP を HAProxy ヘルスチェックに挿入し、古いマスター IP を削除するにはどうすればよいでしょうか?
私は次の設定をしています。
これは、 haproxy ブログで説明されているセットアップと非常によく似ています。
kubernetes - クラスタ マスターに別の VM タイプを選択し、ノード数を変更する
クラスタ マスターに特定の vm タイプを指定するにはどうすればよいですか (非アクティブなノードに対してハイ メモリ インスタンスを使用したくありません)。また、クラスタにノードを追加して vm のタイプを選択する方法はありますか? (これで最初の問題は解決できます)