• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

ADDC 7.3安装失败

  • 0关注
  • 0收藏,75浏览
粉丝:0人 关注:0人

问题描述:

ADDC 7.3 DC组件安装   虚拟机三节点部署,容器部署成功。登陆控制器查看不到控制器组件信息。

 

4 个回答
已采纳
粉丝:9人 关注:10人

大概率南向不通,可能网卡配置有问题或者配了南向vlan,具体得看环境,联系400处理下

粉丝:2人 关注:9人

ADDC 7.3安装失败,容器已部署但控制器无组件信息,按以下步骤排查:

1. 检查SeerEngine-DC服务状态:登录部署节点,执行 `kubectl get pods -n addc` 查看所有Pod状态是否为Running。重点关注 `seerengine-dc` 相关Pod。

2. 检查组件注册:登录SeerEngine-DC管理界面(默认IP:端口),检查“组件管理”中ADDC控制器组件是否已成功注册并在线。若未注册,需检查控制器与SeerEngine-DC的网络连通性及认证信息。

3. 检查控制器连接配置:登录ADDC控制器Web界面,进入“系统”->“高可用与扩展”->“引擎集群”,确认已正确添加SeerEngine-DC节点地址(IP:端口)且状态为“连接正常”。

4. 查看详细日志:在部署节点执行 `kubectl logs -f <seerengine-dc-pod名称> -n addc` 查看SeerEngine-DC容器日志,重点关注有无连接控制器失败或认证错误的报错。

需补充信息:
- 执行 `kubectl get pods -n addc` 的具体输出结果。
- SeerEngine-DC与ADDC控制器的网络拓扑及IP地址。
- 部署时填写的控制器连接信息(IP、端口、用户名密码)。

粉丝:8人 关注:0人

在 ADDC 7.3 环境中,三节点容器化部署 DC 组件后,登录控制器却看不到组件信息,这通常属于“部署动作完成但服务未正常注册”的范畴。

一、首先确认:是“看不到组件”还是“组件状态异常”

登录 ADDC 控制器 Web 界面,进入 “系统管理 → 组件管理” 或 “资源管理 → 虚拟资源 → 计算资源” 等对应菜单。

  • 完全没有 DC 组件条目 → 说明组件未向控制器注册成功

  • 有条目但状态为“离线/异常” → 说明注册过,但心跳/服务失败

你提到“看不到控制器组件信息”,应优先按 未注册 方向处理。



二、关键检查项(按顺序排查)

1. 容器运行状态是否真的“成功”

在任一部署节点上执行:

docker ps | grep -E "dc|adc|cloudos"或如果是 K8s 部署:kubectl get pods -n <namespace> | grep -E "dc|adc"
确认
  • 所有容器状态为 Up / Running

  • 没有频繁重启(RESTART 次数很低)

若有容器未运行,先排查容器启动失败原因(日志、资源、镜像)。


2. 检查 DC 组件是否向 Controller 完成注册

DC 组件启动后会主动向 Controller 的 服务注册中心(etcd / consul / 平台内部服务) 上报。

方法一(推荐):在 Controller 节点上查看服务列表

curl -s http://127.0.0.1:2379/v2/keys/services | grep -i dc或查看 consul:curl http://127.0.0.1:8500/v1/catalog/services
方法二:查看 DC 组件容器日志,看是否有注册成功日志
docker logs <容器名> | grep -i "register"关键日志应包含:
register to controller success
service registered, endpoint: xxx如果注册失败,常见原因:
  • Controller 地址配置错误

  • 网络不通(防火墙、路由)

  • 证书/认证失败


3. 网络连通性:DC 容器 ↔ Controller 节点

在 DC 容器内部测试连通性:

docker exec -it <容器名> bash
ping <controller-ip> curl -v http://<controller-ip>:8080 # 视实际端口如果 ping 不通或端口不通:
  • 检查 主机防火墙(iptables / firewalld)

  • 检查 docker 网络模式 是否与 controller 网络互通

  • 如果是跨网段部署,确认路由正确


4. 检查 Controller 侧是否已发现组件

登录 Controller 后台(命令行),执行:

