zoukankan      html  css  js  c++  java
  • 通过ssh远程执行kubectl命令报错问题

    在使用Jenkins链接Kubernetes集群,如果Jenkins安装机器与Kubernetes Master节点不在同一台机器上面,需要使用ssh远程执行部署命令,如下:

    ssh root@10.170.129.153 -p 60022 'kubectl apply -f deploynetcore.yaml'
    

    执行时会出现8080拒绝访问错误,信息如下:

    The connection to the server localhost:8080 was refused - did you specify the right host or port?
    

    是因为使用ssh执行命令和登录后执行Linux所加载的环境变量不同,在使用ssh执行命令时没有加载/etc/profile的环境变量,对此,可参考这篇文章:https://www.jianshu.com/p/f24c7445c4db

    将/etc/profile目录下kubernetes对应的环境变量添加到/root/.bashrc文件内即可,添加后内容如下,此时在执行时可以正常。

    # .bashrc
    
    # User specific aliases and functions
    
    alias rm='rm -i'
    alias cp='cp -i'
    alias mv='mv -i'
    
    # Source global definitions
    if [ -f /etc/bashrc ]; then
            . /etc/bashrc
    fi
    
    export KUBECONFIG=/etc/kubernetes/admin.conf
    
  • 相关阅读:
    Java-数组
    排序-冒泡排序
    排序-选择排序
    Java-基础
    Java-Html-session
    Java-API
    Tomcat-常用设置
    Tomcat目录结构
    TOMCAT-安装配置
    Java-public
  • 原文地址:https://www.cnblogs.com/zhang-guansheng/p/13601475.html
Copyright © 2011-2022 走看看