gpt4 book ai didi

kubernetes - 访问在Virtualbox中运行的本地Kubernetes集群

转载 作者:行者123 更新时间:2023-12-02 11:41:07 27 4
gpt4 key购买 nike

我通过创建3个Virtualbox节点,使用kubeadm配置了Kubernetes集群,每个节点运行CentOS(主节点,node1,node2)。每个虚拟机虚拟机均使用“桥接”网络进行配置。
结果,我有以下设置:

  • 在192.168.19.87(virtualbox)运行的主节点'master.k8s'
  • 在192.168.19.88(virtualbox)运行的工作程序节点1'node1.k8s'
  • 运行在192.168.19.89的工作节点2'node2.k8s'(virtualbox

  • 现在,我想从我的本地计算机(运行virtualbox节点的物理计算机)访问群集中运行的服务。

    运行 kubectl cluster-info我看到以下输出:
    Kubernetes master is running at https://192.168.19.87:6443
    KubeDNS is running at ...

    例如,假设我将仪表板部署在集群中,如何使用在物理机上运行的浏览器打开仪表板UI?

    最佳答案

    传统方法是使用kubectl proxyLoad Balancer,但是由于您在开发机器中,因此NodePort可用于发布应用程序,因为VirtualBox中没有负载均衡器。

    以下示例部署了运行nginx的echo服务器的3个副本,并使用NodePort发布了http端口:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
    name: nginx-deployment
    spec:
    selector:
    matchLabels:
    app: nginx
    replicas: 3
    template:
    metadata:
    labels:
    app: nginx
    spec:
    containers:
    - name: my-echo
    image: gcr.io/google_containers/echoserver:1.8
    ---

    apiVersion: v1
    kind: Service
    metadata:
    name: nginx-service-np
    labels:
    name: nginx-service-np
    spec:
    type: NodePort
    ports:
    - port: 8082 # Cluster IP http://10.109.199.234:8082
    targetPort: 8080 # Application port
    nodePort: 30000 # Example (EXTERNAL-IP VirtualBox IPs) http://192.168.50.11:30000/ http://192.168.50.12:30000/ http://192.168.50.13:30000/
    protocol: TCP
    name: http
    selector:
    app: nginx

    您可以使用任何VirtualBox IP访问服务器,例如
    http://192.168.50.11:30000http://192.168.50.12:30000http://192.168.50.13:30000

    请参阅 Building a Kubernetes Cluster with Vagrant and Ansible (without Minikube)的完整示例。

    关于kubernetes - 访问在Virtualbox中运行的本地Kubernetes集群,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49511427/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com