问题描述
当发现pod 出现2/2 以为是副本数变成了2,而且kubectl logs podname 无法查看
[root@master49 ~]# kubectl get pod
NAME READY STATUS RESTARTS AGE
dev-elastic-job-lite-profile-a-5fc7b6c67d-wdrg8 2/2 Running 0 35d
[root@master49 ~]# kubectl logs dev-elastic-job-lite-profile-a-5fc7b6c67d-wdrg8
error: a container name must be specified for pod dev-elastic-job-lite-profile-a-5fc7b6c67d-wdrg8, choose one of: [dev-elastic-job-lite-profile-a istio-proxy] or one of the init containers: [istio-init]
查看deployment 信息 发现只有一个副本数
[root@master49 ~]# kubectl get deployments.apps| grep dev-elastic-job-lite-profile-a
dev-elastic-job-lite-profile-a 1/1 1 1 56d
查看是安装了服务网格istio
Serivce Mesh 可以看作是一个位于 TCP/IP 之上的网络模型,抽象了服务间可靠通信的机制。
但与 TCP 不同,它是面向应用的,为应用提供了统一的可视化和控制。
以下是 Istio 的核心功能:
- HTTP、gRPC、WebSocket 和 TCP 流量的自动负载均衡。
- 屏蔽分布式系统通信的复杂性 服务只用关注业务逻辑。通过丰富的路由规则、重试、故障转移和故障注入,可以对流量行为进行细粒度控制。
- 对应用透明,Service Mesh 组件可以单独升级。
- 可插入的策略层和配置 API,支持访问控制、速率限制和配额。
- 对出入集群入口和出口中所有流量的自动度量指标、日志记录和追踪。
- 通过强大的基于身份的验证和授权,在集群中实现安全的服务间通信
最实用的就是日志功能,当pod启动失败时你很难看到日志,当出现 1/2时代表pod未启动成功
[root@master49 ~]# kubectl get pod --all-namespaces | grep 1/2
default test-htjfweb-marketing-web-profile-a-6866876546-j2x9z 1/2 Running 0 35d
[root@master49 ~]#
[root@master49 ~]# kubectl logs -f --tail=20 test-htjfweb-marketing-web-profile-a-6866876546-j2x9z test-htjfweb-marketing-web-profile-a
2021-05-16 05:34:02.651 TID:N/A [Apollo-RemoteConfigRepository-1] [] WARN c.c.f.apollo.internals.AbstractConfigRepository:26
k8s机器deployment 的副本数设置命令
[root@master49 ~]# kubectl scale deployment dev-elastic-job-lite-profile-a --replicas=3
deployment.apps/dev-elastic-job-lite-profile-a scaled
[root@master49 ~]#
[root@master49 ~]#
[root@master49 ~]# kubectl get deployments.apps | grep dev-elastic-job-lite-profile-a
dev-elastic-job-lite-profile-a 1/3 3 1 56d
[root@master49 ~]#
[root@master49 ~]#
[root@master49 ~]# kubectl get deployments.apps | grep dev-elastic-job-lite-profile-a
dev-elastic-job-lite-profile-a 3/3 3 1 56d
[root@master49 ~]#
[root@master49 ~]# kubectl get pod | grep dev-elastic-job-lite-profile-a
dev-elastic-job-lite-profile-a-5fc7b6c67d-784sn 2/2 Running 0 36s
dev-elastic-job-lite-profile-a-5fc7b6c67d-dw9qm 2/2 Running 0 36s
dev-elastic-job-lite-profile-a-5fc7b6c67d-wdrg8 2/2 Running 0 35d
部署在服务网格istio中的pod 日志查看命令
[root@master49 ~]# kubectl logs dev-elastic-job-lite-profile-a-5fc7b6c67d-wdrg8 dev-elastic-job-lite-profile-a
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。