• 部署kubevirt教程


    前提条件

    已安装:kubernetes集群、kubectl、docker
    apt install -y qemu-kvm libvirt virt-install bridge-utils 【所有节点全部安装】

    virt-host-validate qemu
    
    • 1

    部署kubevirt

    下载kubevirt-cr.yaml和kubevirt-operator.yaml
    先执行:

    Kubectl apply -f kubevirt-operator.yaml
    
    • 1

    在执行

    Kubectl apply -f kubevirt-cr.yaml
    
    • 1

    查看是否部署成功

    Kubectl get pods -A
    
    • 1

    安装virtctl,virtctl是kubevirt一个命令行工具
    Github上搜索,进行下载【下载最新版本】:

    cp -p virtctl-v0.58.0-linux-amd64 /usr/bin/virtctl
    chmod +x /usr/bin/virtctl/
    virtctl --help
    
    • 1
    • 2
    • 3

    删除Kubectl

    kubectl delete -n kubevirt kubevirt kubevirt --wait=true   # --wait=true should anyway be default
    kubectl delete apiservices v1.subresources.kubevirt.io   # this needs to be deleted to avoid stuck terminating namespaces
    kubectl delete mutatingwebhookconfigurations virt-api-mutator   # not blocking but would be left over
    kubectl delete validatingwebhookconfigurations virt-operator-validator   # not blocking but would be left over
    kubectl delete validatingwebhookconfigurations virt-api-validator   # not blocking but would be left over
    kubectl delete -f kubevirt-operator.yaml --wait=false
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    注意:如果您错误地首先删除了运算符,KV自定义资源将卡在Terminating状态,要修复它,请从资源中手动删除终结器。

    运行kubevirt-operator.yaml会出现告警:Warning: Detected changes to resource kubevirts.kubevirt.io which is currently being deleted.
    在这里插入图片描述
    运行kubevirt-operator.yaml出现,链接不到kubevirt-operator-webhook。
    在这里插入图片描述
    注意:由于一个错误,需要手动删除apiservice和webhook配置。

    kubectl -n kubevirt patch kv kubevirt --type=json -p '[{ "op": "remove", "path": "/metadata/finalizers" }]'
    
    • 1

    测试

    curl https://kubevirt.io/labs/manifests/vm.yaml
    kubectl apply -f https://kubevirt.io/labs/manifests/vm.yaml
    kubectl get vm
    
    • 1
    • 2
    • 3

    启动虚拟机:

    virtctl start testvm 
    kubectl get vmi
    
    • 1
    • 2

    在这里插入图片描述

    进入虚拟机
    在这里插入图片描述
    对外发布端口

    virtctl expose virtualmachine testvm --name vmiservice --target-port 22 --port 8022 --type NodePort
    ssh -p30822 cirros@本地主机IP
    
    • 1
    • 2
  • 相关阅读:
    信息学奥赛一本通:2050:【例5.20】字串包含
    vue顶部页面加载进度条
    【Python零基础入门篇 · 5】:if判断的用法、内置函数range()、for循环和while循环以及break和contine
    Identity Server 4客户端认证控制访问API
    ASM字节码插桩
    C/C++每日一练:实现选择排序
    C++11-容器
    【数据结构】三、栈和队列:5.顺序队列(循环队列)(初始化,判空判满,入队,出队,实例)
    Linux性能测试之性能测试指标详解
    vue+element-ui实现编辑图片预览
  • 原文地址:https://blog.csdn.net/weixin_42478365/article/details/134251585