Tuesday, 2022-04-12

jrossernoonedeadpunk: i was just starting to think about the glusterfs stuff - spatel has a use case already for glance here https://satishdotpatel.github.io/openstack-ansible-glance-with-glusterfs/07:59
jrosserif we also want to use the same thing for the repo server then there is opportunity to use some common stuff?07:59
noonedeadpunkmm, and there's also https://github.com/gluster/gluster-ansible-collection08:00
noonedeadpunkbut regarding glance - tbh - we should just re-use systemd-mount role08:01
noonedeadpunkand same thing for repoeventually08:01
noonedeadpunkas kind of creating volume is likely matter of just running module08:02
noonedeadpunkso not sure how common is that08:02
jrosseryes exactly - so if in AIO or 'default' deployment we would want to create the gluster stuff08:02
noonedeadpunkwill make glance patch to rework what we have...08:03
jrosserbut i wonder where we do that08:03
noonedeadpunkI think we should do that just in repo-server role?08:03
noonedeadpunkbut dunno08:03
jrosseryeah, i was not sure what was best08:03
jrosserif to decouple the deployment of gluster from any repo / glance / whatever08:03
jrosseror to make it part of one of those08:04
jrosserand then were actually to run the gluster daemons - infra1/2/3 metal? or do they deserve their own env.d definitions08:05
noonedeadpunkwell we obviously have 2 paths here :) just make drop-in replacement for lsyncd which means we justi nstall it inside containwers. And provide an option for deployers to disable installation of gluster (instead another mount can be provided - like cephfs).08:07
noonedeadpunkOr try to make it global08:07
jrosserright08:07
jrosseri was thinking to do the drop-in replacement of lsyncd but then remebered spatel/glance stuff and was not so sure08:08
noonedeadpunkand tbh I'd say that making it global would have quite limited value atm.08:08
jrosserit might also be the case that someone already has NFS or something which would work for both of those08:08
noonedeadpunkyup08:08
jrosserso i was thinking making it external / optional made more sense08:08
noonedeadpunkI would most likely just use cephfs...08:08
jrosserright - and if we use systemd_mount role and defaults in repo and glance role then any of that is possible08:09
jrosserso that comes back to where in openstack-ansible repo do we deploy glusterfs.....08:09
noonedeadpunkI'd just deployed it inside repo containers tbh08:12
noonedeadpunkwe can indeed make some simple small role we call from there and place in plugins repo08:13
noonedeadpunkwhen we need to setup gluster08:13
noonedeadpunkas running glusterfs-server on bare metal controller is meh....08:14
noonedeadpunkas then you can also pass another volume or mount point inside container, which will be used for creating fs08:15
noonedeadpunk(likely)08:15
noonedeadpunkor it requires some kernel module so we can't run it inside container?08:16
noonedeadpunkas if you already have smth and don't need osa to deploy gluster there would be 2 options - either rely on systemd-mount or jsut bind mount inside container with list_of_bind_mounts08:18
jrossermaybe fuse is involved08:18
noonedeadpunkbut I agree that it might make sense to create small simple role in plugins so it could be re-used08:20
jrosserurgh https://github.com/gluster/glusterfs/issues/123908:21
noonedeadpunkpfff08:33
noonedeadpunkthat is really bad... 08:48
noonedeadpunkI mean - thinking  about bare-metal installation, we indeed should likely provide env.d08:49
noonedeadpunkand some upgrade path08:49
noonedeadpunkand imo it will be quite messy and opionated....08:49
noonedeadpunkas to avoid gluster from being installed you would need to be very careful during upgrade08:51
jrosserit could be made opt-in09:04
jrosseri'll do some experiments09:06
jrosseri have glusterfs working with the client and server both inside lxc10:52
opendevreviewDmitriy Rabotyagov proposed openstack/openstack-ansible-os_glance master: Use systemd_mount native syntax for mounts  https://review.opendev.org/c/openstack/openstack-ansible-os_glance/+/83755010:56
noonedeadpunkjrosser: oh, that's nice10:56
noonedeadpunkyou get it working on focal?10:57
jrosseronly thing it needed was the fuse device node creating10:57
jrosseryes10:57
noonedeadpunkwell, requirement of fuse is fair kind of10:57
jrosserthe install is really pretty trivial too, i'll try to make some ansible for the repo_server role10:58
damiandabrowski[m]just an open suggestion: do You think it's also worth to consider some lightweight replicated object storage like minIO? then we can replace nginx&lsyncd with it11:05
damiandabrowski[m](ofc it will require some changes in python_venv_build role)11:06
opendevreviewDmitriy Rabotyagov proposed openstack/openstack-ansible master: Replace glance_nfs_client  https://review.opendev.org/c/openstack/openstack-ansible/+/83755111:07
noonedeadpunkI'd say it's more complicated then nginx plus gluster11:07
noonedeadpunkas you need to store wheels somewhere first and then upload to minio?11:07
noonedeadpunkbut not sure - wasn't really running minio much. But I guess to get object replicated you need to pass it through api anyway11:09
noonedeadpunkand then to clean things up it might be also more complicated...11:09
noonedeadpunkbut dunno11:09
damiandabrowski[m]yes, but now IIRC we also build wheels in tmp and then move them to repo dir. So the change would be to replace 'mv' task with s3 upload(minio is s3 compatible)11:10
damiandabrowski[m]but i agree, it may be just easier to replace lsyncd with gluster, we may consider minIO if we'll see some problems with gluster11:11
damiandabrowski[m]as object storage seems to be more reliable way for our use case :D 11:11
noonedeadpunkwell, I kind of like that idea....11:13
noonedeadpunkjrosser: wdyt?11:14
noonedeadpunkas basically it's single binary...11:15
opendevreviewMerged openstack/openstack-ansible-galera_server master: Updated from OpenStack Ansible Tests  https://review.opendev.org/c/openstack/openstack-ansible-galera_server/+/83566911:15
jrosserthat involves loadbalancer too?11:16
jrosseri never used minio but i did read the docs recently11:16
noonedeadpunkI think yes11:16
jrosserand was not really happy about it at any scale11:16
noonedeadpunknah, it's mainly to test things out locally :)11:16
jrosserbut for small things maybe ok11:16
noonedeadpunkwe should not have many trafic though11:17
noonedeadpunkbasically gluster at scale kind of sucks afaik as well11:17
jrosserfeels like whatever we do should leverage systemd_mount11:17
jrosserthen there is a nice decoupling11:17
noonedeadpunknot really if it's s3....11:18
noonedeadpunkwell, we could mount it as s3fs ofc...11:18
jrosserdidnt you do some s3fs stuff?11:18
noonedeadpunkto manage files11:18
jrosser^that yes11:18
noonedeadpunkit was suuuuper slow just in case... but was running that in slow ceph cluster as well, so not sure if it's s3fs design or cluster suck11:19
noonedeadpunkbut as alternative we could jsut use that https://docs.ansible.com/ansible/latest/collections/community/aws/s3_sync_module.html11:19
noonedeadpunkbut yeah, python_venv_build is not designed for that11:20
noonedeadpunkcould be adjusted though....11:21
noonedeadpunkbut you're right minio with s3fs is suuuuper simple thing to do (considering it would sync objects)11:22
noonedeadpunkok, minio is not smth that would fly11:24
noonedeadpunk`All the nodes running distributed MinIO setup are recommended to be homogeneous, i.e. same operating system, same number of disks and same network interconnects.`11:24
noonedeadpunkAnd basically that would be EC pools11:24
damiandabrowski[m]but i'm trying to figure out if 'bucket replication' would be better for us11:24
noonedeadpunkbtw I also wonder how gluster would like different OS and versions of itself...11:25
damiandabrowski[m]https://docs.min.io/minio/baremetal/replication/enable-server-side-multi-site-bucket-replication.html11:26
opendevreviewDmitriy Rabotyagov proposed openstack/openstack-ansible-galera_server master: Add galera_data_dir variable  https://review.opendev.org/c/openstack/openstack-ansible-galera_server/+/83155211:27
* noonedeadpunk wonders if `mc mirror` have smth to do with Midnight Commander11:28
damiandabrowski[m]true, that's a bit confusing :D 11:28
noonedeadpunkat this point I find gluster more simple tbh11:29
noonedeadpunkbut it was really good call11:30
noonedeadpunkI mean - as long as we manage that with systemd_mount - we can use whatever we want on backend11:30
damiandabrowski[m]You may be right, the most important for us is probably what tool would be more reliable when it comes to recovery, node failures etc. :D but it's hard to answer this question now11:31
damiandabrowski[m]but it sounds promising that jrosser already has gluster running on lxc11:32
jrosseri think in an hour or so i have some ansible for glusterfs - then we can test and see what happens11:33
noonedeadpunkto be fair - we don't store statefull data there. it's unfortunate to loose wheels, but not anything really bad11:33
jrosserlike delete / recreate containers and see if it recovers11:33
noonedeadpunkso we can jsut drop all repo containers and recreate them anytime if anything11:34
NeilHanlonnoonedeadpunk: there be dragons with Minio, too.. in my experience. Several times at $lastjob they introduced serious regressions into master11:47
jrosserfirst attempt at the repo server gluster stuff https://paste.opendev.org/show/bqSs3XDGb1oUk7h9mA3i/12:59
jrosseri will move it to the plugins repo next as a role12:59
noonedeadpunk`Ensure that the mount point exists` should not be needed as that is handled inside systemd_mount role https://opendev.org/openstack/ansible-role-systemd_mount/src/branch/master/tasks/systemd_mounts.yml#L27-L4013:06
jrosserah cool13:06
noonedeadpunkbut it looks too simple :D13:09
opendevreviewSiavash Sardari proposed openstack/openstack-ansible-os_cinder master: Add the ability to disable send_actions option in cinder-volume-usage-audit service.  https://review.opendev.org/c/openstack/openstack-ansible-os_cinder/+/83757013:50
opendevreviewDmitriy Rabotyagov proposed openstack/openstack-ansible master: Do not encrypt SSL for CentOS distro path  https://review.opendev.org/c/openstack/openstack-ansible/+/83757114:03
*** dviroel is now known as dviroel|mtg14:15
opendevreviewDmitriy Rabotyagov proposed openstack/openstack-ansible-os_glance master: Do not deploy api-paste for CentOS distro deployment  https://review.opendev.org/c/openstack/openstack-ansible-os_glance/+/83757614:21
opendevreviewJonathan Rosser proposed openstack/openstack-ansible-plugins master: Add role for creating simple glusterfs clients/servers  https://review.opendev.org/c/openstack/openstack-ansible-plugins/+/83758214:55
noonedeadpunk#startmeeting openstack_ansible_meeting15:02
opendevmeetMeeting started Tue Apr 12 15:02:26 2022 UTC and is due to finish in 60 minutes.  The chair is noonedeadpunk. Information about MeetBot at http://wiki.debian.org/MeetBot.15:02
opendevmeetUseful Commands: #action #agreed #help #info #idea #link #topic #startvote.15:02
opendevmeetThe meeting name has been set to 'openstack_ansible_meeting'15:02
noonedeadpunk#topic rollcall 15:02
jrossero/ hello15:02
noonedeadpunkhey everyone o/15:02
damiandabrowski[m]hey! (on a phone for next 20min)15:03
mgariepyhey15:03
noonedeadpunk#topic office hours15:04
noonedeadpunkSo PTG results. I had sent email tomorrow, but seems I mixed up a bit emails it should go from, so I guess it haven't landed on ML and waits for moderation....15:05
noonedeadpunks/tomorow/today lol15:06
noonedeadpunkI also started looking at CentOS distro jobs... And they are broken is so stupid/nasty ways....15:06
noonedeadpunkI would actually say - rhel'ish way15:07
noonedeadpunkI think that intention to drop them were quite reasonable.... 15:08
jrosserso related - Z will not support python3.6.....15:08
jrosserwhich i think means that Y *has* to be centos8->9 transition release?15:08
noonedeadpunkyup....15:08
jrosser /o\15:09
noonedeadpunkwell, iirc centos 8 has py3.8 15:09
noonedeadpunkbut as usual without libs built15:09
noonedeadpunkas we run ansible in 3.8 venv right now15:10
noonedeadpunkhttps://opendev.org/openstack/openstack-ansible/src/branch/master/scripts/bootstrap-ansible.sh#L7615:11
jrosserhrrm15:11
noonedeadpunkI wonder if we even use that for service venv15:12
jrosserit would be possible - though i expect ceph and libvirt bindings are going to be troublesome15:12
noonedeadpunknah, we don't now15:13
jrosseri don't expect it to go well tbh15:13
noonedeadpunkyeah, exactly15:13
jrosseri think we tried this right at the start for centos815:13
noonedeadpunkI just can recalled we tried indeed:) but as you said - they don't ship bindings for $reason15:13
jrosser@NeilHanlon whats the position on python versions for Rocky?15:14
jrossereg Zed needing > 3.615:14
noonedeadpunkBtw I will propose patches for switching to Y toorrow first thing in the morning15:17
jrossercool15:17
noonedeadpunkI also have a proposal of adding damiandabrowski[m] to core reviewers team. If nobody against, I will send ML so everybody could vote.15:22
opendevreviewJonathan Rosser proposed openstack/openstack-ansible-repo_server master: Add facility to store repo contents on a remote mount  https://review.opendev.org/c/openstack/openstack-ansible-repo_server/+/83758715:22
noonedeadpunkIf there're any other proposals or nominations - I'm all ears :)15:22
noonedeadpunks/adding/nominating15:24
opendevreviewJonathan Rosser proposed openstack/openstack-ansible-repo_server master: Remove all code for lsync, rsync and ssh  https://review.opendev.org/c/openstack/openstack-ansible-repo_server/+/83758815:24
damiandabrowski[m]thank You! I'd be grateful for joining the core team (and now when I'm done with distro upgrades, I'll have much more time to contribute)15:25
damiandabrowski[m]btw. let me copy-paste my message from previous week as it didn't get much attention15:26
noonedeadpunkI guess we need also to patch systemd_mount role to install gluster_client?15:27
mgariepycongrats damiandabrowski[m] !15:27
damiandabrowski[m]Will You be able to have a look at my tempest changes and leave initial review? https://review.opendev.org/q/topic:tempest-damian-2021-1215:27
damiandabrowski[m]There is a huge relation chain but I don't think we can avoid it as all of these changes focus on the same files :/ However, they are pretty straightforward so I hope all of them will be merged.15:27
damiandabrowski[m]So my idea is to: gather initial reviews from You -> (make corrections) -> rebase all of them -> merge all. What do You think?15:27
damiandabrowski[m]thanks! :D 15:27
noonedeadpunksounds like a plan:) 15:27
opendevreviewJonathan Rosser proposed openstack/openstack-ansible master: Use glusterfs as a backend for synchronising repo server contents  https://review.opendev.org/c/openstack/openstack-ansible/+/83758915:29
jrosser^ this is basically working locally though i expect upgrades to break15:29
jrossermaybe we discussed this enough already earlier but adding systemd_mount into repo_server as the hook into external shared storage seems neat15:30
damiandabrowski[m]nice, i didn't expect gluster changes to land that fast :D 15:31
noonedeadpunkThese are ususally lest words before huge issues15:32
noonedeadpunk*last15:32
noonedeadpunk :D15:32
jrosseryeah indeed15:33
noonedeadpunkjrosser: what I mean is that systemd_mount should be capable of mounting gluster on their own15:33
noonedeadpunkso it should likely include client part when type is gluster15:34
jrosseroh yes, it does and it works15:34
jrosserthe glusterfs role i made has bools for installing the client / server parts but i don't yet know what to connect those to15:34
noonedeadpunkeventually we have there logic already https://opendev.org/openstack/ansible-role-systemd_mount/src/branch/master/vars/main.yml#L25-L3715:35
noonedeadpunkSo it could be independant relatively15:35
damiandabrowski[m]btw. noonedeadpunk i received Your 'Zed PTG results' email so it actually has landed properly on ML ;)15:36
noonedeadpunkoh, ok15:36
jrosseronly ugly bit is needing the fuse device for lxc15:36
noonedeadpunkI haven't recieved it :/15:37
noonedeadpunkyeah.....15:37
jrosserand that has to happen in-line in the code rather than in the lxc base image to cover upgrades15:37
noonedeadpunkJust in case I already landed some ugly stuff there https://opendev.org/openstack/ansible-role-systemd_mount/src/branch/master/tasks/systemd_install.yml#L16-L47 but yeah, it's not container-specific, but distro specific15:39
noonedeadpunkso I agree that in role there shouldn't be lxc crap preferably...15:40
opendevreviewJonathan Rosser proposed openstack/openstack-ansible-repo_server master: Add facility to store repo contents on a remote mount  https://review.opendev.org/c/openstack/openstack-ansible-repo_server/+/83758715:41
noonedeadpunkso dunno what to do better here15:41
opendevreviewJonathan Rosser proposed openstack/openstack-ansible-plugins master: Add role for creating simple glusterfs clients/servers  https://review.opendev.org/c/openstack/openstack-ansible-plugins/+/83758215:42
noonedeadpunkI think we can start from that for sure and then re-arrange code if decide to do so.15:44
jrosserdo we have a priority order for doing the things from https://etherpad.opendev.org/p/osa-Z-ptg15:44
noonedeadpunkvery good question. I think ssl and keystone rbac should go first ?15:46
noonedeadpunkubuntu 22.04/centos 9 is based on time on hands?15:46
noonedeadpunkas basically centos 9 likely rely on gluster (which thankfully landed)15:47
jrosseryeah, thats removed the need to lsyncd and EPEL in the repo server, which is ++15:47
mgariepywe will be able to remove lsyncd ;) 15:48
noonedeadpunknice to see how everybody loves lsyncd :p15:48
damiandabrowski[m]if nobody took it yet, I can work on 'cover octavia with PKI role' when I'm done with tempest changes15:48
mgariepylsyncd is not fun ;) but the good part about it is that stuff can be regenerated :) haha15:49
jrosserdamiandabrowski[m]: that would be good to get some insight into the workings of the PKI role15:50
jrosserand also i think there is some careful handling needed for upgrades15:50
damiandabrowski[m]ack15:51
jrosserthe bigger piece of SSL work is doing the backends for all the services15:53
noonedeadpunkyup, but also good one. As somewhere we're inventing bycicle to achieve that goal15:55
noonedeadpunkwhich would be really awesome to land things and get them supported15:55
noonedeadpunk(they are quite historical to have that said)15:56
noonedeadpunk#endmeeting16:00
opendevmeetMeeting ended Tue Apr 12 16:00:12 2022 UTC.  Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4)16:00
opendevmeetMinutes:        https://meetings.opendev.org/meetings/openstack_ansible_meeting/2022/openstack_ansible_meeting.2022-04-12-15.02.html16:00
opendevmeetMinutes (text): https://meetings.opendev.org/meetings/openstack_ansible_meeting/2022/openstack_ansible_meeting.2022-04-12-15.02.txt16:00
opendevmeetLog:            https://meetings.opendev.org/meetings/openstack_ansible_meeting/2022/openstack_ansible_meeting.2022-04-12-15.02.log.html16:00
*** dviroel|mtg is now known as dviroel|lunch16:02
*** dviroel|lunch is now known as dviroel16:58
opendevreviewJonathan Rosser proposed openstack/openstack-ansible-repo_server master: Remove all code for lsync, rsync and ssh  https://review.opendev.org/c/openstack/openstack-ansible-repo_server/+/83758817:09
opendevreviewJonathan Rosser proposed openstack/openstack-ansible-repo_server master: Remove all code for lsync, rsync and ssh  https://review.opendev.org/c/openstack/openstack-ansible-repo_server/+/83758817:09
opendevreviewJonathan Rosser proposed openstack/openstack-ansible-repo_server master: Add facility to store repo contents on a remote mount  https://review.opendev.org/c/openstack/openstack-ansible-repo_server/+/83758717:14
jrossernoonedeadpunk: so we already have /var/www as a bind mount onto the host in /openstack/<repo_server>17:21
jrosseri wonder if that is going to interfere with /var/www/repo being a filesystem mount17:21
opendevreviewJonathan Rosser proposed openstack/openstack-ansible master: Use glusterfs to synchronise repo server contents  https://review.opendev.org/c/openstack/openstack-ansible/+/83758917:28
*** dviroel is now known as dviroel|out20:55

Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!