You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cloudstack.apache.org by Marcus Sorensen <sh...@gmail.com> on 2013/06/07 06:57:56 UTC

quick systemvm question

How does cloudstack know which template is the latest system vm? Does
it match on name or something?  From what I have gathered in the
upgrade docs, you simply register a new template, like any other, and
run a convenience script that restarts your system vms. But I don't
gather from this how cloudstack knows it's a system template (and
further THE system template).

Re: quick systemvm question

Posted by Wei ZHOU <us...@gmail.com>.
Marcus,
Please have a look at findSystemVMTemplate in VmTemplateDaoImpl.java
-Wei

2013/6/7, Marcus Sorensen <sh...@gmail.com>:
> Thanks, I'm looking at it from a different perspective, not a CS
> upgrade, but say we have to roll a new systemvm template for an
> existing CS version. Say we rolled 4.2, with a new template, and then
> two months later we realize that the template is missing dnsmasq or
> something, and we have to have everyone install a new template. Do we
> actually have to overwrite the existing template in-place on secondary
> storage, then on each primary storage while the system vms are down?
> Or can we register a new template, and the new template gets installed
> on primary storage as system vms are rebooted.
>
>  I saw that the upgrade scripts had that 'select max' statement, but
> that just fetches the id for installing the template to secondary
> storage. When I deploy a router, how does cloudstack select the
> template for that?
>
> On Fri, Jun 7, 2013 at 12:54 AM, Wei ZHOU <us...@gmail.com> wrote:
>> Marcus,
>>
>> (1) cloud-install-sys-tmplt update the template with max(id)
>>
>> select max(id) from cloud.vm_template where type = \"SYSTEM\" and
>> hypervisor_type = \"KVM\" and removed is null"`
>>
>> (2) upgrade process update the template with specified name. in
>> Upgrade410to420.java
>> pstmt = conn.prepareStatement("select id from `cloud`.`vm_template` where
>> name like 'systemvm-xenserver-4.2' and removed is null order by id desc
>> limit 1");
>>
>> We are discussing in another thread "git commit: updated
>> refs/heads/master
>> to 9fe7846". Please join us.
>>
>> -Wei
>>
>>
>> 2013/6/7 Marcus Sorensen <sh...@gmail.com>
>>
>>> How does cloudstack know which template is the latest system vm? Does
>>> it match on name or something?  From what I have gathered in the
>>> upgrade docs, you simply register a new template, like any other, and
>>> run a convenience script that restarts your system vms. But I don't
>>> gather from this how cloudstack knows it's a system template (and
>>> further THE system template).
>>>
>

Re: quick systemvm question

Posted by Marcus Sorensen <sh...@gmail.com>.
Thanks, I'm looking at it from a different perspective, not a CS
upgrade, but say we have to roll a new systemvm template for an
existing CS version. Say we rolled 4.2, with a new template, and then
two months later we realize that the template is missing dnsmasq or
something, and we have to have everyone install a new template. Do we
actually have to overwrite the existing template in-place on secondary
storage, then on each primary storage while the system vms are down?
Or can we register a new template, and the new template gets installed
on primary storage as system vms are rebooted.

 I saw that the upgrade scripts had that 'select max' statement, but
that just fetches the id for installing the template to secondary
storage. When I deploy a router, how does cloudstack select the
template for that?

On Fri, Jun 7, 2013 at 12:54 AM, Wei ZHOU <us...@gmail.com> wrote:
> Marcus,
>
> (1) cloud-install-sys-tmplt update the template with max(id)
>
> select max(id) from cloud.vm_template where type = \"SYSTEM\" and
> hypervisor_type = \"KVM\" and removed is null"`
>
> (2) upgrade process update the template with specified name. in
> Upgrade410to420.java
> pstmt = conn.prepareStatement("select id from `cloud`.`vm_template` where
> name like 'systemvm-xenserver-4.2' and removed is null order by id desc
> limit 1");
>
> We are discussing in another thread "git commit: updated refs/heads/master
> to 9fe7846". Please join us.
>
> -Wei
>
>
> 2013/6/7 Marcus Sorensen <sh...@gmail.com>
>
>> How does cloudstack know which template is the latest system vm? Does
>> it match on name or something?  From what I have gathered in the
>> upgrade docs, you simply register a new template, like any other, and
>> run a convenience script that restarts your system vms. But I don't
>> gather from this how cloudstack knows it's a system template (and
>> further THE system template).
>>

Re: quick systemvm question

Posted by Wei ZHOU <us...@gmail.com>.
Marcus,

(1) cloud-install-sys-tmplt update the template with max(id)

select max(id) from cloud.vm_template where type = \"SYSTEM\" and
hypervisor_type = \"KVM\" and removed is null"`

(2) upgrade process update the template with specified name. in
Upgrade410to420.java
pstmt = conn.prepareStatement("select id from `cloud`.`vm_template` where
name like 'systemvm-xenserver-4.2' and removed is null order by id desc
limit 1");

We are discussing in another thread "git commit: updated refs/heads/master
to 9fe7846". Please join us.

-Wei


2013/6/7 Marcus Sorensen <sh...@gmail.com>

> How does cloudstack know which template is the latest system vm? Does
> it match on name or something?  From what I have gathered in the
> upgrade docs, you simply register a new template, like any other, and
> run a convenience script that restarts your system vms. But I don't
> gather from this how cloudstack knows it's a system template (and
> further THE system template).
>