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

Kibana UI的URL是什么

祖波光
2023-03-14

超文本传输协议://gr s-prep bar ku be master 01:5601/kiba na

我遵循文档并安装了Kibana,当我将服务用作类型:LoadBalancer时,服务不会出现,所以我删除了类型:LoadBalancer并让它默认为ClusterIP,它出现得很好。(注意我没有AWS)但是,我不确定如何访问用户界面,我尝试了这个URL,但它不起作用。超文本传输协议://my-preprodkubemaster01/api/v1/代理/命名空间/库贝-system/服务/elasticsearch ch-log/app/kibana任何想法如何访问Kibana用户界面。我检查了服务、部署和一切都是绿色检查。

我试过的另一件事是这个URL,这个URL是我从命令kubectl cluster info获得的https://10.123.24.107:6443/api/v1/namespaces/kube-system/services/kibana logging/proxy然而,这显示了这个错误

{
kind: "Status",
apiVersion: "v1",
metadata: { },
status: "Failure",
message: "services "kibana-logging" is forbidden: User "system:anonymous" cannot get services/proxy in the namespace "kube-system"",
reason: "Forbidden",
details: {
name: "kibana-logging",
kind: "services"
},
code: 403
}

所以,作为另一种尝试,我使用Kibana服务作为节点端口,但这也不起作用。

apiVersion: v1
kind: Service
metadata:
  name: kibana-logging
  namespace: kube-system
  labels:
    k8s-app: kibana-logging
    kubernetes.io/cluster-service: "true"
    addonmanager.kubernetes.io/mode: Reconcile
    kubernetes.io/name: "Kibana"
spec:
  selector:
    k8s-app: kibana-logging
  type: NodePort
  ports:
  - port: 5601
    protocol: TCP
    targetPort: ui
    nodePort: 30887

$  kubectl -n kube-system get rc,svc,cm,po
NAME                        TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
svc/elasticsearch-logging   ClusterIP   10.98.10.182     <none>        9200/TCP         12m
svc/heapster                ClusterIP   10.107.184.85    <none>        80/TCP           3d
svc/kibana-logging          NodePort    10.102.254.129   <none>        5601:30887/TCP   12m
svc/kube-dns                ClusterIP   10.96.0.10       <none>        53/UDP,53/TCP    3d
svc/kubernetes-dashboard    ClusterIP   10.105.30.246    <none>        80/TCP           3d
svc/monitoring-influxdb     ClusterIP   10.109.144.39    <none>        8086/TCP         3d

我想知道我应该使用什么URL来访问Kibana UI。请注意,我已经npot试图做kubectl代理,我希望它没有它的工作

共有3个答案

严高峻
2023-03-14

我用它来调整入口配置

    apiVersion: extensions/v1beta1
    kind: Ingress
    metadata:
     name: kube
  namespace: kube-system
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.org/rewrites: "serviceName=kubernetes-dashboard rewrite=/;serviceName=kibana-logging rewrite=/"
spec:
  rules:
  - host: HOSTNAME_OF_MASTER
    http:
      paths:
      - path: /kube-ui/
        backend:
          serviceName: kubernetes-dashboard
          servicePort: 80
      - path: /kibana/
        backend:
          serviceName: kibana-logging
          servicePort: 5601

我的Kibana序列设置为Nodeport

apiVersion: v1
kind: Service
metadata:
  name: kibana-logging
  namespace: kube-system
  labels:
    k8s-app: kibana-logging
    kubernetes.io/cluster-service: "true"
    addonmanager.kubernetes.io/mode: Reconcile
    kubernetes.io/name: "Kibana"
spec:
  type: NodePort
  ports:
  - port: 5601
    protocol: TCP
    targetPort: ui
  selector:
    k8s-app: kibana-logging

仪表板也是这样配置的

# ------------------- Dashboard Service ------------------- #
kind: Service
apiVersion: v1
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kube-system
spec:
  type: NodePort
  ports:
    - port: 80
      targetPort: 9090
  selector:
    k8s-app: kubernetes-dashboard

运行svc后,您可以从任何节点使用NodePort访问kibana。示例:超文本传输协议://node01_ip: 31325/app/kibana

