Giter Site home page Giter Site logo

kubevirt / kubevirt-tutorial Goto Github PK

View Code? Open in Web Editor NEW
30.0 13.0 27.0 11.01 MB

Demo that guides users through an end to end KubeVirt experience.

Home Page: https://www.kubevirt.io/

License: Apache License 2.0

HCL 53.81% Makefile 1.71% Shell 44.48%
kubernetes kubevirt centos glusterfs gluster-kubernetes

kubevirt-tutorial's Introduction

kubevirt-tutorial's People

Contributors

codificat avatar dankenigsberg avatar iranzo avatar jcpowermac avatar jparrill avatar karmab avatar manuvaldi avatar mazzystr avatar mwardrh avatar scheeles avatar scollier avatar slintes avatar vorburger avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kubevirt-tutorial's Issues

Move virtctl to PATH?

PATH=/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
That way the student doesn't have to do ./virtctl?

@karmab what do you think?

lab 5

substitute pod name

README file should contain more detail

Currently it only contains links but it would be nice to have an introduction, tutorial objectives, list of resources, contact details, etc.
Also, the links should have bullet points.

Lab 6 - Cant connect to VM console using virtctl console <vm-name>

As per ,
https://github.com/scollier/kubevirt-tutorial/blob/master/labs/lab6/lab6.md and https://kubevirt.io/labs/ocp/lab6

After deploying a test vm as shown below

[root@shegde-master0 ~]# oc get vms -o yaml hegde-vm 
apiVersion: kubevirt.io/v1alpha3
kind: VirtualMachine
metadata:
  creationTimestamp: 2019-03-18T19:35:16Z
  generation: 1
  name: hegde-vm
  namespace: myproject
  resourceVersion: "4401932"
  selfLink: /apis/kubevirt.io/v1alpha3/namespaces/myproject/virtualmachines/hegde-vm
  uid: f54e2425-49b4-11e9-acdf-001a4a231206
spec:
  running: true

And

[root@shegde-master0 ~]# oc get vms
NAME       AGE       RUNNING   VOLUME
hegde-vm   12m       true      
vm1        3d        true  

When issued with virtctl console hegde-vm getting this error

[root@shegde-master0 ~]# virtctl console hegde-vm
Can't connect to websocket (500):

kubevirt-tutorial-presubmit-lab-testing-k8s

Some of the python code written in the kubevirt-tutorial-presubmit-lab-testing-k8s is still in 2.7, and the following warning is appearing:

DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.

That code has to be ported to python 3.

/cc jparrill

periodic-kubevirt-tutorial-lab-testing #1356930358137851904

https://prow.apps.ovirt.org/view/gcs/kubevirt-prow/logs/periodic-kubevirt-tutorial-lab-testing/1356930358137851904

Status:

