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

迷你库贝服务网址不起作用

微生嘉祥
2023-03-14

我是库伯内特斯的新手,我正在学习。我有我的视窗8机器,我在那里安装了瓦格兰特。使用流浪者,我运行ubuntu虚拟机,在虚拟机中,我运行3个docker容器。

流浪者档案:

Vagrant.configure(2) do |config|
  config.vm.box = "test"
  config.vm.network "public_network"
  config.vm.network "forwarded_port", guest: 8080, host: 8080
  config.vm.network "forwarded_port", guest: 50000, host: 50000
  config.vm.network "forwarded_port", guest: 8081, host: 8089
  config.vm.network "forwarded_port", guest: 9000, host: 9000
  config.vm.network "forwarded_port", guest: 3306, host: 3306
    config.vm.provider "virtualbox" do |v|
        v.memory = 2048
        v.cpus = 2
    end
    config.vm.provider "virtualbox" do |v|
    v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
    v.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
end
end

容器 in Ubuntu VM :

root@vagrant-ubuntu-trusty:~/docker-containers# docker images
REPOSITORY                                             TAG                 IMAGE ID            CREATED             SIZE
dockercontainers_jenkins                               latest              bb1142706601        4 days ago          1.03GB
dockercontainers_sonar                                 latest              3f021a73750c        4 days ago          1.61GB
dockercontainers_nexus                                 latest              ddc31d7ad052        4 days ago          1.06GB
jenkins/jenkins                                        lts                 279f21046a63        4 days ago          813MB
openjdk                                                8                   7c57090325cc        5 weeks ago         737MB

在同一个VM中,现在我安装了迷你库贝和库贝特,如此链接中所述

迷你库贝版本:

minikube version: v0.24.1

kubectl版本:

Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.1", GitCommit:"3a1c9449a956b6026f075fa3134ff92f7d55f812", GitTreeState:"clean", BuildDate:"2018-01-04T11:52:23Z", GoVersion:"go1.9.2", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.0", GitCommit:"0b9efaeb34a2fc51ff8e4d34ad9bc6375459c4a4", GitTreeState:"clean", BuildDate:"2017-11-29T22:43:34Z", GoVersion:"go1.9.1", Compiler:"gc", Platform:"linux/amd64"}

迷你库贝在我的 ubuntu VM 中成功启动。我已经创建了 pod.yml 文件

apiVersion: v1
kind: Pod
metadata:
  name: testsonaralm
  labels:
    app: sonar_alm
spec:
  containers:
  - name: alm-sonar
    image: dockercontainers_sonar:latest
    imagePullPolicy: IfNotPresent
    ports:
    - containerPort: 9000

使用这个yml文件,我在minikube中创建了一个pod

root@vagrant-ubuntu-trusty:~/docker-containers# kubectl create -f test_pod.yml
pod "testsonaralm" created

现在我使用kubectl命令创建了一个服务。

root@vagrant-ubuntu-trusty:~/docker-containers# kubectl expose pod testsonaralm --port=9000 --target-port=9000 --name almsonar
service "almsonar" exposed

root@vagrant-ubuntu-trusty:~/docker-containers# kubectl get service
NAME         TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)    AGE
almsonar     ClusterIP   10.102.86.193   <none>        9000/TCP   10s
kubernetes   ClusterIP   10.96.0.1       <none>        443/TCP    3d

当我尝试从主机访问 URL 时,我收到“网络错误”。

root@vagrant-ubuntu-trusty:~/docker-containers# kubectl describe svc almsonar
Name:              almsonar
Namespace:         default
Labels:            app=sonar_alm
Annotations:       <none>
Selector:          app=sonar_alm
Type:              ClusterIP
IP:                10.101.237.223
Port:              <unset>  9000/TCP
TargetPort:        9000/TCP
Endpoints:         172.17.0.1:9000
Session Affinity:  None
Events:            <none>
root@vagrant-ubuntu-trusty:~/docker-containers# minikube ip
127.0.0.1

当我执行<code>minikube服务almsonar--url<code>命令时,得到一个空响应。因此,我删除了该服务,并使用修改后的命令创建了一个新服务。

root@vagrant-ubuntu-trusty:~/docker-containers# kubectl expose pod testsonaralm --type=NodePort --name almsonar
service "almsonar" exposed

现在,当我运行迷你库贝服务阿尔姆森纳 --url 命令时,我得到了一个 URL 作为

root@vagrant-ubuntu-trusty:~/docker-containers# minikube service almsonar --url
http://127.0.0.1:31209

root@vagrant-ubuntu-trusty:~/docker-containers# kubectl describe svc almsonar
Name:                     almsonar
Namespace:                default
Labels:                   app=sonar_alm
Annotations:              <none>
Selector:                 app=sonar_alm
Type:                     NodePort
IP:                       10.101.192.1
Port:                     <unset>  9000/TCP
TargetPort:               9000/TCP
NodePort:                 <unset>  30600/TCP
Endpoints:                172.17.0.1:9000
Session Affinity:         None
External Traffic Policy:  Cluster
Events:                   <none>
root@vagrant-ubuntu-trusty:~/docker-containers# minikube ip
127.0.0.1

