Python微信订餐小程序课程视频

https://edu.csdn.net/course/detail/36074

Python实战量化交易理财系统

https://edu.csdn.net/course/detail/35475
最近需要在客户环境搭建 csr1000v,客户环境不能联网,同时使用 kvm 管理。所以需要离线安装 kvm,在利用 kvm 安装 csr100v ,中间遇到不少坑,现记录如下。

所有安装步骤是在 root 用户的基础上完成。

准备好的 kvm 安装包和 csr1000v 安装包所在地址:

ip: 10.124.205.51
user: root/cisco123
[root@localhost temp]# cd /opt/temp
[root@localhost temp]# ls
csr1000v-universalk9.16.12.04.qcow2  kvm_pkg.tar.gz

整体安装思路如下:

  1. Linux 环境准备,检验系统版本以及是否具有虚拟化功能
  2. 离线安装 kvm
  3. kvm 安装 csr1000v
  4. 配置 KVM 相关网络

Linux 环境准备

检查 Linux 版本及内核是否一致,因为涉及到离线安装:

[root@localhost kvm\_offile\_pkg]# cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)[root@localhost kvm\_offile\_pkg]# uname -r
3.10.0-1160.el7.x86_64

关闭 Selinux

setenforce 0
vim /etc/selinux/config
SELINUX=disabled

检查虚拟化功能是否开启

 cat /proc/cpuinfo | egrep "vmx|svm"

如果看到 vmx 或者 svm,表示虚拟化功能正常打开。

或者也可通过如下命令, 看到 VT-x 表示正常:

[root@localhost ~]# lscpu | grep Virtualization
Virtualization:      VT-x
Virtualization type: full

离线安装 kvm

找一台可联网,相同版本的 linux 服务器,使用 yum 离线下载 kvm 相关包:

yum install --downloadonly --downloaddir=/opt/kvm qemu-kvm python-virtinst libvirt libvirt-python virt-manager libguestfs-tools bridge-utils virt-install virt-viewer

将其打包后导入离线服务器:

tar -czvf kvm_pkg.tar.gz kvm

在离线服务器解压并安装:

tar -xzvf kvm_pkg.tar.gz# 使用 ls 查看,共有 250 个安装包
ls -l | grep "^-" | wc -l# 安装:
yum localinstall -y {Path}/kvm/*.rpm

启动 kvm

systemctl enable libvirtd
systemctl start libvirtd

查看 kvm 版本信息:

yum info qemu-kvm
/usr/libexec/qemu-kvm --version

kvm 安装 csr1000v

将下载好的 csr1000v 镜像导入服务器

# 将安装包导入到 /var/lib/libvirt/images 文件夹下
mv csr1000v-universalk9.16.12.04.qcow2 /var/lib/libvirt/images

安装 csr1000v

 virt-install                    \--connect=qemu:///system \--name=csr\_1000v \--os-type=linux \--os-variant=rhel4 \--arch=x86\_64 \--cpu host-model \--vcpus=1,sockets=1,cores=1,threads=1 \--hvm \--ram=4096 \--import \--disk path=/var/lib/libvirt/images/csr1000v-universalk9.16.12.04.qcow2,bus=ide,format=qcow2 \--network bridge=virbr0,model=virtio \--noreboot# --name 可以起一个自定义的名字

安装成功可看到如下内容:

打开 csr1000v

virsh --connect qemu:///system start csr_1000v

连接 csr1000v, 等等其启动完成

virsh console csr_1000v

看到如下内容,表示启动成功:

配置 KVM 网络

宿主机访问 kvm

获取虚拟机有 DHCP 的分配 IP:

[root@localhost ~]# virsh net-dhcp-leases defaultExpiry Time          MAC address        Protocol  IP address                Hostname        Client ID or DUID
-------------------------------------------------------------------------------------------------------------------2022-04-01 15:43:42  52:54:00:0d:86:d9  ipv4      192.168.122.130/24        Router          00:63:69:73:63:6f:2d:35:32:35:34:2e:30:30:32:62:2e:34:31:30:36:2d:47:69:31

如果手动配置的 IP 可以通过如下脚本来获取, 通过 mac 地址,反查 arp 表,获取分配的 ip.

#!/bin/bash
running_vms=`virsh list |grep running`
echo -ne "共有`echo "$running\_vms"|wc -l`个虚拟机在运行.\n"
for i in `echo "$running\_vms" | awk '{ print $2 }'`;do
mac=`virsh dumpxml $i |grep "mac address"|sed "s/.*'\(.*\)'.*/\1/g"`
ip=`arp -ne |grep "$mac" |awk '{printf $1}'`
printf "%-30s %-30s\n" $i $ip
done[root@localhost net-util]# bash list\_vm\_ip.sh
共有2个虚拟机在运行.
csr_1000v                      192.168.122.130
new_csr_1000v                  192.168.122.131

