openshift_集群_主机名的流量如何重定向到openshift web控制台

openshift_集群_主机名的流量如何重定向到openshift web控制台,openshift,haproxy,openshift-origin,openshift-web-console,Openshift,Haproxy,Openshift Origin,Openshift Web Console,问题1: 1.1。谁坐在“openshift\u master\u cluster\u public\u hostname”主机名后面?是web控制台(web控制台服务?或web服务部署)还是其他什么 1.2。在执行oc get service-n openshift web控制台时,我可以看到web控制台在443中运行,它不应该在端口8443上工作吗?api服务器也是这样,不应该在端口8443上工作吗 1.3。你能给我解释一下请求的流程吗https://openshift_master_clu

问题1:

1.1。谁坐在“openshift\u master\u cluster\u public\u hostname”主机名后面?是web控制台(web控制台服务?或web服务部署)还是其他什么

1.2。在执行oc get service-n openshift web控制台时,我可以看到web控制台在443中运行,它不应该在端口8443上工作吗?api服务器也是这样,不应该在端口8443上工作吗

1.3。你能给我解释一下请求的流程吗https://openshift_master_cluster_public_hostname:8443 ?

1.4。在文档中是

问题2:

为什么我对curl和wget有不同的反应
当我:卷曲时https://openshift_master_cluster_public_hostname:8443,我得到:

{
  "paths": [
    "/api",
    "/api/v1",
    "/apis",
    "/apis/",
    "/apis/admissionregistration.k8s.io",
    "/apis/admissionregistration.k8s.io/v1beta1",
    "/apis/apiextensions.k8s.io",
    "/apis/apiextensions.k8s.io/v1beta1",
    ...
    "/swagger.json",
    "/swaggerapi",
    "/version",
    "/version/openshift"
  ]
}
当我:wgethttps://openshift_master_cluster_public_hostname:8443我得到一个index.html页面

web控制台是响应此请求还是

问题3:

如何在端口443而不是8443上公开web控制台,我找到了几种解决方案:

  • 使用变量“openshift_master_console_port,openshift_master_api_port”,但发现这些端口是“内部”端口,而不是设计为公共端口。因此,更改此端口可能会使OpenShift设置崩溃

  • 使用外部服务(已描述)


  • 我正在尝试在外部haporxy上设置端口转发,是否可行?

    问题1的答案:

    1.1。引用文献

    这意味着该变量是OpenShift Web控制台的面向公众的接口

    1.2服务是一个虚拟对象,它将服务名称连接到POD,并用于连接路由对象和服务对象。文档中对此进行了解释。您几乎可以使用服务的每个端口,因为它是虚拟的,没有任何东西会绑定到此端口

    1.3。答案取决于您的设置。我在ha设置中解释了这一点,在主机前面有一个TCP负载平衡器

                           /> Master API 1
    client -> loadbalancer -> Master API 2
                           \> Master API 3
    
    客户请求https://openshift_master_cluster_public_hostname:8443负载平衡器将客户端转发到主API 1或2或3,客户端从请求的主API服务器获取答案

    如果请求来自浏览器,则api服务器重定向到控制台

    第二季度的答案:

    curlwget的行为不同,因为它们是不同的工具,但https请求是相同的

    wget的卷曲行为
    wget--output document=-https://openshift_master_cluster_public_hostname:8443

    带旋度的wget行为
    curl-o index.htmlhttps://openshift_master_cluster_public_hostname:8443

    中介绍了为什么
    -

    第三季度的答案:


    您可以使用OpenShift路由器(用于应用程序)使Web控制台在443上可用。这有点过时,但当前3.x版本的概念相同

    谢谢您的回答,请您更清楚地回答问题1:一旦请求“”到达一个主节点,谁将处理此请求?它是web控制台还是api服务器?这是一个什么样的库伯内特斯分量?(服务、路线等?)。我可以看到api服务器没有路由和nodePort服务,web控制台和clusterIp服务只能在集群内访问,因此我不知道谁将请求路由到所需的组件?是api服务器处理请求当我这样做时“我得到静态资源(html、js、css),我想它是从web控制台而不是api服务器获取的,不是吗?这很有趣,因为当我调用
    curl-v时https://openshift_master_cluster_public_hostname:8443/
    我得到
    {“路径”:[“/api”,“/api/v1”等等
    但是当你使用浏览器请求时,你会得到一个网页,对吗?
                           /> Master API 1
    client -> loadbalancer -> Master API 2
                           \> Master API 3