前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WebSocket

WebSocket

作者头像
LinuxSuRen
发布2020-02-25 12:57:45
2.2K0
发布2020-02-25 12:57:45
举报
文章被收录于专栏:JenkinsJenkins

我很高兴地提出报告,JEP-222 从 Jenkins 每周更新版开始落地。此改进为 Jenkins 带来了实验性的 WebSocket 支持,可在连接入站代理程序或运行 CLI 时使用。WebSocket 协议允许通过 HTTP(S)端口进行双向交互式通信.

尽管 Jenkins 的许多用户都可以受益,但实现该系统对 CloudBees 尤为重要,因为 现代云平台上的 CloudBees Core(即在 Kubernetes 上运行)如何配置网络。当管理员希望将入站(以前称为“JNLP”)外部代理连接到 Jenkins 主服务器(例如在集群外部运行并使用代理服务包装器的 Windows 虚拟机)时,到目前为止,唯一的选择是使用特殊的 TCP 端口。需要使用低级网络配置将此端口开放给外部流量。例如,nginx 入口控制器的用户将需要为集群中的每个 Jenkins 服务代理一个单独的外部端口。有关此操作的说明很复杂,很难调试。

使用 WebSocket,现在可以在存在反向代理的情况下更简单地连接入站代理:如果 HTTP(S)端口已在提供流量,则大多数代理将允许 WebSocket 连接而无需其他配置。可以在代理配置中启用 WebSocket 模式,并且即将推出 Kubernetes 插件中对基于 Pod 的代理的支持。您将需要一个 4.0 或更高版本的代理,该代理版本以常规方式与 Jenkins 捆绑在一起(带有该版本的 Docker 镜像即将发布)。

Jenkins 的另一个对反向代理用户造成麻烦的部分是 CLI。除了端口 22 上的 SSH 协议(这又是从外部打开的麻烦)之外,CLI 还具有使用 HTTP(S)传输的功能.不幸的是,用于实现混淆某些技巧的技巧并不十分可移植。Jenkins 2.217 提供了一个新的 webSocket CLI 模式,该模式避免了这些问题。再次说明,您将需要下载新版本的 jenkins-cli.jar 才能使用此模式。

已经针对 Kubernetes 实现示例(包括 OpenShift)对 WebSocket 代码进行了测试,但是很可能仍然存在一些 bugs 和局限性,并且尚未测试重构建负载下代理的可伸缩性。暂时将此功能视为 Beta 版,并让我们了解其工作原理!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-02-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Jenkins 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档