Terminated (Error - imeout=600s -n kubevirt while ! kubectl get deployment
virt-controller -n kubevirt --no-headers && echo 'Looping...'; do sleep 5; done
kubectl wait deployment virt-controller --for condition=available --timeout=600s
-n kubevirt kubectl get all -l kubevirt.io virtctl version kubectl apply -f
$HOME/kubevirt/cdi-operator-manifests/cdi-operator.yaml kubectl config
set-context --current --namespace=cdi while ! kubectl get deployment
cdi-operator -n cdi --no-headers && echo 'Looping...'; do sleep 5; done kubectl
wait deployment cdi-operator --for condition=available --timeout=600s -n cdi
kubectl apply -f $HOME/kubevirt/cdi-operator-manifests/cdi-operator-cr.yaml
while ! kubectl get deployment cdi-apiserver -n cdi --no-headers && echo
'Looping...'; do sleep 5; done while ! kubectl get deployment cdi-deployment -n
cdi --no-headers && echo 'Looping...'; do sleep 5; done while ! kubectl get
deployment cdi-uploadproxy -n cdi --no-headers && echo 'Looping...'; do sleep 5;
done kubectl wait deployment -l cdi.kubevirt.io --for condition=available
--timeout=600s -n cdi kubectl get all #################### SOURCE OF TEST
#################### /home/prow/go/src/kubevirt-tutorial/hack/test_lab: line 70:
bc: command not found /home/prow/go/src/kubevirt-tutorial/hack/test_lab: line
70: bc: command not found
{"component":"entrypoint","file":"prow/entrypoint/run.go:164","func":"k8s.io/test-infra/prow/entrypoint.Options.ExecuteProcess","level":"error","msg":"Process
did not finish before 2h0m0s
timeout","severity":"error","time":"2021-02-03T13:39:54Z"}
{"component":"entrypoint","file":"prow/entrypoint/run.go:245","func":"k8s.io/test-infra/prow/entrypoint.gracefullyTerminate","level":"error","msg":"Process
did not exit before 15s grace
period","severity":"error","time":"2021-02-03T13:40:09Z"}
{"component":"entrypoint","error":"process timed
out","file":"prow/entrypoint/run.go:80","func":"k8s.io/test-infra/prow/entrypoint.Options.Run","level":"error","msg":"Error
executing test process","severity":"error","time":"2021-02-03T13:40:09Z"} ) at
2021-02-03 13:40:10 +0000 UTC with exit code 127

Errors in logs:

./cluster-up/up.sh
Unable to find image 'quay.io/kubevirtci/gocli:2101261557-a2af136' locally
docker: Error response from daemon: Get https://quay.io/v2/: proxyconnect tcp: dial tcp 172.30.59.198:3128: connect: no route to host.
See 'docker run --help'.
make[1]: *** [Makefile:6: cluster-up] Error 125
/home/prow/go/src/kubevirt-tutorial/hack/test_lab: line 70: bc: command not found
/home/prow/go/src/kubevirt-tutorial/hack/test_lab: line 70: bc: command not found
/home/prow/go/src/kubevirt-tutorial/hack/test_lab: line 70: bc: command not found
-------
Test Name: lab002
Test Result: ERR
Test Expected Result: PASS
Real Time: 
Retrying Test...
/home/prow/go/src/kubevirt-tutorial/hack/test_lab: line 70: bc: command not found
/home/prow/go/src/kubevirt-tutorial/hack/test_lab: line 70: bc: command not found
{"component":"entrypoint","file":"prow/entrypoint/run.go:164","func":"k8s.io/test-infra/prow/entrypoint.Options.ExecuteProcess","level":"error","msg":"Process did not finish before 2h0m0s timeout","severity":"error","time":"2021-02-03T13:39:54Z"}
{"component":"entrypoint","file":"prow/entrypoint/run.go:245","func":"k8s.io/test-infra/prow/entrypoint.gracefullyTerminate","level":"error","msg":"Process did not exit before 15s grace period","severity":"error","time":"2021-02-03T13:40:09Z"}
TASK [kubevirt : Copy student materials] ***************************************
changed: [localhost]
TASK [kubevirt : Apply Multus manifests] ***************************************
failed: [localhost] (item=multus-ns) => {"ansible_loop_var": "item", "changed": false, "item": "multus-ns", "msg": "Failed to load kubeconfig due to Invalid kube-config file. No configuration found."}
failed: [localhost] (item=nad-crd) => {"ansible_loop_var": "item", "changed": false, "item": "nad-crd", "msg": "Failed to load kubeconfig due to Invalid kube-config file. No configuration found."}
failed: [localhost] (item=multus-clusterrole) => {"ansible_loop_var": "item", "changed": false, "item": "multus-clusterrole", "msg": "Failed to load kubeconfig due to Invalid kube-config file. No configuration found."}
failed: [localhost] (item=multus-clusterrolebinding) => {"ansible_loop_var": "item", "changed": false, "item": "multus-clusterrolebinding", "msg": "Failed to load kubeconfig due to Invalid kube-config file. No configuration found."}
failed: [localhost] (item=multus-sa) => {"ansible_loop_var": "item", "changed": false, "item": "multus-sa", "msg": "Failed to load kubeconfig due to Invalid kube-config file. No configuration found."}
failed: [localhost] (item=multus-cni-configmap) => {"ansible_loop_var": "item", "changed": false, "item": "multus-cni-configmap", "msg": "Failed to load kubeconfig due to Invalid kube-config file. No configuration found."}
failed: [localhost] (item=multus-ds) => {"ansible_loop_var": "item", "changed": false, "item": "multus-ds", "msg": "Failed to load kubeconfig due to Invalid kube-config file. No configuration found."}
failed: [localhost] (item=cni-plugins) => {"ansible_loop_var": "item", "changed": false, "item": "cni-plugins", "msg": "Failed to load kubeconfig due to Invalid kube-config file. No configuration found."}
failed: [localhost] (item=l2-bridge) => {"ansible_loop_var": "item", "changed": false, "item": "l2-bridge", "msg": "Failed to load kubeconfig due to Invalid kube-config file. No configuration found."}
PLAY RECAP *********************************************************************
localhost                  : ok=8    changed=4    unreachable=0    failed=1    skipped=47   rescued=0    ignored=0   

periodic test time out

https://prow.apps.ovirt.org/view/gcs/kubevirt-prow/logs/periodic-kubevirt-tutorial-lab-testing/1275754027140780032

{"component":"entrypoint","file":"prow/entrypoint/run.go:164","func":"k8s.io/test-infra/prow/entrypoint.Options.ExecuteProcess","level":"error","msg":"Process did not finish before 2h0m0s timeout","time":"2020-06-24T13:34:07Z"}
{"component":"entrypoint","file":"prow/entrypoint/run.go:245","func":"k8s.io/test-infra/prow/entrypoint.gracefullyTerminate","level":"error","msg":"Process did not exit before 15s grace period","time":"2020-06-24T13:34:22Z"}

Lab 5 - virt-controller pod deployment fails in kubevirt NameSpace

As per https://github.com/scollier/kubevirt-tutorial/blob/master/labs/lab5/lab5.md

NAME                               READY     STATUS             RESTARTS   AGE
kubevirt-cpu-node-labeller-7z6lz   1/1       Running            0          14d
kubevirt-cpu-node-labeller-j58fc   1/1       Running            0          14d
virt-api-fd86fd5fc-7cfxq           1/1       Running            0          14d
virt-api-fd86fd5fc-bqk8f           1/1       Running            0          14d
virt-controller-6fccbf85fd-kbk9r   1/1       Running            0          14d
virt-controller-6fccbf85fd-mb4zp   0/1       CrashLoopBackOff   3921       14d
virt-controller-6fccbf85fd-md7tm   0/1       CrashLoopBackOff   1          24s
virt-handler-8b84x                 1/1       Running            0          14d
virt-handler-dgr29                 1/1       Running            0          14d
virt-handler-s2dd4                 1/1       Running            0          14d
virt-operator-75b774cc4c-pr5g4     1/1       Running            0          14d
[root@shegde-master0 ~]# oc get pods
NAME                               READY     STATUS             RESTARTS   AGE
kubevirt-cpu-node-labeller-7z6lz   1/1       Running            0          14d
kubevirt-cpu-node-labeller-j58fc   1/1       Running            0          14d
virt-api-fd86fd5fc-7cfxq           1/1       Running            0          14d
virt-api-fd86fd5fc-bqk8f           1/1       Running            0          14d
virt-controller-6fccbf85fd-kbk9r   1/1       Running            0          14d
virt-controller-6fccbf85fd-mb4zp   0/1       CrashLoopBackOff   3921       14d
virt-controller-6fccbf85fd-md7tm   0/1       CrashLoopBackOff   4          2m
virt-handler-8b84x                 1/1       Running            0          14d
virt-handler-dgr29                 1/1       Running            0          14d
virt-handler-s2dd4                 1/1       Running            0          14d
virt-operator-75b774cc4c-6t8vd     1/1       Running            0          1m
virt-operator-75b774cc4c-pr5g4     1/1       Running            0          14d

Only the virt-controller pod deployment fails in kubevirt NS

Lab 9 - Missing Fedora OS from drop down

In lab 9, a process to create VM's from a GUI, the section says to select an OS as fedora29 but we dont have this in the drop down.

Under Using the kubevirt web ui
Create a Virtual Machine

In the Basic Settings configure with the following

Name: vm3
Namespace: myproject
Provision Source: Container
Container Image: docker.io/kubevirt/cirros-registry-disk-demo:latest
Operating System: fedora29 - No OS with fedora available.
Memory: 1 - No option to select Memory
CPUs: 1 - No option to select CPU count
Workload Profile: generic

Lab 2, different client and server versions

It's not critical, but not very nice: kubectl is 1.15.0, server 1.14.3

[kubevirt@kubevirtlab-2 ~]$ k version
Client Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.0", GitCommit:"e8462b5b5dc2584fdcd18e6bcfe9f1e4d970a529", GitTreeState:"clean", BuildDate:"2019-06-19T16:40:16Z", GoVersion:"go1.12.5", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"14", GitVersion:"v1.14.3", GitCommit:"5e53fd6bc17c0dec8434817e69b04a25d8ae0ff0", GitTreeState:"clean", BuildDate:"2019-06-06T01:36:19Z", GoVersion:"go1.12.5", Compiler:"gc", Platform:"linux/amd64"}

Lab 4 - Ara app Errors out after rollout

As mentioned both in https://kubevirt.io/labs/ocp/lab4 and https://github.com/scollier/kubevirt-tutorial/blob/master/labs/lab4/lab4.md after using the ara template for app deployment ,

Im getting these errors

--> Deploying template "myproject/ara" to project myproject

     ara
     ---------
     ara

--> Creating resources ...
    imagestream.image.openshift.io "ara" created
    buildconfig.build.openshift.io "ara" created
    deploymentconfig.apps.openshift.io "ara" created
    service "ara" created
    route.route.openshift.io "ara" created
--> Success
    Build scheduled, use 'oc logs -f bc/ara' to track its progress.
    Access your application via route 'ara-myproject.apps.cnv-comm.10.8.120.100.nip.io' 
    Run 'oc status' to view your app.
[root@shegde-master0 ~]# oc logs -f bc/ara
Cloning "https://github.com/jcpowermac/openshift-presentation" ...
	Commit:	72d8c66e998081477052810b60bb18332bc1b0ee (speed up buildconfig)
	Author:	Joseph Callen <[email protected]>
	Date:	Fri Jul 6 10:34:47 2018 -0400
**error: build error: cannot connect to Docker endpoint**
[root@shegde-master0 ~]# oc get bc
NAME      TYPE      FROM         LATEST
ara       Docker    Git@master   1
[root@shegde-master0 ~]# oc get dc
NAME      REVISION   DESIRED   CURRENT   TRIGGERED BY
ara       0          1         0         config,image(ara:latest)
example   1          6         6         config
[root@shegde-master0 ~]# oc rollout status dc/ara
Deployment config "ara" waiting on image update```

As per my understanding this should have succeeded.

-> [root@shegde-master0 ~]# oc get pods
NAME                      READY     STATUS    RESTARTS   AGE
ara-1-build               0/1       Error     0          19m
example-1-7fdf9           1/1       Running   0          1h
example-1-h8srg           1/1       Running   0          2d

Fedora name should be changed

In lab 8, when we talk about Confirm connectivity section
Through cloudinit, we also configured fedora-multus-1 vm to have ip 11.0.0.5 and fedora-multus-1 vm to have ip 11.0.0.6 so try to ping or ssh between them

Here, vm name with IP 11.0.0.6 should be fedora-multus-2 instead of fedora-multus-1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.