当前位置: 首页 > 知识库问答 >
问题:

Jenkins管道中的k8s_api连接超时

蒋岳
2023-03-14

我希望使用Kubernetes API,即使用list_namespace方法,列出集群中存在的名称空间。

当我在Linux机器上运行下面提到的代码时,它工作得很好。

config.load_kube_config(os.environ['KUBE_CONFIG'])
v1_api = client.CoreV1Api()
api_instance = kubernetes.client.CoreV1Api()

try: 
    api_response = api_instance.list_namespace(limit="1")
    pprint(api_response)
except Exception as e:
    print("Exception when calling CoreV1Api->list_namespace: %s\n" % e)

sys.exit("EXITING")
export KUBE_CONFIG=${env.WORKSPACE}/.kube/kube_config
python36 listns.py 

错误:

警告重试(重试(total=0,connect=none,read=none,redirect=none,status=none))在连接被“newconnectionerror”(“:未能建立新连接:[Errno 110]连接超时”,)“:/api/v1/namespaces?limit=1

调用COREV1API时出现异常->list_namespace:HTTPSConnectionPool(host='xxxxxx',port=xxxx):URL:/api/v1/namespaces超过最大重试次数?limit=1(由NewConnectionError(“:未能建立新连接:[Errno 110]连接超时”)引起)

共有1个答案

赫连明诚
2023-03-14

通过使用配置类传递代理获得了一个修复:

configuration = kubernetes.client.Configuration()
configuration.proxy='http://www-proxy-<myproxyserver>'

api_instance = kubernetes.client.ApiClient(configuration)
 类似资料:
  • 我正在尝试从Jenkins管道使用helm部署容器。我已经为jenkins安装了库伯内特斯插件,并在本地运行kubernetes URL和凭据中的配置文件中提供了它。当我执行时,它显示。 但是当我从管道运行helm install命令时,它会出错。 注意:我可以使用 CLI 以及通过使用和传递信誉文件变量名称(在 jenkins 凭据中创建)从 Jenkins 管道执行所有操作。我只想这样做,而不

  • 我是Grpc电话的新手。 目前,我正在使用Grpc。核心创建“通道”的新实例。请参阅下面的代码。 现在,我想在创建通道时添加一个连接超时。Grpc.Core有可能吗? 我知道可以在使用“Grpc.Net.Client.”时添加选项,但是,它只适用于. Net Core 2.1和我的项目不针对该框架。https://docs.microsoft.com/en-us/aspnet/core/grpc/

  • 问题内容: 在Windows上连接Jenkins从属代理失败,连接超时。 环境:Windows Server 2003 R2 Java6 掌握:Linux从属:Windows 我尝试将其同时运行为jnlp和java -jar cmd,但始终失败。 问题答案: 您没有提供太多信息,但是从错误消息中,您似乎暗示您的构建计算机正在Amazon EC2上运行。 在这种情况下,您的EC2实例安全组可能不允许

  • 问题内容: 是否可以在管道常规脚本中直接调用PowerShell命令?在Jenkins中使用自定义作业时,我可以使用PowerShell插件调用该命令。但是在groovy脚本中没有片段可以使用它。 我也尝试过,但似乎此命令不允许在命令中包含多行和注释。 问题答案: 要从Groovy脚本调用PowerShell脚本,请执行以下操作: 您必须使用命令。 之后,您必须确保正确返回错误代码()变量(应导致

  • 问题内容: 是否有任何环境变量可用于获取Jenkins管道标题? 我知道我们可以使用它来获得自由职业的头衔,但是有什么可以用来获取管道名称的东西吗? 问题答案: 您可以使用相同的名称(例如或)从groovy访问相同的环境变量。 从文档中: 可以从Groovy代码中以env.VARNAME或仅以VARNAME的形式访问环境变量。您也可以写入这些属性(仅使用env。前缀): 这些定义也将在构建期间或构

  • 我正在尝试从管道中自动创建Jenkins管道构建。 我有一个管道,它创建一个比特桶存储库并向其提交一些代码,包括一个Jenkinsfile。 我需要向此管道添加另一个步骤,然后为其创建管道生成,这将运行 Jenkinsfile 中的步骤。 我认为Jobs DSL应该能够处理这一点,但我找到的文档非常稀少,我仍然不完全确定是否有可能或如何做到这一点。 任何帮助都将不胜感激。我想生成的Pipeline