kubectl get nodes
source /opt/cloudos/conf/openrc
openstack host list看是否能看到部署了 DC 组件的节点。

若 Controller 侧完全无记录,则表明注册链路存在问题。


5. 检查部署配置是否正确

ADDC 7.3 容器化部署通常涉及:

  • installer.cfg 或 values.yaml 中 controller_ip / mgmt_ip 是否填写正确

  • 是否指定了正确的 部署角色(DC / 控制节点 / 计算节点)

  • 三个节点的 时间是否同步(时间差过大会导致注册认证失败)

检查部署时使用的配置文件,确认:

# 示例
CONTROLLER_IP=10.1.1.100 DC_HOST_IPS=10.1.1.101,10.1.1.102,10.1.1.1036. 查看关键日志定位根因
位置日志路径 / 命令
部署节点/var/log/installer/deploy.log
DC 容器docker logs <container>
Controller 组件kubectl logs -n cloudos <controller-pod>
服务注册tail -f /var/log/cloudos/register.log

重点关注:

  • connection refused

  • certificate

  • timeout

  • authentication failed



三、典型场景与解决方案

现象可能原因解决方法
容器全部 Running,但 Controller 无记录注册地址错误或网络不通检查 controller_ip 配置,确保容器能访问 Controller 端口
部分容器重启频繁资源不足或配置错误查看容器日志,调整内存/CPU 资源限制
日志显示证书错误证书未同步或过期重新生成证书,确保所有节点时间同步
三节点部署但仅部分注册节点间通信异常检查主机路由、防火墙策略


四、最终建议

  1. 优先查看 DC 容器日志,这是最快定位问题的途径。

  2. 确认三节点时间同步,使用 chronyc sources 或 ntpq -p 检查。

  3. 如果以上均正常,可能是部署脚本或版本兼容问题,建议:

    • 检查 ADDC 版本与容器镜像版本是否匹配

    • 重新执行 register 组件步骤(如有单独注册脚本)

怎么查看容器namespace

zhiliao_awWBrK 发表时间:1天前 更多>>

怎么排查

zhiliao_awWBrK 发表时间:1天前

怎么查看容器namespace

zhiliao_awWBrK 发表时间:1天前
粉丝:6人 关注:2人

核心结论:容器部署成功≠组件已注册 / 就绪,问题集中在集群注册、网络可达、组件状态、时间 / 证书四大维度,按以下优先级排查即可快速定位。

一、5 分钟快速定位(核心步骤)

1. 先确认组件真实状态(最关键)

登录任意节点服务器后台,执行以下命令验证容器与组件进程(以 K8s 容器环境为例):
bash
运行
# 查看所有DC组件Pod状态(重点看Phase是否为Running) kubectl get pod -A | grep dc # 查看组件容器日志(定位启动失败原因) kubectl logs -f <dc组件Pod名称> -n <命名空间> # 查看组件服务状态(确认核心进程是否就绪) systemctl status seer-dc
  • 若 Pod 状态为Pending/Error/CrashLoopBackOff容器启动失败,需解决资源不足、镜像异常、依赖缺失等问题。
  • 若 Pod 为Running但控制器无组件:组件未注册或集群通信异常,进入下一步排查。

2. 验证集群网络连通性

三节点间必须全互通,重点排查以下几点:
表格
排查项操作命令判定标准
节点 IP 互通ping 其他节点 IP丢包率 0ms 延迟 < 1ms
组件端口可达telnet 节点 IP 组件端口(默认:8080、8443、6443)端口连通无超时
防火墙 / 安全组关闭防火墙或放行组件端口无端口拦截
路由 / 网关查看路由表route -n无路由环路,网关可达

3. 检查集群注册状态

登录 ADDC 控制器后台,执行以下命令确认集群成员与组件注册:
bash
运行
# 查看集群成员列表 kubectl get nodes # 查看组件注册记录 kubectl get dc-cluster # 查看组件CRD状态 kubectl get seerdc
  • 若节点未全部就绪:节点未加入集群,需重新执行kubeadm join或重置集群网络。
  • 若组件 CRD 为空:组件未成功注册,需重新部署组件 YAML 文件。

二、常见原因与对应解决方法

1. 组件容器启动失败(高频)

