virtproxyd(8) Virtualization Support virtproxyd(8)

virtproxyd - دیمن پروکسی libvirt

virtproxyd [OPTION]...

برنامه virtproxyd یک مؤلفه دیمن سمت سرور از سیستم مدیریت مجازی‌سازی libvirt است.

این برنامه یکی از مجموعه‌دیمن‌های ماژولار است که جایگزین عملکردهایی شده‌اند که پیش‌تر توسط دیمن یکپارچه libvirtd ارائه می‌شد.

این دیمن روی میزبان‌های مجازی‌سازی اجرا شده و:

  • به یک سوکت UNIX گوش فرا می‌دهد تا سازگاری با نسخه‌های پیشین را برای کلاینت‌هایی که پیش‌تر به سوکت libvirtd متصل می‌شدند، فراهم سازد.
  • به صورت اختیاری روی پورت‌های TCP برای اتصالات کلاینت‌های خارج از گره گوش فرا می‌دهد.

به محض دریافت پیام‌های RPC از یک کلاینت، virtproxyd آن‌ها را به صورت شفاف به دیمن ماژولار مناسب هدایت کرده و به همین ترتیب هرگونه رویداد ناهمگام را بازپخش می‌کند.

به طور پیش‌فرض، دیمن virtproxyd به درخواست‌ها روی یک سوکت محلی دامنه یونیکس (Unix domain socket) با همان مسیری که پیش‌تر توسط libvirtd استفاده می‌شد گوش می‌دهد. فایل پیکربندی می‌تواند برای دستور دادن به آن جهت گوش دادن روی سوکت‌های TCP نیز استفاده شود. فعال‌سازی با سوکتِ systemd نیز پشتیبانی می‌شود تا امکان دریافت سوکت‌های شنونده از پیش باز شده را در هنگام راه‌اندازی فراهم آورد.

از آنجا که virtproxyd صرفاً پیام‌های RPC را هدایت می‌کند، وضعیت مهمی نگهداری نمی‌کند و می‌توان آن را در هر زمانی مجدداً راه‌اندازی کرد. کلاینت‌ها باید پس از راه‌اندازی مجدد، دوباره متصل شوند.

دیمن virtproxyd قادر است در دو حالت راه‌اندازی شود.

در میزبان‌های مجهز به systemd، این دیمن در حالت فعال‌سازی با سوکت راه‌اندازی می‌شود و برای ایجاد و گوش دادن به سوکت‌های UNIX و به صورت اختیاری TCP/IP و ارسال آن‌ها به عنوان توصیف‌کننده‌های فایلِ از پیش باز شده (pre-opened file descriptors) به systemd متکی خواهد بود. در این حالت، بیشتر گزینه‌های پیکربندی مربوط به سوکت در /etc/libvirt/virtproxyd.conf دیگر تأثیری نخواهند داشت. برای فعال کردن سوکت‌های TCP یا TLS از یکی از دستورهای زیر استفاده کنید:

$ systemctl start virtproxyd-tls.socket

یا

$ systemctl start virtproxyd-tcp.socket

نکته: سوکت TCP از اتصال ساده و رمزنگاری‌نشده TCP استفاده می‌کند و در نتیجه ناامن است و نباید استفاده شود.

در میزبان‌های بدون systemd، خود دیمن اقدام به ایجاد و گوش دادن به سوکت‌های UNIX می‌کند. همچنین با توجه به گزینه‌های listen_tcp و listen_tls در /etc/libvirt/virtproxyd.conf به سوکت(های) TCP/IP نیز گوش فرا خواهد داد.

-h, --help

نمایش راهنمای استفاده در خط فرمان و سپس خروج.

-d, --daemon

اجرا به صورت یک دیمن و نوشتن فایل PID.

-f, --config *FILE*

استفاده از این فایل پیکربندی به جای مقدار پیش‌فرض.

-p, --pid-file *FILE*

استفاده از این نام برای فایل PID به جای مقدار پیش‌فرض.

-t, --timeout *SECONDS*

خروج پس از اتمام مدت زمان انتظار (به ثانیه)، به شرط آن‌که هیچ اتصال کلاینتی وجود نداشته باشد.

-v, --verbose

