资讯专栏INFORMATION COLUMN

如何调试Systemctl

zhangke3016 / 432人阅读

摘要:然后,再服务后,就可以运行查看具体的运行命令,然后拷贝下来在命令行运行下就可以知道具体的错误了。

有时候我们使用systemctl命令,比如systemctl start kube-apiserver时会提示错误:

[root@vultr kubenetes]# systemctl start kube-apiserver         
Job for kube-apiserver.service failed because the control process exited with error code. See "systemctl status kube-apiserver.service" and "journalctl -xe" for details.

根据提示,再运行systemctl status kube-apiserver.service 会提示类似:

● kube-apiserver.service - Kubernetes API Service
   Loaded: loaded (/usr/lib/systemd/system/kube-apiserver.service; disabled; vendor preset: disabled)
   Active: failed (Result: start-limit) since Fri 2018-07-20 06:37:05 UTC; 1min 17s ago
     Docs: https://github.com/GoogleCloudPlatform/kubernetes
  Process: 8208 ExecStart=/usr/bin/kube-apiserver $KUBE_LOGTOSTDERR $KUBE_LOG_LEVEL $KUBE_ETCD_SERVERS $KUBE_API_ADDRESS $KUBE_API_PORT $KUBELET_PORT $KUBE_ALLOW_PRIV $KUBE_SERVICE_ADDRESSES $KUBE_ADMISSION_CONTROL $KUBE_API_ARGS (code=exited, status=203/EXEC)

Jul 20 06:37:05 vultr.guest systemd[1]: kube-apiserver.service: main process exited, code=exited, status=203/EXEC
Jul 20 06:37:05 vultr.guest systemd[1]: Failed to start Kubernetes API Service.
Jul 20 06:37:05 vultr.guest systemd[1]: Unit kube-apiserver.service entered failed state.
Jul 20 06:37:05 vultr.guest systemd[1]: kube-apiserver.service failed.
Jul 20 06:37:05 vultr.guest systemd[1]: kube-apiserver.service holdoff time over, scheduling restart.
Jul 20 06:37:05 vultr.guest systemd[1]: start request repeated too quickly for kube-apiserver.service
Jul 20 06:37:05 vultr.guest systemd[1]: Failed to start Kubernetes API Service.
Jul 20 06:37:05 vultr.guest systemd[1]: Unit kube-apiserver.service entered failed state.
Jul 20 06:37:05 vultr.guest systemd[1]: kube-apiserver.service failed.

注意看ExecStart

ExecStart=/usr/bin/kube-apiserver $KUBE_LOGTOSTDERR $KUBE_LOG_LEVEL $KUBE_ETCD_SERVERS $KUBE_API_ADDRESS $KUBE_API_PORT $KUBELET_PORT $KUBE_ALLOW_PRIV $KUBE_SERVICE_ADDRESSES $KUBE_ADMISSION_CONTROL $KUBE_API_ARGS

其实我们调试思想是,我们知道是这个kube-apiserver命令加上后续参数执行时出错了,所以只要我们手动运行一下这个命令就知道错在哪了,但是这里环境变量还是类似$KUBE_LOG_LEVEL这种变量,不是编译后的,不好调试运行。

这里有个技巧就是,编辑你system服务的service配置文件,在Service选中添加一项,类似:

ExecStartPre=/bin/bash -l -c "echo "/usr/bin/kube-apiserver $YOUR_ARGS">/tmp/systemctl.debug"

实际运行时这里$YOUR_ASRGS替换为你自己在systemctl status后看到的参数。

然后systemctl daemon-reload,再start服务后,就可以运行 cat /tmp/systemctl.debug查看具体的运行命令,然后拷贝下来在命令行运行下就可以知道具体的错误了。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/33473.html

相关文章

  • ngrok内网穿透服务器搭建及配置(附 frp 配置)

    摘要:作为一个内网穿透的小工具,有时可能会时常更改配置等,所以作为本地的一个开机启动的小服务即可。设置开机启动输入命令设置开机启动开启查看状态停止内网穿透配置相对于另一款国内大牛做的要显的更加轻量安全易配置些。 12月18日更新 添加 frp 配置 前言 内网穿透,无需多言,用处多多。首先强力推荐一款Sunny大大搭建的ngrok服务好用的不行,而且有免费选项,感觉平时够用了。那么,为什么自...

    李昌杰 评论0 收藏0
  • 一文掌握PHP Xdebug 本地与远程调试

    摘要:原文链接一文掌握本地与远程调试很久没写了同样很很久没有用了,近期有个简单的场景要用到,简单记录一下关键步骤。配置与本地调试的配置不一样的地方就是和,其他地方大同小异。 原文链接:一文掌握PHP Xdebug 本地与远程调试 很久没写PHP了、同样很很久没有用XDebug了,近期有个简单的场景要用到,简单记录一下关键步骤。 本地调试 本地环境: $ php -v PHP 7.3.4 (c...

    MrZONT 评论0 收藏0
  • Linux笔记

    摘要:归纳一些自己常用的笔记一常用命令命令的命令可以查看内存等资源的使用情况。我们要优化的话,也就有针对性了。表示小时,可以是从到之间的任何整数。要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。 归纳一些自己常用的linux笔记 一、常用命令 top命令: linux的top命令可以查看cpu、内存等资源的使用情况。 如下图所示,拿内存来说,一共262144k,也就是256MB,用...

    idealcn 评论0 收藏0
  • [转载] centos7 安装和配置vncserver

    摘要:转载说明原文链接原作者写的很清楚了,转载以备自用安装与配置关闭防火墙安装拷贝配置文件配置文件目录配置文件配置内容启用配置文件设置登陆密码启动状态查询调试启动启动状态查看查看端口状态查看报错信息 0.转载说明 原文链接:http://blog.csdn.net/a105421548/article/details/38437639 原作者写的很清楚了,转载以备自用 1.安装与配置...

    Coly 评论0 收藏0
  • [转载] centos7 安装和配置vncserver

    摘要:转载说明原文链接原作者写的很清楚了,转载以备自用安装与配置关闭防火墙安装拷贝配置文件配置文件目录配置文件配置内容启用配置文件设置登陆密码启动状态查询调试启动启动状态查看查看端口状态查看报错信息 0.转载说明 原文链接:http://blog.csdn.net/a105421548/article/details/38437639 原作者写的很清楚了,转载以备自用 1.安装与配置...

    wow_worktile 评论0 收藏0

发表评论

0条评论

zhangke3016

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<