原因

  • 虚拟机资源不足(CPU / 内存 / 磁盘未达标)
  • 镜像下载不完整或版本不匹配
  • 容器依赖缺失(如 DNS、存储插件异常)

解决

  1. 扩容资源:确保每节点 CPU≥8 核、内存≥32G、磁盘≥200G(SSD 优先)。
  2. 重新拉取镜像:
    bash
    运行
    # 删除异常镜像 crictl rmi <dc镜像ID> # 重新拉取指定版本镜像 crictl pull seer-dc:7.3.0 # 重启容器 kubectl rollout restart deployment <dc组件名称> -n <命名空间>
  3. 修复存储插件:确保kubeletcsi-plugin正常运行,磁盘挂载无异常。

2. 集群注册异常(次高频)

原因

  • 节点主机名重复或解析错误
  • 集群 CA 证书未同步或过期
  • 组件注册参数配置错误

解决

  1. 统一主机名与解析:
    bash
    运行
    # 配置主机名 hostnamectl set-hostname dc-node-01/02/03 # 编辑hosts文件,添加三节点IP与主机名映射 vi /etc/hosts
  2. 同步集群 CA 证书:
    bash
    运行
    # 复制主节点CA证书到其他节点 scp /etc/kubernetes/pki/ca.crt root@其他节点IP:/etc/kubernetes/pki/ # 重启kube-apiserver systemctl restart kube-apiserver
  3. 重新注册组件:修改组件 YAML 文件的cluster-idnode-ip参数,重新应用。

3. 网络与端口拦截(常见)

原因

  • 交换机端口隔离、VLAN 划分错误
  • 防火墙 / 安全组未放行组件通信端口
  • 容器网络插件(Calico/Flannel)异常

解决

  1. 关闭端口隔离:交换机接口配置undo port-isolate,确保三节点间互通。
  2. 放行核心端口:
    • 管理端口:80、443(Web 访问)
    • 集群通信端口:6443、2379-2380(K8s 核心)
    • 组件业务端口:8080、8443、10000-10010(DC 组件)。
  3. 修复网络插件:
    bash
    运行
    # 查看Calico/Flannel状态 kubectl get pod -n kube-system | grep calico/flannel # 重启异常网络插件Pod kubectl delete pod <calico/flannel Pod名称> -n kube-system

4. 时间 / 证书不一致(隐性高频)

原因

  • 三节点时间不同步(Kerberos 认证依赖时间一致性)
  • 组件证书过期或未正确生成

解决

  1. 配置 NTP 时间同步:
    bash
    运行
    # 安装NTP服务 yum install ntp -y # 配置NTP服务器(统一使用主节点或外部NTP) vi /etc/ntp.conf # 启动NTP服务并设置开机自启 systemctl start ntpd && systemctl enable ntpd # 同步时间 ntpdate -u 主节点IP
  2. 重新生成组件证书:
    bash
    运行
    # 进入组件证书目录 cd /opt/seer-dc/cert # 删除旧证书 rm -rf * # 重新生成证书 ./generate-cert.sh --ip 节点IP --domain 集群域名 # 重启组件服务 systemctl restart seer-dc

三、终极排查流程(按顺序执行)

  1. 查容器状态kubectl get pod -A | grep dc → 解决启动异常。
  2. 查网络互通:ping+telnet 三节点 IP 与端口 → 解决网络拦截。
  3. 查集群注册kubectl get nodes+kubectl get dc-cluster → 解决注册失败。
  4. 查时间证书date+ 证书文件有效期 → 解决时间 / 证书问题。
  5. 查资源日志kubectl logs+dmesg → 定位隐性异常。

四、注意事项

  1. 三节点必须同版本镜像同网络规划同资源配置,避免版本或配置差异导致集群异常。
  2. 部署前务必关闭 SELinux 与防火墙(生产环境需精准放行端口,而非直接关闭)。
  3. 所有操作优先在主节点执行,再同步至其他节点,避免集群数据不一致。

编辑答案

你正在编辑答案

如果你要对问题或其他回答进行点评或询问,请使用评论功能。

分享扩散:

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作

举报

×

侵犯我的权益 >
对根叔社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明