openstack-kolla with GlusterFS integration
Folks, Recently I have started playing with the Openstack Kolla Project because of some requirements. I want to integrate kolla with GlusterFS for nova vm backend storage. I have functional Glsuter storage and want to mount on compute node to use for vm backend but not sure how do i do that because i am new to containers I can see kolla use following to bind volume with nova_compute container { "Type": "volume", "Name": "nova_compute", "Source": "/var/lib/docker/volumes/nova_compute/_data", "Destination": "/var/lib/nova", "Driver": "local", "Mode": "rw", "RW": true, "Propagation": "" } If I can mount GlusterFS in /mnt directory then how do I tell docker to use /mnt to create volume for nova_compute?
You want to override "nova_instance_datadir_volume" to point to your mount path, in this case /mnt -yoctozepto On Tue, 4 Jan 2022 at 21:31, Satish Patel <satish.txt@gmail.com> wrote:
Folks,
Recently I have started playing with the Openstack Kolla Project because of some requirements. I want to integrate kolla with GlusterFS for nova vm backend storage.
I have functional Glsuter storage and want to mount on compute node to use for vm backend but not sure how do i do that because i am new to containers
I can see kolla use following to bind volume with nova_compute container
{ "Type": "volume", "Name": "nova_compute", "Source": "/var/lib/docker/volumes/nova_compute/_data", "Destination": "/var/lib/nova", "Driver": "local", "Mode": "rw", "RW": true, "Propagation": "" }
If I can mount GlusterFS in /mnt directory then how do I tell docker to use /mnt to create volume for nova_compute?
Thank you, so just add this override in globals.yml correct? Do I need to destroy and recreate the container? On Tue, Jan 4, 2022 at 3:39 PM Radosław Piliszek <radoslaw.piliszek@gmail.com> wrote:
You want to override "nova_instance_datadir_volume" to point to your mount path, in this case /mnt
-yoctozepto
On Tue, 4 Jan 2022 at 21:31, Satish Patel <satish.txt@gmail.com> wrote:
Folks,
Recently I have started playing with the Openstack Kolla Project because of some requirements. I want to integrate kolla with GlusterFS for nova vm backend storage.
I have functional Glsuter storage and want to mount on compute node to use for vm backend but not sure how do i do that because i am new to containers
I can see kolla use following to bind volume with nova_compute container
{ "Type": "volume", "Name": "nova_compute", "Source": "/var/lib/docker/volumes/nova_compute/_data", "Destination": "/var/lib/nova", "Driver": "local", "Mode": "rw", "RW": true, "Propagation": "" }
If I can mount GlusterFS in /mnt directory then how do I tell docker to use /mnt to create volume for nova_compute?
This is what I did but it looks like there is a better way to run kolla-ansible on a specific role/service. I have added nova_instance_datadir_volume; /mnt in global.yml and run following command $ kolla-ansible -i all-in-one deploy Above command took 20 minute to finish because it went through each role. but i think i am missing something in documentation to run the above task in a limited way to just push out to a specific container/role or service. In my case it's nova_compute. kolla looks good but the documentation isn't great, especially related maintenance and daily operations. On Tue, Jan 4, 2022 at 3:55 PM Satish Patel <satish.txt@gmail.com> wrote:
Thank you,
so just add this override in globals.yml correct? Do I need to destroy and recreate the container?
On Tue, Jan 4, 2022 at 3:39 PM Radosław Piliszek <radoslaw.piliszek@gmail.com> wrote:
You want to override "nova_instance_datadir_volume" to point to your mount path, in this case /mnt
-yoctozepto
On Tue, 4 Jan 2022 at 21:31, Satish Patel <satish.txt@gmail.com> wrote:
Folks,
Recently I have started playing with the Openstack Kolla Project because of some requirements. I want to integrate kolla with GlusterFS for nova vm backend storage.
I have functional Glsuter storage and want to mount on compute node to use for vm backend but not sure how do i do that because i am new to containers
I can see kolla use following to bind volume with nova_compute container
{ "Type": "volume", "Name": "nova_compute", "Source": "/var/lib/docker/volumes/nova_compute/_data", "Destination": "/var/lib/nova", "Driver": "local", "Mode": "rw", "RW": true, "Propagation": "" }
If I can mount GlusterFS in /mnt directory then how do I tell docker to use /mnt to create volume for nova_compute?
On Wed, 5 Jan 2022 at 05:47, Satish Patel <satish.txt@gmail.com> wrote:
This is what I did but it looks like there is a better way to run kolla-ansible on a specific role/service.
I have added nova_instance_datadir_volume; /mnt in global.yml and run following command
$ kolla-ansible -i all-in-one deploy
Above command took 20 minute to finish because it went through each role. but i think i am missing something in documentation to run the above task in a limited way to just push out to a specific container/role or service. In my case it's nova_compute. kolla looks good but the documentation isn't great, especially related maintenance and daily operations.
Yes, all comments are correct. This is how it is supposed to work (i.e., change globals.yml and re-run deploy/reconfigure). As for a more optimal approach, you can use --tags to limit the number of plays, e.g., in your case: kolla-ansible -i all-in-one deploy --tags nova-cell I agree this could be better documented. -yoctozepto
On Tue, Jan 4, 2022 at 3:55 PM Satish Patel <satish.txt@gmail.com> wrote:
Thank you,
so just add this override in globals.yml correct? Do I need to destroy and recreate the container?
On Tue, Jan 4, 2022 at 3:39 PM Radosław Piliszek <radoslaw.piliszek@gmail.com> wrote:
You want to override "nova_instance_datadir_volume" to point to your mount path, in this case /mnt
-yoctozepto
On Tue, 4 Jan 2022 at 21:31, Satish Patel <satish.txt@gmail.com> wrote:
Folks,
Recently I have started playing with the Openstack Kolla Project because of some requirements. I want to integrate kolla with GlusterFS for nova vm backend storage.
I have functional Glsuter storage and want to mount on compute node to use for vm backend but not sure how do i do that because i am new to containers
I can see kolla use following to bind volume with nova_compute container
{ "Type": "volume", "Name": "nova_compute", "Source": "/var/lib/docker/volumes/nova_compute/_data", "Destination": "/var/lib/nova", "Driver": "local", "Mode": "rw", "RW": true, "Propagation": "" }
If I can mount GlusterFS in /mnt directory then how do I tell docker to use /mnt to create volume for nova_compute?
Thank you! How do I make sure this change is only going to apply to compute nodes and not api nodes? i believe global is for everyone so curious how to put this change only for compute nodes? On Wed, Jan 5, 2022 at 2:43 AM Radosław Piliszek <radoslaw.piliszek@gmail.com> wrote:
On Wed, 5 Jan 2022 at 05:47, Satish Patel <satish.txt@gmail.com> wrote:
This is what I did but it looks like there is a better way to run kolla-ansible on a specific role/service.
I have added nova_instance_datadir_volume; /mnt in global.yml and run following command
$ kolla-ansible -i all-in-one deploy
Above command took 20 minute to finish because it went through each role. but i think i am missing something in documentation to run the above task in a limited way to just push out to a specific container/role or service. In my case it's nova_compute. kolla looks good but the documentation isn't great, especially related maintenance and daily operations.
Yes, all comments are correct. This is how it is supposed to work (i.e., change globals.yml and re-run deploy/reconfigure). As for a more optimal approach, you can use --tags to limit the number of plays, e.g., in your case:
kolla-ansible -i all-in-one deploy --tags nova-cell
I agree this could be better documented.
-yoctozepto
On Tue, Jan 4, 2022 at 3:55 PM Satish Patel <satish.txt@gmail.com> wrote:
Thank you,
so just add this override in globals.yml correct? Do I need to destroy and recreate the container?
On Tue, Jan 4, 2022 at 3:39 PM Radosław Piliszek <radoslaw.piliszek@gmail.com> wrote:
You want to override "nova_instance_datadir_volume" to point to your mount path, in this case /mnt
-yoctozepto
On Tue, 4 Jan 2022 at 21:31, Satish Patel <satish.txt@gmail.com> wrote:
Folks,
Recently I have started playing with the Openstack Kolla Project because of some requirements. I want to integrate kolla with GlusterFS for nova vm backend storage.
I have functional Glsuter storage and want to mount on compute node to use for vm backend but not sure how do i do that because i am new to containers
I can see kolla use following to bind volume with nova_compute container
{ "Type": "volume", "Name": "nova_compute", "Source": "/var/lib/docker/volumes/nova_compute/_data", "Destination": "/var/lib/nova", "Driver": "local", "Mode": "rw", "RW": true, "Propagation": "" }
If I can mount GlusterFS in /mnt directory then how do I tell docker to use /mnt to create volume for nova_compute?
On Wed, 5 Jan 2022 at 15:25, Satish Patel <satish.txt@gmail.com> wrote:
Thank you!
How do I make sure this change is only going to apply to compute nodes and not api nodes? i believe global is for everyone so curious how to put this change only for compute nodes?
Not sure what you are asking about. nova-cell applies only to computes. nova_instance_datadir_volume is also only used on computes. So either way no effect on API services. If you are asking in general (about some other possible variable), you can use the ansible inventory group vars and host vars instead of globals to configure certain aspects depending on the target. -yoctozepto
On Wed, Jan 5, 2022 at 2:43 AM Radosław Piliszek <radoslaw.piliszek@gmail.com> wrote:
On Wed, 5 Jan 2022 at 05:47, Satish Patel <satish.txt@gmail.com> wrote:
This is what I did but it looks like there is a better way to run kolla-ansible on a specific role/service.
I have added nova_instance_datadir_volume; /mnt in global.yml and run following command
$ kolla-ansible -i all-in-one deploy
Above command took 20 minute to finish because it went through each role. but i think i am missing something in documentation to run the above task in a limited way to just push out to a specific container/role or service. In my case it's nova_compute. kolla looks good but the documentation isn't great, especially related maintenance and daily operations.
Yes, all comments are correct. This is how it is supposed to work (i.e., change globals.yml and re-run deploy/reconfigure). As for a more optimal approach, you can use --tags to limit the number of plays, e.g., in your case:
kolla-ansible -i all-in-one deploy --tags nova-cell
I agree this could be better documented.
-yoctozepto
On Tue, Jan 4, 2022 at 3:55 PM Satish Patel <satish.txt@gmail.com> wrote:
Thank you,
so just add this override in globals.yml correct? Do I need to destroy and recreate the container?
On Tue, Jan 4, 2022 at 3:39 PM Radosław Piliszek <radoslaw.piliszek@gmail.com> wrote:
You want to override "nova_instance_datadir_volume" to point to your mount path, in this case /mnt
-yoctozepto
On Tue, 4 Jan 2022 at 21:31, Satish Patel <satish.txt@gmail.com> wrote:
Folks,
Recently I have started playing with the Openstack Kolla Project because of some requirements. I want to integrate kolla with GlusterFS for nova vm backend storage.
I have functional Glsuter storage and want to mount on compute node to use for vm backend but not sure how do i do that because i am new to containers
I can see kolla use following to bind volume with nova_compute container
{ "Type": "volume", "Name": "nova_compute", "Source": "/var/lib/docker/volumes/nova_compute/_data", "Destination": "/var/lib/nova", "Driver": "local", "Mode": "rw", "RW": true, "Propagation": "" }
If I can mount GlusterFS in /mnt directory then how do I tell docker to use /mnt to create volume for nova_compute?
participants (2)
-
Radosław Piliszek
-
Satish Patel