系统环境说明
系统:CentOS-8.2.2004
平台:x86-64
使用到的工具安装
git
安装
dnf install git
软件下载
采用编译安装,源代码获取
# 使用gitee加速获取源代码
git clone https://gitee.com/mirrors/kimchi.git
# 使用加速站
git clone https://hub.fastgit.org/kimchi-project/kimchi.git
# github上获取源代码
git clone https://github.com/kimchi-project/kimchi.git
[说明]
如果是arm平台,则拉取经过修改支持arm平台的代码
# github上获取源代码
git clone https://github.com/mengxing2017/kimchi.git
git checkout arm
依赖安装
kimchi
是wok
的插件,需要先安装wok
,安装方法见[运维] 在CentOS8安装部署wok。- 其他运行依赖安装
dnf install libvirt libvirt-devel parted-devel libnl3-devel
dnf install python3-magic
pip3 install libvirt-python distro paramiko Image ipaddr configobj pyparted ethtool
说明
- 如果不想用
dnf
安装python3-magic
,则可以采用以下方式安装python3-magic
git clone https://github.com/mammadori/magic-python.git
cd magic-python
python3 setup.py install
- 如果系统使用centos7,则
pyparted
不能使用最新版
pip3 install pyparted==3.10.7
kimchi
安装
cd kimchi
git checkout 3.0.0
./autogen.sh --system --with-spice-html5 --with-spice-web-client
make
make install
配置libvirtd
编辑/etc/libvirt/qemu.conf
将spice_auto_unix_socket = 1
的注释去掉
kimchi
配置noVNC
kimchi
配置noVNC
见kimchi配置noVNC
启用开发模式调试
python3 /bin/wokd --environment=dev
常见问题
编译错误
- 报错信息如下
aclocal: installing 'm4/pkg.m4' from '/usr/share/aclocal/pkg.m4'
configure.ac:54: error: required file 'build-aux/compile' not found
configure.ac:54: 'automake --add-missing' can install 'compile'
configure.ac:54: error: required file 'build-aux/config.guess' not found
configure.ac:54: 'automake --add-missing' can install 'config.guess'
configure.ac:54: error: required file 'build-aux/config.sub' not found
configure.ac:54: 'automake --add-missing' can install 'config.sub'
解决办法
automake --add-missing
运行错误
- 报错信息如下
Failed to import plugin wok.plugins.kimchi.Kimchi, error: Class wok.plugins.kimchi.Kimchi can not be imported, error: No module named 'libvirt'
解决办法:安装过程出现报错,处理办法见python常见错误处理[CentOS8系统]
pip3 install libvirt-python
- 报错信息如下
Failed to import plugin wok.plugins.kimchi.Kimchi, error: Class wok.plugins.kimchi.Kimchi can not be imported, error: No module named 'distro'
解决办法:
pip3 install distro
- 报错信息如下
Failed to import plugin wok.plugins.kimchi.Kimchi, error: Class wok.plugins.kimchi.Kimchi can not be imported, error: No module named 'magic'
解决办法:
dnf install python3-magic
- 报错信息如下
Failed to import plugin wok.plugins.kimchi.Kimchi, error: Class wok.plugins.kimchi.Kimchi can not be imported, error: No module named 'paramiko'
解决办法:
pip3 install paramiko
- 报错信息如下
Failed to import plugin wok.plugins.kimchi.Kimchi, error: Class wok.plugins.kimchi.Kimchi can not be imported, error: No module named 'Image'
解决办法:
pip3 install Image
- 报错信息如下
Failed to import plugin wok.plugins.kimchi.Kimchi, error: No module named 'ipaddr'
解决办法:
pip3 install ipaddr
- 报错信息如下
Traceback (most recent call last):
File "/usr/local/lib64/python3.6/site-packages/cherrypy/_cprequest.py", line 638, in respond
self._do_respond(path_info)
File "/usr/local/lib64/python3.6/site-packages/cherrypy/_cprequest.py", line 697, in _do_respond
response.body = self.handler()
File "/usr/local/lib64/python3.6/site-packages/cherrypy/lib/encoding.py", line 219, in __call__
self.body = self.oldhandler(*args, **kwargs)
File "/usr/local/lib64/python3.6/site-packages/cherrypy/_cpdispatch.py", line 54, in __call__
return self.callable(*self.args, **self.kwargs)
File "/usr/lib/python3.6/site-packages/wok/control/base.py", line 490, in index
result = self.create(params, *args)
File "/usr/lib/python3.6/site-packages/wok/control/base.py", line 390, in create
name = create(*args)
File "/usr/lib/python3.6/site-packages/wok/plugins/kimchi/model/templates.py", line 103, in create
file_type = magic.open(magic.MAGIC_NONE)
AttributeError: module 'magic' has no attribute 'open'
解决办法: 产生原因是因为使用pip
安装的python-magic
dnf install python3-magic
- 报错信息如下
No module named 'configobj'
解决办法:
pip3 install configobj
- 报错信息如下
No module named 'parted'
解决办法:
pip3 install pyparted
- 报错信息如下
Failed to query pkg-config --cflags-only-I libnl-3.0
解决办法:
dnf install libnl3-devel
- 报错信息如下
No module named 'ethtool'
解决办法:
pip3 install ethtool