centos8.5安装kvm及kvm虚拟机的端口映射问题
1.安装KVM
grep -Ei 'vmx|svm' /proc/cpuinfo|more #查看硬件是否支持虚拟化
yum install -y virt-* libvirt qemu-img #安装KVM虚拟机
lsmod | grep kvm #是否支持kvm模块
systemctl enable libvirtd #系统启动时自动启动kvm服务
systemctl start libvirtd #启动kvm服务
常用操作:
virsh list --all #查看本机创建的kvm虚拟机列表
virsh start 虚拟机名 #启动
virsh shutdown 虚拟机名 #关闭
virsh autostart 虚拟机名 #配置开机自启动虚拟机
默认虚拟机存储位置: /var/lib/libvirt/images/
2.安装Cockpit运维工具
yum install cockpit #安装 cockpit
systemctl enable --now cockpit.socket #开机自启动cockpit
yum install cockpit-machines #安装软件包使cockpit支持WEB管理
firewall-cmd --add-service=cockpit --permanent #打开防火墙与cockpit相关的策略
firewall-cmd --reload
访问: 使用9090端口通过浏览器访问 开始创建kvm虚拟机吧
3.在kvm中新建的虚拟机使用NAT网络时, 把虚拟机端口映射到宿主机上,使通过公网可访问虚拟机端口
添加相应的iptables策略:
添加filter 表的forward链
iptables -I FORWARD -m state -d 192.168.122.0/24 --state NEW,RELATED,ESTABLISHED -j ACCEPT
添加nat 表的prerouting链, 例: 公网2538端口映射到虚拟机192.168.122.199的22端口
iptables -t nat -I PREROUTING -p tcp --dport 2538 -j DNAT --to-destination 192.168.122.199:22
查看一下策略还在不在
iptables -L -n -t nat|grep 2538
=========================================================================
正常工作:
iptables -I FORWARD -d 0.0.0.0/0 -j ACCEPT
firewall-cmd --zone=public --add-forward-port=port=2538:proto=tcp:toport=22:toaddr=192.168.122.199
不正常工作:
firewall-cmd --permanent --zone=public --direct --add-rule ipv4 filter FORWARD 0 -d 0.0.0.0/0 -j ACCEPT
firewall-cmd --permanent --zone=public --add-forward-port=port=2538:proto=tcp:toport=22:toaddr=192.168.122.199
4.命令方式创建虚拟机:
命令创建虚拟机: 名称为ubuntu-01,4G内存,2个CPU,50G的qcow2格式磁盘,网络为桥接口virbr0
virt-install --name ubuntu-01 --memory 4096 --vcpus 2 --cdrom=/data/ubuntu-20.10.iso --disk size=50 --network=bridge:virbr0,model=virtio
命令行连接虚拟机:
virsh console --domain ubuntu-01 --force
最新文章
- Python网络连接
- Eclipse “cannot be resolved to a type” 错误
- 崽崽帮www.zaizaibang.com精选14
- Comet服务器推送与SignalR
- HTML5学习总结-05 HTML5表单
- HTTP2.0的二进制分帧
- Javascript 笔记与总结(2-6)var
- Sqoop2环境搭建
- Advice on improving your programming skills
- 【机器学习算法-python实现】svm支持向量机(1)—理论知识介绍
- iOS之获取当前时间日期并按固定格式显示
- 递归-快速排序quickSort
- hadoop端口配置指南
- 【18/12/31】hashcat源码粗读 --- sha256部分
- centos 6.5升级内核到3.1
- Java大数相加(多个大数相加)-hdu1250
- API接口规范V1.0——制定好规范,才好合作开发
- Java的String类
- Helm 安装 nginx-ingress 的方法
- kali更新失败