• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    解决docker安装完成报:bridge-nf-call-iptables is disabled问题

    centos机器 docker安装完成后,输入docker info命令,报如下警告信息解决方法:

    1)警告信息如下:

    WARNING: bridge-nf-call-iptables is disabled

    WARNING: bridge-nf-call-ip6tables is disabled

    2)解决方法:

    修改系统文件是的机器bridge模式开启

    设置机器开机启动的时候执行下面两条命令

    编辑vim /etc/rc.d/rc.local添加下面两条命令

    echo 1 > /proc/sys/net/bridge/bridge-nf-call-iptables

    echo 1 > /proc/sys/net/bridge/bridge-nf-call-ip6tables

    centos7需要增加执行权限:

    chmod +x /etc/rc,d/rc.local

    3)重启系统

    补充知识:重启 Kubernetes Pod 的几种方式

    前言

    在使用 docker 的过程中,我们可以使用docker restart {container_id}来重启容器,但是在 kubernetes 中并没有重启命令(没有 kubectl restart {podname}),有时候我们的 Pod 出现 Bug 意外终止,导致我们需要重启 Pod ,却没有一个很好的方式,特别是没有 yaml 文件的情况下,所以我总结了以下几种重启 Pod 的方式。

    方法 1

    有最新的 yaml 文件。

    在有 yaml 文件的情况下可以直接使用kubectl replace --force -f xxxx.yaml 来强制替换 Pod 的 API 对象,从而达到重启的目的。如下:

    [root@test-129-70 viua]# kubectl replace --force -f viua.yml
    namespace "viua" deleted
    service "viua-app-cms" deleted
    deployment.apps "viua-app-cms" deleted
    service "viua-app-command" deleted
    deployment.apps "viua-app-command" deleted
    service "viua-show-service" deleted
    deployment.apps "viua-show-service" deleted
    service "viua-skills-service" deleted
    deployment.apps "viua-skills-service" deleted
    namespace/viua replaced
    secret/xa-harbor-ca replaced
    service/viua-app-cms replaced
    deployment.apps/viua-app-cms replaced
    service/viua-app-command replaced
    deployment.apps/viua-app-command replaced
    service/viua-show-service replaced
    deployment.apps/viua-show-service replaced
    service/viua-skills-service replaced
    deployment.apps/viua-skills-service replaced

    方法 2

    没有 yaml 文件,但是使用的是 Deployment 对象。

    kubectl scale deploy viua-app-cms --replicas=0 -n viua

    kubectl scale deploy {deploy对象} --replicas=0 -n {namespace}

    [root@test-129-70 pvd]# kubectl get deploy -n viua
    NAME     READY UP-TO-DATE AVAILABLE AGE
    viua-app-cms   1/1  1   1   48m
    viua-app-command  1/1  1   1   48m
    viua-show-service  1/1  1   1   48m
    viua-skills-service 1/1  1   1   48m
    [root@test-129-70 pvd]# kubectl scale deploy viua-app-cms --replicas=0 -n viua
    deployment.apps/viua-app-cms scaled
    [root@test-129-70 pvd]# kubectl get deploy -n viua
    NAME     READY UP-TO-DATE AVAILABLE AGE
    viua-app-cms   0/0  0   0   49m
    viua-app-command  1/1  1   1   49m
    viua-show-service  1/1  1   1   49m
    viua-skills-service 1/1  1   1   49m
    [root@test-129-70 pvd]# kubectl get po -n viua
    NAME         READY STATUS RESTARTS AGE
    viua-app-command-95f7b6f7f-rb7mh  1/1  Running 0   49m
    viua-show-service-85565b9dcf-ss8qp  1/1  Running 0   49m
    viua-skills-service-65447f9b94-fhqhr 1/1  Running 0   49m

    由于 Deployment 对象并不是直接操控的 Pod 对象,而是操控的 ReplicaSet 对象,而 ReplicaSet 对象就是由副本的数目的定义和 Pod 模板组成的。所以这条命令分别是将 ReplicaSet 的数量 scale 到 0,然后又 scale 到 1,那么 Pod 也就重启了。

    方法 3

    同样没有 yaml 文件,但是使用的是 Deployment 对象。

    使用命令kubectl delete pod {podname} -n {namespace}

    这个方法就很简单粗暴了,直接把 Pod 删除,因为 Kubernetes 是声明式 API,所以删掉了之后,Pod API 对象就与预期的不一致了,所以会自动重新创建 Pod 保持与预期一致,但是如果 ReplicaSet 管理的 Pod 对象很多的话,那么要一个个手动删除,会很麻烦,所以可以使用kubectl delete replicaset {rs_name} -n {namespace}命令来删除 ReplicaSet

    方法 4

    没有 yaml 文件,直接使用的 Pod 对象。

    使用命令kubectl get pod {podname} -n {namespace} -o yaml | kubectl replace --force -f -

    在这种情况下,由于没有 yaml 文件,且启动的是 Pod 对象,那么是无法直接删除或者 scale 到 0 的,但可以通过上面这条命令重启。这条命令的意思是 get 当前运行的 pod 的 yaml 声明,并管道重定向输出到 kubectl replace命令的标准输入,从而达到重启的目的。

    总结

    我们可以通过多种方式来重启对象,总的来说,最推荐的方式是使用kubectl get pod {podname} -n {namespace} -o yaml | kubectl replace --force -f -这种方式,因为适用于多种对象。此外,重启 Pod 并不会修复运行程序的 bug,想要解决程序的意外终止,最终还是得要修复 bug。

    以上这篇解决docker安装完成报:bridge-nf-call-iptables is disabled问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

    上一篇:Docker与iptables及实现bridge方式网络隔离与通信操作
    下一篇:解决Mac下 docker 无法 ping 通宿主机的问题
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    解决docker安装完成报:bridge-nf-call-iptables is disabled问题 解决,docker,安装,完,成报,