内容纲要
概要描述
TDH 5开始实现了容器化,所有的服务都被分到一个个Pod中,关于k8s的常见词解释比如什么是Pod等可以参考文章:
https://www.toutiao.com/article/6659871608712200708/?tt_from=weixin&utm_campaign=client_share&wxshare_count=1×tamp=1550679238&app=news_article&utm_source=weixin&iid=62546986164&utm_medium=toutiao_ios&group_id=6659871608712200708&wid=1659172031504
详细说明
如何查看服务的pod状态
TDH服务的pod是由TOS服务负责管理的,所以查看pod状态的前提是TOS服务必须健康,然后才可以使用如下命令检查:
kubectl get pod -owide
在TDH集群的任意节点中执行上述命令,都会列出集群中所有的服务的pod状态,如果要查看特定某一个服务,可以接上grep命令来过滤:
kubectl get pod -owide | grep hdfs
如下图,命令的结果主要包括9列
NAME | READY | STATUS | RESTARTS | AGE | IP | NODE | NOMINATED NODE | READINESS GATES |
---|---|---|---|---|---|---|---|---|
其中的第一列“NAME”是pod的名字,它的组成结构是:服务名-角色名-服务的序列号-随机标识符,以符号“-”作为分隔符
pod名字的组成
以上图中的hdfs服务为例,它的第一个pod名字可以分割如下:
服务名 | 角色名 | 服务序列号 | 随机标识符 |
---|---|---|---|
hadoop-hdfs- | datanode- | hdfs1- | d96d59f44-6n2v5 |
表示该pod是属于一个hdfs服务 | 表示这是一个datanode角色的pod | 最后的数字1表示这是该TDH集群的第一个hdfs服务,当安装了多个hdfs服务时,该字段可以用来区分pod具体所属的服务 | 该pod的独一无二的标识符,相当于它的身份证 |
以符号“-”作为分隔符,上表中除了第一列的长度可能有变化之外,其他列都是固定的,所以遇到陌生的pod时候可以从右往左分析它的名字,比如inceptor的pod如下:
它的第一列“服务名”就是“inceptor”