$ kubectl get svc -o wide -n=kube-system
NAME                    TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE       SELECTOR
elasticsearch-logging   ClusterIP   10.xx.120.130   <none>        9200/TCP         11h       k8s-app=elasticsearch-logging
heapster                ClusterIP   10.xx.232.165   <none>        80/TCP           11h       k8s-app=heapster
kibana-logging          NodePort    10.xx.39.255    <none>        5601:31325/TCP   11h       k8s-app=kibana-logging
kube-dns                ClusterIP   10.xx.0.xx       <none>        53/UDP,53/TCP    12h       k8s-app=kube-dns
kubernetes-dashboard    NodePort    10.xx.xx.xx   <none>        80:32086/TCP     11h       k8s-app=kubernetes-dashboard
monitoring-influxdb     ClusterIP   10.13.199.138   <none>        8086/TCP         11h       k8s-app=influxdb
裴实
2023-03-14

在集群之外公开内部服务器的最常见方法是入口。

首先,您需要在Kubernetes集群中运行入口控制器<有两种维护入口控制器-GCE和nginx

然后,您需要创建一个如下所示的yaml文件并根据您的需要进行更改:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: test-ingress
spec:
  backend:
    serviceName: testsvc
    servicePort: 80

当您使用kubectl create-f创建它时,您应该会看到如下内容:

$ kubectl get ingress
NAME                RULE          BACKEND        ADDRESS
test-ingress        -             testsvc:80     1.2.3.4

在本例中,1.2.3.4是由入口控制器分配的IP。

当一切就绪后,您将能够通过IP访问应用程序(Kibana)

请在Ingress文档中找到更多示例和用例

您还可以在不使用入口资源的情况下公开Kubernetes服务:

  1. 服务。类型=负载平衡器
  2. 服务。类型=节点端口
  3. 端口代理
高正初
2023-03-14

使用您在服务中定义的节点端口:

https://10.123.24.107:30887
 类似资料:
  • 使用指南 - 统计设置 - 第三方推广管理 - 什么是URL参数? 我们经常可以看到URL后面带有?Par1=xxx&Par2=xxx的类似样式,其中Par1、Par2即为该URL的参数。“?”是参数与URL的链接符,“&”是参数与参数之间的链接符。利用这种方式,我们便可以通过URL来传递信息。 以百度统计中的”指定广告跟踪”功能为例,就是利用在URL中添加指定的参数,实现区分推广页面中的广告信息

  • 问题内容: 是否有一种简单可靠的方法来确定当前正在执行的JavaScript文件(在网页内)的URL? 我对此的唯一想法是扫描DOM中的所有脚本属性,以查找如何引用当前文件,然后将其应用于以确定绝对URL 。有人有其他想法吗,有没有我完全忽略的超级简单方法? 更新:通过DOM访问的脚本元素已经具有包含完整URL 的属性。我不知道它的普遍性/标准性如何,但是您可以选择使用它来返回[X] HTML中的

  • Cassandra要使用的连接URL是什么? jdbc:cassandra:root/root@:/

  • 我正在按照IOT Edge上的覆盆子-PI定制视觉服务的说明进行操作。 “-t,--tag”标志的参数“cloud.docker.com/repository/docker/myname/iot-hub-1:lates/cameracapture:0.2.7-arm32v7”无效:引用格式无效 有谁能帮我找到正确的URL路径,或者我把容器上传到docker hub存储库所需要的一些附加步骤吗?

  • wss:/www.mysite.ca/socket.io/?eio=3&transport=websocket 这就是chrome webdevoloper工具显示套接字IO的请求url的方式。 我试图了解更多关于eio=3&transport=websocket的信息。 我必须从API工具调用url

  • 问题内容: 例如 在这里看到了它,不确定是特定于软件包还是实际的CSS语法。 问题答案: 在CSS路径通常是相对于当前的工作目录。 因此,在路径开头使用前缀会告诉Webpack加载程序从节点模块路径“像模块一样”解析导入。 这意味着如果您安装了名为的节点模块,并且需要从其中导入名为的文件,则可以使用以下方法进行操作: 在您的链接示例中,内部有一个名为的模块的导入。 在font-boon模块内部是@