请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

资产归类时,在第一次循环到的机器假如是虚拟机的话存库会有外键不存在的情况

  File "/Users/yanshunjun/.virtualenvs/skops/lib/python3.6/site-packages/django/db/models/fields/related_descriptors.py", line 216, in __set__

    self.field.remote_field.model._meta.object_name,

ValueError: Cannot assign "0": "VirtualServerInfo.physicalserverinfo" must be a "PhysicalServerInfo" instance.

(skops)  ✘ shark@SharkAir  ~/PycharmProjects/Skops 

https://img1.sycdn.imooc.com//szimg/5a6c86e80001b6af09610795.jpg

https://img1.sycdn.imooc.com//szimg/5a6c877300016d5a10170551.jpg

正在回答 回答被采纳积分+3

1回答

Jeson 2018-02-12 10:33:30

工程的代码逻辑是这样的: 

1、首先执行IP存活扫描,扫描出存活的主机。 

2、然后执行登陆扫描,获取登陆信息和主机基础信息。 

接着,要做的是主机类型扫描,也就是要来判断所有的资源中,哪些是物理机器,判断的依据是根据:机器上是否有kvm,docker,vmx进程来作判断。如果有,则得出一份物理机列表。 

再,通过物理级,来得到物理机器宿主机关系。 

所以,理论上来说,如果环境中只有虚拟机,那么建议你使用在虚拟机的基础上安装docker容器环境,并且启用一个容器。这样扫描的程序将认定你这台虚拟机是物理机器。然后去执行宿主几虚拟机关系扫描。


0 回复 有任何疑惑可以回复我~
  • 第一次扫描,环境中只有虚拟机的情况会报错,不知道老师有没有别的方法来解决这个问题呢
    回复 有任何疑惑可以回复我~ 2018-03-23 00:24:16
  • 工程的代码逻辑是这样的:
    1、首先执行IP存活扫描,扫描出存活的主机。
    2、然后执行登陆扫描,获取登陆信息和主机基础信息。
    
    接着,要做的是主机类型扫描,也就是要来判断所有的资源中,哪些是物理机器,判断的依据是根据:机器上是否有kvm,docker,vmx进程来作判断。如果有,则得出一份物理机列表。
    再,通过物理级,来得到物理机器宿主机关系。
    
    所以,理论上来说,如果环境中只有虚拟机,那么建议你使用在虚拟机上安装docker容器环境,并且启用一个容器。这样扫描的程序将认定你这台虚拟机是物理机器。
    回复 有任何疑惑可以回复我~ 2018-03-23 17:30:33
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信