Giter Club home page Giter Club logo

pxmx-ctld's People

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

tacid

pxmx-ctld's Issues

Include on install.sh

systemctl restart pvedaemon
systemctl restart pveproxy
systemctl restart pvestatd

echo "Logout from PVE webgui and clean the browser cache and login again."
echo "Ctld should be available as a iSCSI provider without restart any node or cluster service."

Resize not working

Hi.
I tested the driver on proxmox 6.3.x and 6.4.x.
One problem that occurs is the resize.
To reproduce follow the steps:

  1. Select the VM.
  2. Click Hardware.
  3. Select storage disk.
  4. Click Resize.
  5. Enter the increment in GB and click OK.

An error phrase will appear saying that the lun could not be located.

On FreeBSD the volume has been updated (ie incremented).

Temporary operation:

  1. After the error click ok.
  2. On FreeNSD SAN (where the ctld is) do /etc/rc.d/ctld reload (so the new size will be updated via iscsi).
  3. In Proxmox, dettach the HD and attach again.
    Okay, it will appear with the new size in proxmox. Now just enter in VM and do the internal operation of extending.

Bug: candidate is always not set in CTLD.pm

At line 350 of CTLD.pm $candidate is always reported as empty variable and the script is failing because you are using "==" instead of "eq" for checking of the variable is set/empty.

I have fixed it for me but cannot commit my changes in your repo. Suggest if you still work on this project to fix it.

The Patch files also needs refreshment, but I don't have the time to create one so I just patched manually.

Moving VM disk from one storage to another creates wrong config file entry and don't delete it from source config

Setup

Storage1:

target iqn.storage1.lan:storage1 {
     auth-group no-authentication
     portal-group pg0
     lun 0 {
           path /dev/zvol/iscsi/vm-101-disk-0
     }
}

Storage2:

target iqn.storage2.lan:storage2 {
	auth-group no-authentication
	portal-group pg0
}

After moving the storage I somehow expected:

Storage1:

target iqn.storage1.lan:storage1 {
     auth-group no-authentication
     portal-group pg0

}

Storage2:

target iqn.storage2.lan:storage2 {
	auth-group no-authentication
	portal-group pg0
     lun 0 {
           path /dev/zvol/iscsi/vm-101-disk-0
     }
}

What I actually got was:

Storage1:

target iqn.storage1.lan:storage1 {
     auth-group no-authentication
     portal-group pg0
}
iqn.storage2.lan:storage2 {                       ### <<<--- Note missing "Target" at the beginning 
     lun 0 {
           path /dev/zvol/disk_d/vm-101-disk-0
     }
}

Storage2:

target iqn.storage1.lan:storage1 {
     auth-group no-authentication
     portal-group pg0
     lun 0 {
           path /dev/zvol/iscsi/vm-101-disk-0
     }
}


iqn.storage2.lan:storage2 {                       ### <<<--- Note missing "Target" at the beginning  even thou it was correct before

     lun 0 {
          path /dev/zvol/disk_d/vm-101-disk-0
    }
}

Some observations:

  1. For some reason the storage1 target configuration is being copied to the storage2 ctl.conf
  2. The word "Target is missing"
  3. The storage2 configuration has copied the target configuration from storage1 having the word "target" but then it's own config misses the "target" word
  4. The storage1 don't delete the LUN section after migration
  5. All target configurations have the LUN inside everywhere
  6. ZFS volumes, LUN mappings in the runtime config are being correctly handled. However one ctld restart with this messed up configs may cause a disaster.
  7. Haven't tested how all good runtime LUN mappings and zvols after migration but messed up ctl.conf files will affect attempt for second migration e.g. what data will be taken from configs and what from LUN mappings and what will it result in
  8. Deleting VM with it's disks will fail after a migration happened probably due to messed up ctl.conf files

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.