Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(region) delete networks count check on zone purge #20036

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

ilovedumplings
Copy link

What this PR does / why we need it:
pkg/compute/models/zones.go

当删除云账号时候,会有任务去移除云账号相关的配置,第一步就是去移除zone中的配置,移除后会有移除的参数有校验处理,其中有一步校验是检查ip子网/二层网络/vpc是否已经被删除,这个检查的结果永远不等于0,因为移除vpc相关的操作不在zone的purge操作中,而是被移动到了cloudregion的purge当中

image

Does this PR need to be backport to the previous release branch?:

ilovedumplings and others added 2 commits April 17, 2024 11:04
@ilovedumplings ilovedumplings changed the title fix(region) delete networks count check fix(region) delete networks count check on zone purge Apr 17, 2024
@swordqiu swordqiu requested a review from ioito April 17, 2024 03:39
@ioito
Copy link
Collaborator

ioito commented Apr 17, 2024

self.ValidateDeleteCondition 上面的 self.purgeWires里面会删除云账号底下的wire及network

@ilovedumplings
Copy link
Author

purgeWires

但我实际测试过程中并没有删除wires和network,在之后的purgeVpcs才进行了删除的操作

@ioito
Copy link
Collaborator

ioito commented Apr 17, 2024

你测试的是哪个云平台

@ilovedumplings
Copy link
Author

你测试的是哪个云平台

openstack 私有云平台

@ioito
Copy link
Collaborator

ioito commented Apr 17, 2024

https://github.com/yunionio/cloudpods/pull/20041/files 试下这个可以不,vpc属于region下面的资源,放到zone底下purge不合适

@ilovedumplings
Copy link
Author

https://github.com/yunionio/cloudpods/pull/20041/files 试下这个可以不,vpc属于region下面的资源,放到zone底下purge不合适

wires.Field("manager_id"), managerId 这个代码??? wires_tbl表里新增了manager_id这个字段吗?是在哪个版本增加的?我现在使用的版本没有这个字段

@ioito
Copy link
Collaborator

ioito commented Apr 17, 2024

3.11开始新增的,是为了vmware加的,你的是什么版本

@ilovedumplings
Copy link
Author

3.11开始新增的,是为了vmware加的,你的是什么版本

我这边是3.10 我还发现个问题,就是我这边扫不到的原因是,我同步openstack的时候,二层网络的数据没有关联上zone_id这个字段,问题可能出现在这里,因为zone+id没有导致,purewire查不出来,而且我发现source字段是cloud,这个source字段是正常的吗?
image

@ioito
Copy link
Collaborator

ioito commented Apr 18, 2024

正常,openstack的子网本身和zone是没有关联的,所以需要由vpc去删除

@ilovedumplings
Copy link
Author

正常,openstack的子网本身和zone是没有关联的,所以需要由vpc去删除

那其实就破案了,我这边同步上来的数据,wire和zone没有关联关系,然后根据zone删除wire和子网的时候就删除不了,最后导致子网校验的时候过不去,感觉还是要修改校验那块的逻辑,可能不需要注释掉,但是内部判断逻辑是不是要修改?

@ioito
Copy link
Collaborator

ioito commented Apr 18, 2024

#20054 这样就可以了,等vpc purge完成后再purge zone

@ilovedumplings
Copy link
Author

#20054 这样就可以了,等vpc purge完成后再purge zone

我晚点试试,但是这样感觉逻辑上会不会出什么问题呢...总是感觉有坑的样子 .等我验证下看看

@ilovedumplings
Copy link
Author

#20054 这样就可以了,等vpc purge完成后再purge zone

有个场景想要咨询一下,像guests和disks的数据,有没有记录其状态变化的字段?除了日志还有别的参数记录嘛?我想获取下云主机和磁盘 从回收站恢复的时间

@ioito
Copy link
Collaborator

ioito commented Apr 22, 2024

目前只能看操作日志,没有字段记录状态变化

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants