Files
kuboard-press/docs/assets/js/32.735c7fda.js
huanqing.shao e2bb7fa69f sidebar
2019-07-25 22:26:28 +08:00

1 line
4.2 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

(window.webpackJsonp=window.webpackJsonp||[]).push([[32],{370:function(t,v,_){"use strict";_.r(v);var r=_(0),e=Object(r.a)({},function(){var t=this,v=t.$createElement,_=t._self._c||v;return _("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[_("h1",{attrs:{id:"端口转发"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#端口转发","aria-hidden":"true"}},[t._v("#")]),t._v(" 端口转发")]),t._v(" "),_("p",[t._v("微服务环境中,各个服务都通过 TCP / UDP 端口的形式提供访问。按调用者所在位置、通信协议的形式来划分,大致有如下几种情况:")]),t._v(" "),_("table",[_("thead",[_("tr",[_("th",[t._v("调用者所在位置")]),t._v(" "),_("th",[t._v("通信协议")]),t._v(" "),_("th",[t._v("临时性")]),t._v(" "),_("th",[t._v("常见场景")]),t._v(" "),_("th",[t._v("推荐配置方式")])])]),t._v(" "),_("tbody",[_("tr",[_("td",[t._v("VPC外")]),t._v(" "),_("td",[t._v("http / https")]),t._v(" "),_("td",[t._v("日常性")]),t._v(" "),_("td",[t._v("用户从互联网(亦可能是公司内网)"),_("br"),t._v("访问 web 页面,或者 restful 接口")]),t._v(" "),_("td",[t._v("Kubernetes Ingress"),_("br"),t._v("可在Kuboard中直接配置 "),_("em",[_("strong",[t._v("互联网入口")])]),t._v(" ")])]),t._v(" "),_("tr",[_("td",[t._v("VPC外")]),t._v(" "),_("td",[t._v("tcp / udp")]),t._v(" "),_("td",[t._v("临时性")]),t._v(" "),_("td",[t._v("例如开发者临时需要访问数据库端口、Redis端口等")]),t._v(" "),_("td",[t._v("在客户端所在机器配置 kubectl"),_("br"),t._v("并"),_("span",{staticStyle:{color:"#F56C6C"}},[t._v("通过 kubectl port-forwad 进行端口转发")])])]),t._v(" "),_("tr",[_("td",[t._v("VPC外")]),t._v(" "),_("td",[t._v("tcp / udp")]),t._v(" "),_("td",[t._v("日常性")]),t._v(" "),_("td",[t._v("暂不讨论")]),t._v(" "),_("td")]),t._v(" "),_("tr",[_("td",[t._v("VPC内/集群外")]),t._v(" "),_("td",[t._v("http / https")]),t._v(" "),_("td",[t._v("日常性")]),t._v(" "),_("td",[t._v("通过接口网关为周边系统提供服务")]),t._v(" "),_("td",[t._v("Kubernetes Service NodePort"),_("br"),t._v("可在Kuboard中直接配置 "),_("em",[_("strong",[t._v("访问方式/VPC内访问")])]),t._v(" ")])]),t._v(" "),_("tr",[_("td",[t._v("VPC内/集群外")]),t._v(" "),_("td",[t._v("tcp / udp")]),t._v(" "),_("td",[t._v("同上")]),t._v(" "),_("td",[t._v("同上")]),t._v(" "),_("td")]),t._v(" "),_("tr",[_("td",[t._v("集群内")]),t._v(" "),_("td",[t._v("http / https")]),t._v(" "),_("td",[t._v("日常性")]),t._v(" "),_("td",[_("strong",[t._v("场景1")]),t._v("Web层访问微服务网关"),_("br"),t._v(" "),_("strong",[t._v("场景2")]),t._v(":微服务网关调用微服务,微服务之间的互相调用等。")]),t._v(" "),_("td",[_("strong",[t._v("场景1")]),t._v("Kubernetes Service ClusterIP "),_("br"),t._v("可在Kuboard中直接配置 "),_("em",[_("strong",[t._v("访问方式/集群内访问")])]),t._v(" "),_("br"),t._v(" "),_("strong",[t._v("场景2")]),t._v("Spring Cloud中使用Eureka/Consul等服务发现"),_("br"),t._v("Kuboard中 "),_("em",[_("strong",[t._v("访问方式/不配置")])]),t._v(" ")])]),t._v(" "),_("tr",[_("td",[t._v("集群内")]),t._v(" "),_("td",[t._v("tcp / udp")]),t._v(" "),_("td",[t._v("日常性")]),t._v(" "),_("td",[t._v("微服务访问数据库、微服务访问Redis等")]),t._v(" "),_("td",[t._v("Kubernetes Service ClusterIP "),_("br"),t._v("可在Kuboard中直接配置 "),_("em",[_("strong",[t._v("访问方式/集群内访问")])]),t._v(" ")])])])]),t._v(" "),_("h2",{attrs:{id:"feature-planned"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#feature-planned","aria-hidden":"true"}},[t._v("#")]),t._v(" Feature planned")]),t._v(" "),_("p",[t._v("在作者使用 Kuboard 的运维实践中,有如下两个场景不能脱离 kubeadm / kubectl 命令行:")]),t._v(" "),_("ul",[_("li",[t._v("初始化集群 / 向集群添加节点")]),t._v(" "),_("li",[t._v("开发者临时需要访问数据库端口、Redis端口时通过 kubectl port-forward 进行端口转发")])]),t._v(" "),_("p",[t._v("Kuboard 计划实现类似 kubectl port-forward 的功能,提高问题诊断过程中的便利性。")])])},[],!1,null,null,null);v.default=e.exports}}]);