由于本身是桥接到 br0 网卡上,可和宿主直接通信:

所以可在 router 配置 telnet 登录:

外网访问 KVM

上面的网络情况做到了,可以使用宿主机为 csr1000v 配置。但如果想从外部网络中,访问设备就无法做到了。

这时就需要新创建一个的网桥,然后和 kvm 的网卡相连接。

先介绍下网络环境:

机器名 IP 描述
宿主机 10.124.205.51 存储 kvm 的物理机
csr1000v 10.124.205.52 用 kvm 启动的虚机
测试机器 10.124.205.14 用于测试能否访问到 kvm 虚机

整体思路如下:

  1. 记录当前宿主机可以访问外网的网卡信息,比如 IP,网关等
  2. 新建一个网桥
  3. 将新建的网桥和原来的网卡想关联
  4. 修改 kvm 虚机文件
  5. 进入 csr1000v 绑定真实 IP
  6. 测试

首先记录当前物理网卡信息:

使用 ip addr 找到带有 IP 的真实网卡,比如我这里是 ens192:

2: ens192:  mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:50:56:bb:93:c4 brd ff:ff:ff:ff:ff:ffinet 10.124.205.51/24 brd 10.124.207.255 scope global noprefixroute ens192valid\_lft forever preferred\_lft foreverinet6 fe80::eb4d:e564:a48:1835/64 scope link noprefixroutevalid\_lft forever preferred\_lft forever

记录对应配置文件的有效信息:

cat /etc/sysconfig/network-scripts/ifcfg-ens192
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens192"
UUID="94a5dbcf-1d42-4fe1-ad0a-6f9743f0f033"
DEVICE="ens192"
ONBOOT="yes"
IPADDR="10.124.205.51"
PREFIX="24"
GATEWAY="10.124.205.254"
DNS1="64.104.14.184"
DNS2="208.67.222.222"
IPV6_PRIVACY="no"

这里将一些有用的信息,拷贝出来。之后新建网桥需要用到:

IPADDR="10.124.205.51"
PREFIX="24"
GATEWAY="10.124.205.254"
DNS1="64.104.14.184"
DNS2="208.67.222.222"

关闭网络

systemctl stop NetworkManager

因为要新建一个网桥,为了防止同名的情况,先查看下, 没有叫 br0 的网桥:

brctl show

创建新网桥,添加之前准备好的信息:

vim /etc/sysconfig/network-scripts/ifcfg-br0DEVICE=br0
ONBOOT=yes
TYPE=Bridge
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR="10.124.205.51"
PREFIX="24"
GATEWAY="10.124.205.254"
DNS1="64.104.14.184"
DNS2="208.67.222.222"

更新原始 ens192 网卡信息,与新网桥建立连接, 记得把原始文件备份

vim /etc/sysconfig/network-scripts/ifcfg-ens192NAME="ens192"
DEVICE="ens192"
ONBOOT="yes"
TYPE=Ethernet
ONBOOT=yes
BRIDGE=br0

重启网络:

systemctl restart network

查看网卡是否生效:

原始 IP 转移到新网卡上:

重启 kvm:

systemctl restart libvirtd

修改 kvm csr1000v 配置文件

virsh edit  csr_1000v将 interface 关联的网卡,改成新网卡。type='bridge'>'52:54:00:0d:86:d9'/><source bridge='br0'/>type='virtio'/>type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>其中 type 需要改变为 bridge,bridge 绑定的名字需要改成 `br0`

重启 csr1000v

virsh reboot  csr_1000v

查看 csr_1000v 的网卡是否挂载到 br0 上:

这时进入到设备中,正常配置有效的 ip,因为是桥接的模式,外网就可以正常访问了。

这里配置 IP 为 10.124.205.52, 从另外一台物理机上可以正常 ping 通:

之前使用 kvm 安装 csr1000v 后,发现使用 console 无法登录到 router 里面,一直卡在 Escape character is '^]'

使用官网文档,配置 tcp 串口依然不好用。最后是通过在 router 里面配置 platform console serial 这句话得以用 console 访问。

目前还存在一个问题,就是想给 router 默认刷一些 day0 配置进去,但安装官网创建 iso 镜像的方式也不太好用,后续研究后补充。

参考

cisco install csr1000v

