Minikube service url not working

I am new to Kubernet and I am studying. I have my Windows 8 machine where I installed Vagrant. Using vagrant I am running ubuntu VM, and inside this virtual machine I am running 3 docker containers.

Strollers File:

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

Container 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

In the same VM, now I have installed minikube and kubectl, as mentioned in this link

minikube version:

minikube version: v0.24.1

kubectl version:

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"}

Minikube started successfully in my ubuntu VM. I created a file 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

Using this yml file, I created a pod in minikube

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

Now I created the service using the command 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

When I tried to access the url from my host machine, I get a "Network Error".

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

minikube service almsonar --url, . .

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

, minikube service almsonar --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

URL- Ubuntu VM,

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

Kubernetes, URL- minikube IP- vaild. URL- IP- localhost.

+4
1

, , minikube start Ubuntu. ISO - (VM ), minikube.

, . - minikube --vm-driver=none, VM VM ( , , 127.0.0.1 UP), , - ( ), . - minikube Windows, . kubectl Windows. , , 127.0.0.1 localhost.

, , , curl :

    curl -L http://127.0.0.1:31209
+2

Source: https://habr.com/ru/post/1692572/


All Articles