code: def create_snapshot(self, snapshot_size, snapshot_suffix):
  		
  		size_extent = math.ceil(self.extents_count() * snapshot_size)
  		size_kb = self.volume_group().extent_size() * size_extent
  		snapshot_name = self.volume_name() + snapshot_suffix
  
  		lvcreate_cmd = ['sudo'] if self.lvm_command().sudo() is True else []
  
  		lvcreate_cmd.extend([
  			'lvcreate', '-L', '%iK' % size_kb, '-s', '-n', snapshot_name, '-p', 'r', self.volume_path()
  		])
  		subprocess.check_output(lvcreate_cmd, timeout=self.__class__.__lvm_snapshot_create_cmd_timeout__)
  		return WLogicalVolume(self.volume_path() + snapshot_suffix, sudo=self.lvm_command().sudo())
docs: Create snapshot for this logical volume.
  
  		:param snapshot_size: size of newly created snapshot volume. This size is a fraction of the source \
  		logical volume space (of this logical volume)
  		:param snapshot_suffix: suffix for logical volume name (base part is the same as the original volume \
  		name)
  
  		:return: WLogicalVolume