[解決済み] Podをスケジュールするためのノードがない - VMを使用せずにローカルでKubernetesを実行する
2022-02-19 16:08:26
質問
私はKubernetesの初心者です。今まではdocker-composeを使っていました(1台のマシンで)。 今、私は自分の仕事をノードのクラスタに費やし、Kubernetesの機能(サービス発見、ロードバランシング、ヘルスチェックなど)を得たいと考えています。
私はローカルサーバ (RHEL7) で作業しており、最初の Kubernetes 環境を実行しようとしています (以下はその例です)。 このドキュメント ) が、うまくいきません。
走っています。
hack/local-up-cluster.sh
とすると、(別の端末で)。
cluster/kubectl.sh config set-cluster local --server=http://127.0.0.1:8080 --insecure-skip-tls-verify=true
cluster/kubectl.sh config set-context local --cluster=local
cluster/kubectl.sh config use-context local
そして
cluster/kubectl.sh create -f run-aii.yaml
私のrun-aii.yamlです。
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: aii
spec:
replicas: 1
template:
metadata:
labels:
run: aii
spec:
containers:
- name: aii
image: localhost:5000/dev/aii
ports:
- containerPort: 5144
env:
- name: KAFKA_IP
value: kafka
volumeMounts:
- mountPath: /root/script
name: scripts-data
readOnly: true
- mountPath: /home/aii/core
name: core-aii
readOnly: true
- mountPath: /home/aii/genome
name: genome-aii
readOnly: true
- mountPath: /home/aii/main
name: main-aii
readOnly: true
- name: kafka
image: localhost:5000/dev/kafkazoo
volumeMounts:
- mountPath: /root/script
name: scripts-data
readOnly: true
- mountPath: /root/config
name: config-data
readOnly: true
- name: ws
image: localhost:5000/dev/ws
ports:
- containerPort: 3000
volumes:
- name: scripts-data
hostPath:
path: /home/aii/general/infra/script
- name: config-data
hostPath:
path: /home/aii/general/infra/config
- name: core-aii
hostPath:
path: /home/aii/general/core
- name: genome-aii
hostPath:
path: /home/aii/general/genome
- name: main-aii
hostPath:
path: /home/aii/general/main
追加情報です。
[aii@localhost kubernetes]$ cluster/kubectl.sh describe pod aii-4073165096-nkdq6
Name: aii-4073165096-nkdq6
Namespace: default
Node: /
Labels: pod-template-hash=4073165096,run=aii
Status: Pending
IP:
Controllers: ReplicaSet/aii-4073165096
Containers:
aii:
Image: localhost:5000/dev/aii
Port: 5144/TCP
QoS Tier:
cpu: BestEffort
memory: BestEffort
Environment Variables:
KAFKA_IP: kafka
kafka:
Image: localhost:5000/dev/kafkazoo
Port:
QoS Tier:
cpu: BestEffort
memory: BestEffort
Environment Variables:
ws:
Image: localhost:5000/dev/ws
Port: 3000/TCP
QoS Tier:
cpu: BestEffort
memory: BestEffort
Environment Variables:
Volumes:
scripts-data:
Type: HostPath (bare host directory volume)
Path: /home/aii/general/infra/script
config-data:
Type: HostPath (bare host directory volume)
Path: /home/aii/general/infra/config
core-aii:
Type: HostPath (bare host directory volume)
Path: /home/aii/general/core
genome-aii:
Type: HostPath (bare host directory volume)
Path: /home/aii/general/genome
main-aii:
Type: HostPath (bare host directory volume)
Path: /home/aii/general/main
default-token-hiwwo:
Type: Secret (a volume populated by a Secret)
SecretName: default-token-hiwwo
Events:
FirstSeen LastSeen Count From SubobjectPath Type Reason Message
--------- -------- ----- ---- ------------- -------- ------ -------
37s 6s 6 {default-scheduler } Warning FailedScheduling no nodes available to schedule pods
dockerイメージです。
[aii@localhost kubernetes]$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
kube-build build-47381c8eab f221edba30ed 25 hours ago 1.628 GB
aii latest 1026cd920723 4 days ago 1.427 GB
localhost:5000/dev/aii latest 1026cd920723 4 days ago 1.427 GB
registry 2 34bccec54793 4 days ago 171.2 MB
localhost:5000/dev/ws latest fa7c5f6ef83a 12 days ago 706.8 MB
ws latest fa7c5f6ef83a 12 days ago 706.8 MB
kafkazoo latest 84c687b0bd74 2 weeks ago 697.7 MB
localhost:5000/dev/kafkazoo latest 84c687b0bd74 2 weeks ago 697.7 MB
node 4.4 1a93433cee73 2 weeks ago 647 MB
gcr.io/google_containers/hyperkube-amd64 v1.2.4 3c4f38def75b 2 weeks ago 316.7 MB
nginx latest 3edcc5de5a79 2 weeks ago 182.7 MB
gcr.io/google_containers/debian-iptables-arm v3 aca727a3023c 5 weeks ago 120.5 MB
gcr.io/google_containers/debian-iptables-amd64 v3 49b5e076215b 6 weeks ago 129.4 MB
spotify/kafka latest 30d3cef1fe8e 3 months ago 421.6 MB
gcr.io/google_containers/kube-cross v1.4.2-1 8d2874b4f7e9 3 months ago 1.551 GB
wurstmeister/zookeeper latest dc00f1198a44 4 months ago 468.7 MB
centos latest 61b442687d68 5 months ago 196.6 MB
centos centos7.2.1511 38ea04e19303 5 months ago 194.6 MB
hypriot/armhf-busybox latest d7ae69033898 6 months ago 1.267 MB
gcr.io/google_containers/etcd 2.2.1 a6cd91debed1 6 months ago 28.19 MB
gcr.io/google_containers/pause 2.0 2b58359142b0 7 months ago 350.2 kB
gcr.io/google_containers/kube-registry-proxy 0.3 b86ac3f11a0c 9 months ago 151.2 MB
Podをスケジュールするためのノードがない」とはどういう意味ですか?また、物理マシンのIPはどこで、どのように指定すればよいのでしょうか?
EDIT
[aii@localhost kubernetes]$ kubectl get nodes
NAME STATUS AGE
127.0.0.1 Ready 1m
とします。
[aii@localhost kubernetes]$ kubectl describe nodes
Name: 127.0.0.1
Labels: kubernetes.io/hostname=127.0.0.1
CreationTimestamp: Tue, 24 May 2016 09:58:00 +0300
Phase:
Conditions:
Type Status LastHeartbeatTime LastTransitionTime Reason Message
---- ------ ----------------- ------------------ ------ -------
OutOfDisk True Tue, 24 May 2016 09:59:50 +0300 Tue, 24 May 2016 09:58:10 +0300 KubeletOutOfDisk out of disk space
Ready True Tue, 24 May 2016 09:59:50 +0300 Tue, 24 May 2016 09:58:10 +0300 KubeletReady kubelet is posting ready status
Addresses: 127.0.0.1,127.0.0.1
Capacity:
pods: 110
cpu: 4
memory: 8010896Ki
System Info:
Machine ID: b939b024448040469dfdbd3dd3c3e314
System UUID: 59FF2897-234D-4069-A5D4-B68648FC7D38
Boot ID: 0153b84d-90e1-4fd1-9afa-f4312e89613e
Kernel Version: 3.10.0-327.4.5.el7.x86_64
OS Image: Red Hat Enterprise Linux
Container Runtime Version: docker://1.10.3
Kubelet Version: v1.2.4
Kube-Proxy Version: v1.2.4
ExternalID: 127.0.0.1
Non-terminated Pods: (0 in total)
Namespace Name CPU Requests CPU Limits Memory Requests Memory Limits
--------- ---- ------------ ---------- --------------- -------------
Allocated resources:
(Total limits may be over 100%, i.e., overcommitted. More info: http://releases.k8s.io/HEAD/docs/user-guide/compute-resources.md)
CPU Requests CPU Limits Memory Requests Memory Limits
------------ ---------- --------------- -------------
0 (0%) 0 (0%) 0 (0%) 0 (0%)
Events:
FirstSeen LastSeen Count From SubobjectPath Type Reason Message
--------- -------- ----- ---- ------------- -------- ------ -------
1m 1m 1 {kube-proxy 127.0.0.1} Normal Starting Starting kube-proxy.
1m 1m 1 {kubelet 127.0.0.1} Normal Starting Starting kubelet.
1m 1m 1 {kubelet 127.0.0.1} Normal NodeHasSufficientDisk Node 127.0.0.1 status is now: NodeHasSufficientDisk
1m 1m 1 {controllermanager } Normal RegisteredNode Node 127.0.0.1 event: Registered Node 127.0.0.1 in NodeController
1m 1m 1 {kubelet 127.0.0.1} Normal NodeOutOfDisk Node 127.0.0.1 status is now: NodeOutOfDisk
1m 1m 1 {kubelet 127.0.0.1} Normal NodeReady Node 127.0.0.1 status is now: NodeReady
でも、空き容量があるんです。
[aii@localhost kubernetes]$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/rhel-root 47G 42G 3.2G 93% /
devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs 3.9G 3.7M 3.9G 1% /dev/shm
tmpfs 3.9G 17M 3.9G 1% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/mapper/rhel-var 485M 288M 198M 60% /var
/dev/sda1 509M 265M 245M 52% /boot
tmpfs 783M 44K 783M 1% /run/user/1000
/dev/sr0 56M 56M 0 100% /run/media/aii/VBOXADDITIONS_5.0.18_106667
ディスク容量はどのくらい必要ですか?(VMで作業しているのであまりありません)
解決方法は?
ポッドをスケジュールするための利用可能なノードがシステム内に存在しないことを意味します。以下の出力を提供してもらえますか?
kubectl get nodes
と
kubectl describe nodes
?
ローカルクラスタのドキュメントに記載されている手順を実行すると、単一ノードが得られるはずです。ノードがある(はず)のに、まだ準備ができていない場合、以下のログを見ることができます。
/tmp/kubelet.log
(今後、ローカルクラスタを使用しない場合は
/var/log/kubelet.log
を参照し、原因を探ってください。
関連
-
[解決済み】Dockerエラー:無効な参照形式:リポジトリ名は小文字でなければならない
-
[解決済み】Docker: apt-utilsのインストールに問題があります。
-
[解決済み] docker ps' と 'docker-compose ps' コマンドで異なる結果が表示される
-
[解決済み] docker ERROR: 不明なブロブ
-
ImportError: libGL.so.1: cannot open shared object file: No such file or directory--docker in-container problem reported as a error.
-
minttyを使用している場合は、プレフィックスを付けてみてください。
-
クラウドネイティブ時代に求められるコアスキル Docker Advanced (Dockerネットワーク詳解)
-
docker make image apt-get install file error debconf: unable to initialize frontend: ダイアログ
-
rancher のデプロイメントに最小限の可用性の問題はありません。
-
[解決済み】すべてのkubernetesネームスペースのすべてのPodを削除するコマンド
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Docker Networking が無効になっています。警告: IPv4 転送が無効になっています。ネットワーキングは機能しません
-
[解決済み] Ansibleタスクのタイムアウトの最大長
-
[解決済み] ドッカーコンテナで接続が拒否される
-
[解決済み] 接続するには、Dockerクライアントを昇格して実行する必要があります。
-
[解決済み] docker cp を使ってホストコンピュータから docker コンテナに rsync する方法
-
[解決済み] docker ERROR: 不明なブロブ
-
[解決済み] DockerでPillowを使用する
-
minttyを使用している場合は、コマンドの前に'winpty'を付けてみてください。
-
docker-composeによるmysqlのデプロイメントの実践
-
様々なDockerディレクトリの役割