Centos7 离线安装 KVM,并安装 Csr1000v相关推荐

  1. Centos7 安装KVM

    参考文章: KVM 介绍(1):简介及安装 centos7安装部署kvm,照做就行 Centos7搭建KVM 第二章:KVM安装 - CharlieBrown - 博客园 KVM简介: https:/ ...

  2. Centos7开小鸡(centos7安装KVM+kimchi+wok开小鸡)第一篇安装kimchi wok

    Centos7开小鸡(centos7安装KVM+kimchi+wok开小鸡)之第一篇:安装kimchi wok 前提条件:环境为centos7 必须支持虚拟化 前几天折腾proxmox ve虽然安装成 ...

  3. Centos7安装kvm服务器

    Centos7安装kvm服务器 什么是kvm virt-manager及相关软件简介 virt-manger架构及原理 KVM QEMU Libvirt 检查硬件是否支持kvm虚拟化 启用嵌套虚拟化( ...

  4. Centos7.4安装kvm虚拟机(使用virt-manager管理)

    2019独角兽企业重金招聘Python工程师标准>>> Centos7.4安装kvm虚拟机(使用virt-manager管理) 之前介绍了使用WebVirtMgr或Openstack ...

  5. centos7离线安装ansible

    centos7离线安装ansible: 1.通过在线的centos7将rpm包下载好了,上传到指定服务器. 下载官方repo,rpm -iUvh http://dl.Fedoraproject.org ...

  6. CentOS7文本模式下配置及安装KVM虚拟机

    一.准备工作:        在安装和配置kvm虚拟机之前,首先确保kvm软件已经被正确安装,如果没有安装,请参考如下几步操作:          第一步:检查CPU是否支持vmx相关指令,如果执行结 ...

  7. centos7 samba 离线安装_CentOS 7安装配置Samba服务器(挂载共享文件夹)

    CentOS 7安装配置Samba服务器 CentOS 7下Samba服务器安装配置过程笔记. 假设我们有这样一个场景 共享名 路径 权限 SHAREDOC /smb/docs 所有人员包括来宾均可以 ...

  8. XenCenter软件中的Centos7离线安装yum源,不用wget和crul

    XenCenter软件中的Centos7离线安装yum源,不用wget和crul 1.去网站http://mirrors.163.com/centos/7/os/x86_64/Packages/下载文 ...

  9. cento7安装kvm并通过kvm命令行安装centos7

    这里写自定义目录标题 一.KVM简介 二.KVM虚拟化平台构建 三.创建虚拟机并安装CentOS7 一.KVM简介 KVM(名称来自英语:Kernel-basedVirtual Machine的缩写, ...

最新文章

  1. 傅里叶变换函数FFT的使用方法
  2. ubuntu修改root密码
  3. js数组的拷贝赋值复制二三事总结
  4. [转载] StringBuffer和StringBuilder类
  5. 添加一列_快速给电子书pdf添加书签
  6. jenkins中文插件_Jenkins学习笔记(一)
  7. 反转?MIT女博士遭质疑:代码贡献太少,黑洞照片功臣另有其人
  8. Depth Map Prediction from a Single Image using a Multi-Scale Deep Network
  9. UNIX环境高级编程学习之路
  10. c4d需要学哪几种语言,自学C4D要多久才能掌握.看下以下的总结
  11. java数字金额大写金额_Java实现 将数字金额转为大写中文金额
  12. 当上拉加载更多即ion-content遇上slideBox的时候
  13. 红帽子linux5.5安装,红帽子企业Linux 5安装  硬盘安装
  14. 中国各地区政府招投标数据
  15. 图 2021-01-16
  16. 全国天气预报api接口
  17. ie调用java闪退_IE11老是闪退怎么办 IE11闪退解决教程方法汇总
  18. Unix道德经(英文版)
  19. 你是产品思维还是平台思维?
  20. 北京大学出版社AI类最畅销的5本书!包括机器学习、深度学习实战、数学基础等...

热门文章

  1. 杂记 - WSL2 局域网访问, 代理设置, IP设置(已集成工具)
  2. Debian10(xfce4)Linux换源中文输入法sudo等常用软件安装配置
  3. Visio 学习笔记 —— 链接线的默认样式
  4. 计算机二级几月出成绩,计算机二级考试几月出成绩
  5. 什么是MVC?什么是三层架构?
  6. 《集结号》与戴镣铐跳舞的冯小刚
  7. python后端与C# WinForm前端连接之Flask使用
  8. HOOK API技术
  9. 移动2班徐斌1853230241
  10. 自学整理的软件测试常见的面试题