我无法在我的Ubuntu虚拟机中访问这个URL,

root@vagrant-ubuntu-trusty:~/docker-containers# curl http://127.0.0.1:31209
<HTML>
<HEAD><TITLE>Redirection</TITLE></HEAD>
<BODY><H1>Redirect</H1></BODY>

当我阅读库伯内特斯文档时,迷你库贝服务URL将有一个有效的IP。但在我的情况下,URL包含本地主机IP地址。

共有3个答案

伊飞光
2023-03-14

如果您使用Docker驱动程序运行minikube,则需要进行一些端口转发。打开单独的命令行终端并运行以下命令(保持窗口打开):

> kubectl port-forward service/hello-minikube 54080:8080 

现在,在原始命令行窗口中运行服务:

> minikube service hello-minikube

现在您可以访问http://localhost:54080一切都应该正常工作。

景哲
2023-03-14

您在使用端口号 80 创建容器或部署时出错。这就是您的 URL 服务无法正常工作的原因,因为 80 端口已经很忙了。您需要使用其他端口号,如 8080。

例如:

$ kubectl run hello-minikube --image=gcr.io/google_containers/echoserver:1.4 --port=8080
$  kubectl expose pod hello-minikube --type=NodePort
$  minikube service hello-minikube --url
胡景澄
2023-03-14

据我所见,您在Ubuntu VM中执行了minikube start。默认情况下,这将尝试下载minikube ISO并启动另一个运行minikube的VM(VM中的VM)。

我认为这种嵌套虚拟化导致了您的安装问题。如果出于某种原因,minikube从< code> - vm-driver=none开始,以避免vm内部的VM(我认为是这种情况,查看127.0.0.1以上版本),则有一些功能处于测试阶段(在撰写此答案时),这可以解释奇怪的行为。因此,我的第一个建议是在Windows主机中执行minikube,这样它就可以在virtualbox中启动一个虚拟机。在内部,您可以复制以前拥有的容器环境,并从Windows主机执行kubectl命令。大多数文档都假设了这种设置,所以您不会在localhost中看到类似127.0.0.1的差异。

在任何情况下,为了进行完全重定向并检查服务是否正在运行,请尝试执行这样的curl命令:

    curl -L http://127.0.0.1:31209
 类似资料:
  • 我是库伯内特斯的新手。在库伯内特斯文档的帮助下,我在我的Windows机器上安装了(v0.24.1)和。虚拟盒子(版本5.1.18)也安装在我的机器上。 在启动之前,我已经执行了和

  • 我对迷你库贝很陌生。 我想在本地机器上尝试迷你库贝。 我安装了乌班图服务器和泊坞窗。 我已经下载并使用此命令启动了迷你库贝: sudo minikube start--vm驱动程序=无 如果我键入此命令: sudo kubectl get services --all-namespaces 如果我输入:sudo minikube仪表板--url,我得到:http://127.0.0.1:30000

  • 我正在尝试创建minikube集群,但总是失败。 任何建议都非常欢迎: C:\WINDOWS\system32 Microsoft Windows 10 Home 10.0.19042 Build 19042上的minikube v1.16.0 根据用户配置使用vmware驱动程序 启动群集minikube中的控制平面节点minikube 正在创建vmware VM(CPU=2,内存=4000MB

  • 我按照官方报告中的说明在kubernetes上安装,但是当我试图使用UI时,我得到了404。有人能告诉我可能是什么问题吗? repo:https://github . com/Apache/incubator-air flow/tree/master/scripts/ci/kubernetes 澄清一下,我遵循的指示是: 将 kubectl 点到本地微型 kube 群集 (v1.10.0) 克隆存

  • 迷你任务(MiniTES)汉化版是一款网页放置游戏,运行于 web 浏览器。 攻略 此攻略仅原版剧情、非常简单; 升级有助于顺利展开剧情,挂机即可; 一些道具需要移动主角到地图各点: 银汐滇池:塞尔拉克 传说。 麦德拉斯:鹤立澳湾 传说。 亜达新村:瑞代尔堡 传说。 黑曜草原:鄂尔科特 传说。 死亡泽塔:奎姆森宫 传说。 天景豪苑:法林深坑 传说。 巴雷斯特:火云雾海 传说。 三角洲头:西鲁瓦恩

  • 当我运行这个命令时: minikube start --vm-driver=hyperv minikube无法启动并显示以下错误: minikube v1.7.2 on Microsoft Windows 10 Enterprise 根据用户配置使用 hyperv 驱动程序 !“hyperv”驱动程序报告了一个问题:C:\ WINDOWS \ System32 \ WINDOWS powershe