فعال‌سازی خروجی پیام‌های پرجزئیات.

--version

نمایش اطلاعات نسخه و سپس خروج.

با دریافت سیگنال SIGHUP، دیمن virtproxyd پیکربندی خود را مجدداً بارگذاری خواهد کرد.

•
/etc/libvirt/virtproxyd.conf

فایل پیکربندی پیش‌فرض مورد استفاده توسط virtproxyd، مگر اینکه در خط فرمان با استفاده از گزینه -f | --config نادیده گرفته شود.

  • /run/libvirt/libvirt-sock
  • /run/libvirt/libvirt-sock-ro

سوکت‌هایی که virtproxyd استفاده خواهد کرد.

•
/etc/pki/CA/cacert.pem

گواهی مرجع صدور گواهی (Certificate Authority) TLS که virtproxyd استفاده خواهد کرد.

•
/etc/pki/libvirt/servercert.pem

گواهی سرور TLS که virtproxyd استفاده خواهد کرد.

•
/etc/pki/libvirt/private/serverkey.pem

کلید خصوصی سرور TLS که virtproxyd استفاده خواهد کرد.

•
/run/virtproxyd.pid

فایل PID مورد استفاده، مگر اینکه با گزینه -p | --pid-file تغییر داده شود.

•
$XDG_CONFIG_HOME/libvirt/virtproxyd.conf

فایل پیکربندی پیش‌فرض مورد استفاده توسط virtproxyd، مگر اینکه در خط فرمان با استفاده از گزینه -f``|--config`` تغییر داده شود.

•
$XDG_RUNTIME_DIR/libvirt/libvirt-sock

سوکت‌هایی که virtproxyd استفاده خواهد کرد.

•
$HOME/.pki/libvirt/cacert.pem

گواهی مرجع صدور گواهی (Certificate Authority) TLS که virtproxyd استفاده خواهد کرد.

•
$HOME/.pki/libvirt/servercert.pem

گواهی سرور TLS که virtproxyd استفاده خواهد کرد.

•
$HOME/.pki/libvirt/serverkey.pem

کلید خصوصی سرور TLS که virtproxyd استفاده خواهد کرد.

•
$XDG_RUNTIME_DIR/libvirt/virtproxyd.pid

فایل PID مورد استفاده، مگر اینکه با گزینه -p``|--pid-file`` تغییر داده شود.

اگر $XDG_CONFIG_HOME در محیط شما تنظیم نشده باشد، virtproxyd از $HOME/.config استفاده خواهد کرد.

اگر $XDG_RUNTIME_DIR در محیط شما تنظیم نشده باشد، virtproxyd از $HOME/.cache استفاده خواهد کرد.

برای دریافت نسخه virtproxyd:

# virtproxyd --version
virtproxyd (libvirt) 12.7.0

برای شروع virtproxyd و دستور به اجرای آن به صورت دیمن و ایجاد فایل PID:

# virtproxyd -d
# ls -la /run/virtproxyd.pid
-rw-r--r-- 1 root root 6 Jul  9 02:40 /run/virtproxyd.pid

لطفاً هرگونه باگی را که کشف می‌کنید گزارش دهید. این کار می‌تواند از طریق یکی از راه‌های زیر انجام شود:

1.
فهرست پستی (mailing list)

https://libvirt.org/contact.html

2.
سامانه پیگیری باگ (bug tracker)

https://libvirt.org/bugs.html

همچنین می‌توانید باگ‌ها را به توزیع‌کننده یا ارائه‌دهنده نرم‌افزار خود گزارش دهید.

لطفاً به فایل AUTHORS توزیع‌شده همراه با libvirt مراجعه فرمایید.

Copyright (C) 2006-2020 Red Hat, Inc., and the authors listed in the libvirt AUTHORS file.

virtproxyd تحت شرایط GNU LGPL نسخه ۲.۱ یا بالاتر توزیع شده است. این یک نرم‌افزار آزاد است؛ برای شرایط کپی‌برداری به کد منبع مراجعه فرمایید. هیچ ضمانتی وجود ندارد؛ حتی برای قابلیت فروش یا مناسب بودن برای یک هدف خاص.

virsh(1), libvirtd(8), https://libvirt.org/daemons.html