From: Roger Heflin <rogerheflin@gmail.com>
To: LVM general discussion and development <linux-lvm@redhat.com>
Subject: Re: [linux-lvm] lvm commands hanging when run from inside a kubernetes pod
Date: Thu, 2 Jun 2022 06:04:28 -0500 [thread overview]
Message-ID: <CAAMCDefV+jHCKnrp0gad7BFgJaYDQNOkeQM5z8zkOe4PUz9Dpw@mail.gmail.com> (raw)
In-Reply-To: <CAM3OQJHe3GKfAqR4A3QT6Q6TgiG-qpHNBHfnEczD3eH+ruq0VA@mail.gmail.com>
[-- Attachment #1.1: Type: text/plain, Size: 3113 bytes --]
Random thoughts.
Make sure use_lvmetad is 0, and its systemd units for it are
stopped/disabled.
Are you mounting /proc and /sys and /dev into the /host chroot?
/run may also be needed.
you might add a "-ttt" to the strace command to give timing data.
On Thu, Jun 2, 2022 at 1:41 AM Abhishek Agarwal <
mragarwal.developer@gmail.com> wrote:
> These are not different LVM processes. The container process is using the
> LVM binary that the node itself has. We have achieved this by using scripts
> that point to the same lvm binary that is used by the node.
>
> Configmap(~shell script) used for the same has the following contents
> where `/host` refers to the root directory of the node:
>
> get_bin_path: |
> #!/bin/sh
> bin_name=$1
> if [ -x /host/bin/which ]; then
> echo $(chroot /host /bin/which $bin_name | cut -d ' ' -f 1)
> elif [ -x /host/usr/bin/which ]; then
> echo $(chroot /host /usr/bin/which $bin_name | cut -d ' ' -f 1)
> else
> $(chroot /host which $bin_name | cut -d ' ' -f 1)
> fi
>
> lvcreate: |
> #!/bin/sh
> path=$(/sbin/lvm-eg/get_bin_path "lvcreate")
> chroot /host $path "$@"
>
> Also, the above logs in the pastebin link have errors because the vg lock
> has not been acquired and hence creation commands will fail. Once the lock
> is acquired, the `strace -f` command gives the following output being
> stuck. Check out this link for full details ->
> https://pastebin.com/raw/DwQfdmr8
>
> P.S: We at OpenEBS are trying to provide lvm storage to cloud native
> workloads with the help of kubernetes CSI drivers and since all these
> drivers run as pods and help dynamic provisioning of kubernetes
> volumes(storage) for the application, the lvm commands needs to be run from
> inside the pod. Reference -> https://github.com/openebs/lvm-localpv
>
> Regards
>
> On Wed, 1 Jun 2022 at 13:06, Demi Marie Obenour <
> demi@invisiblethingslab.com> wrote:
>
>> On Wed, Jun 01, 2022 at 12:20:32AM +0530, Abhishek Agarwal wrote:
>> > Hi Roger. Thanks for your reply. I have rerun the command with `strace
>> -f`
>> > as you suggested. Here is the pastebin link containing the detailed
>> output
>> > of the command: https://pastebin.com/raw/VRuBbHBc
>>
>> Even if you can get LVM “working”, it is still likely to cause data
>> corruption at some point, as there is no guarantee that different LVM
>> processes in different namespaces will see each others’ locks.
>>
>> Why do you need to run LVM in a container? What are you trying to
>> accomplish?
>> --
>> Sincerely,
>> Demi Marie Obenour (she/her/hers)
>> Invisible Things Lab
>> _______________________________________________
>> linux-lvm mailing list
>> linux-lvm@redhat.com
>> https://listman.redhat.com/mailman/listinfo/linux-lvm
>> read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/
>>
> _______________________________________________
> linux-lvm mailing list
> linux-lvm@redhat.com
> https://listman.redhat.com/mailman/listinfo/linux-lvm
> read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/
>
[-- Attachment #1.2: Type: text/html, Size: 4991 bytes --]
[-- Attachment #2: Type: text/plain, Size: 202 bytes --]
_______________________________________________
linux-lvm mailing list
linux-lvm@redhat.com
https://listman.redhat.com/mailman/listinfo/linux-lvm
read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/
next prev parent reply other threads:[~2022-06-03 7:18 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-27 7:02 [linux-lvm] lvm commands hanging when run from inside a kubernetes pod Abhishek Agarwal
2022-05-30 11:55 ` Roger Heflin
2022-05-31 18:50 ` Abhishek Agarwal
2022-06-01 7:26 ` Demi Marie Obenour
2022-06-01 8:28 ` Abhishek Agarwal
2022-06-02 11:04 ` Roger Heflin [this message]
2022-06-06 5:49 ` Abhishek Agarwal
2022-06-06 7:01 ` Demi Marie Obenour
2022-06-06 11:31 ` Abhishek Agarwal
2022-06-07 17:42 ` Demi Marie Obenour
2022-06-06 7:02 ` Bernd Eckenfels
2022-06-02 19:00 ` Nir Soffer
2022-05-30 15:15 ` Zdenek Kabelac
2022-05-30 15:15 ` Zdenek Kabelac
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAAMCDefV+jHCKnrp0gad7BFgJaYDQNOkeQM5z8zkOe4PUz9Dpw@mail.gmail.com \
--to=rogerheflin@gmail.com \
--cc=linux-lvm@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).