1
0
mirror of https://github.com/OpenNebula/one.git synced 2024-12-22 13:33:52 +03:00
Commit Graph

1987 Commits

Author SHA1 Message Date
Jan Orel
d46345238d
B #-: Gem locks (#2943)
*  Update Gemfile
   - Add rackup requirement for new sinatra

      https://github.com/sinatra/sinatra/blob/main/CHANGELOG.md
      Note: when using Sinatra to start the web server,
      you now need the rackup gem installed

  - newer sqlite3 is not compatible with ruby2.7

* Update almalinux8 to avoid old key

* Refresh Gemfile.locks
2024-02-16 12:11:48 +01:00
Jan Orel
5a45ce0c9c
F OpenNebula/one#6357: Debian 12: gem locks, openssl legacy (#2940)
* Gemfile.lock for Debian 12
* Add NODE_OPTIONS=--openssl-legacy-provider
2024-02-14 09:59:55 +01:00
Jan Orel
a32719139d
M #-: Use /usr/bin/arping from iputils-arping (#2938)
There is also arping, providing /usr/sbin/arping but we don't use that one.
2024-02-12 12:16:33 +01:00
Daniel Clavijo Coca
df0b41dec1
M #-: Update vm state reference (#2929) 2024-02-09 11:05:41 +01:00
Jan Orel
ca1ac6f8f0
B OpenNebula/one##5909: Switch to /usr/(s)bin deb (#2907) 2024-02-06 11:38:47 +01:00
Pavel Czerný
5788a2528e
B #6372: Add lock to raft hook script (#2899)
* This should fix issues in HA environment, where we sometimes get duplicit virtual IPs
2024-02-06 11:18:35 +01:00
Ruben S. Montero
1ee6498b3c
F #6439: Add deafult auth operation 2024-01-31 18:10:44 +01:00
mkutouski
5d21f33a7b
B OpenNebula/one#6467: LUKS_PASSWORD was removed (#2903)
Removed LUKS_PASSWORD from the oned.conf because it's not used in the code.
2024-01-22 15:55:56 +01:00
Jan Orel
75ecbae407
Old ruby (#2902)
* Revert "L #-: Use newer argument forwarding syntax"

This reverts commit ca4645f300.

* L #-: Disable Style/ArgumentsForw. due older ruby
2024-01-19 13:03:26 +01:00
Pavel Czerný
442041fd07
F #6341: Generic Quotas
- Generic quotas are defined and read from oned.conf (QUOTA_VM_ATTRIBUTE)
- Generic quotas react to the running mode (i.e. account only when the VM is
  running). For each quota oned also adds a RUNNIN_* metric
- one.system.config API call has been updated so every user can read
  quota configuration:
    . Sensitive information is hidden (***)
    . Oneadmin group has no longer access to sensitive information
      through the API
- CLI has been updated to render generic quotas
- onedb fsck fixes generic quotas reading the configuration from
  oned.conf

Other changes in this PR:
- Refactor Quota metrics to use std::vector instead of C array
Squashed commit of the following:
- New methods to Template and Attribute classes to render hidden
  attributes as "***"
- Update Quota calls to not include unneeded quotas

co-authored-by:Ruben S. Montero <rsmontero@opennebula.org>
2024-01-08 14:07:03 +01:00
Pavel Czerný
0712e08a70
M #-: Fix VM restricted attribute from RAW to RAW/DATA (#2874) 2023-12-18 16:23:25 +01:00
Neal
5aeac3cddb
F #6427: Remove rbvmomi and update gemlock files (#2871) 2023-12-13 11:46:33 +01:00
Pavel Czerný
8d564f5d46
M #-: Add ERROR attribute to backupjob xml schema (#2869)
(cherry picked from commit 6e2c4c623f)
2023-12-12 16:28:32 +01:00
Daniel Clavijo Coca
9d5322fe1d
F OpenNebula/one#6365: Improve oneflow listing commands CLI (#2870) 2023-12-12 16:07:19 +01:00
Tino Vázquez
7516ed7f0a L #-: Lint for rubocop 1.58.0 2023-12-04 10:40:53 +01:00
Daniel Clavijo Coca
ac11277d93
F OpenNebula/one#6059: Added QoL features for backup management (#2837)
using the CLI

(cherry picked from commit 611fe5f363)
2023-11-28 16:20:23 +01:00
Neal
e7502c8d39
M #-: Update gemfiles and change rbvmomi to rbvmomi2 (#2840) 2023-11-27 18:09:53 +01:00
mkutouski
af6591e814
B #6282: Fix Incorrect configuration of systemd services (#2831) 2023-11-22 12:45:36 +01:00
Pavel Czerný
1b3f3d1462
F #6333: Fix xml schema (#2811) 2023-11-14 12:08:43 +01:00
Ruben S. Montero
ea1d5183ea
F #6333: Snapshots for incremental backup mode
- Defines a new a attribute "INCREMENT_MODE" that can be "SNAPSHOT" or
     "CBT"

- SNAPSHOT mode: takes a disk snapshot (virsh snapshot-create-as or
  qemu-img). The current snapshot is saved in the backup store, and
  committed to the base disk image.

  The backup_qcow2.rb util adapt to different VM folder layout for SSH,
  shared, persistent, non persistent disks.

- Lint vxlan.rb

- Update onevm and XSD schema to reflect the new backup attribute
2023-11-10 19:40:26 +01:00
Pavel Czerný
2ada2ec687
M #-: Remove obsolete attribute from oned.conf (#2808) 2023-11-10 11:52:15 +01:00
Daniel Clavijo Coca
97c683f9f6
M #: Add missing CLI autocompletion for onemarket (#2800) 2023-11-06 13:11:22 +01:00
Tino Vázquez
55e4c2b9dd
M #-: Bump version 6.99.80 2023-10-18 16:00:52 +02:00
Ruben S. Montero
652eddb2eb
M #-: Add hint in update-locks help banner 2023-10-11 10:29:31 +02:00
Jan Orel
01b5a2fc78
M #-: Add RedHat gemfile locks (#2761)
Requires following vars to be exported
RHEL_USER
RHEL_PASSWORD
RHEL_POOL_ID
2023-10-11 10:21:10 +02:00
Tino Vázquez
3e17d5e859
M #-: Bump version 6.8.0 2023-10-10 13:24:13 +02:00
Daniel Clavijo Coca
0b2ce6c700
B OpenNebula/one#6345: Fix oneflow CLI autocompletion (#2772) 2023-10-09 18:49:28 +02:00
Tino Vázquez
5241112a78 M #-: Bump version 6.7.90 2023-09-28 16:28:19 +02:00
Ruben S. Montero
d650682931
M #-: Bump version of oneprovision default repo 2023-09-27 12:07:55 +02:00
Jan Orel
1d4f0b4926
M #-: Refresh gemfile lock (#2760) 2023-09-26 16:44:26 +02:00
Neal Hansen
c1a0e5bfc5
F OpenNebula/one#6286: Add support for VIDEO devices in KVM
- New attribute VIDEO, that includes
  - TYPE: Custom video device (none, vga, cirrus, virtio)
 - IOMMU: Enable IOMMU for the video device
 - ATS: Enable ATS (Address Translation Services) for the video device
 - VRAM: VRAM allocated to the video device (Megabytes)
 - RESOLUTION: Video resolution, in format like: 1280x720 or 1920x1080

- Support for onevm CLI command
- Updated VM xsd file.
2023-09-20 20:00:10 +02:00
Jan Orel
8e3a92b962
M #-: Update ceph_stable_openstack_release_uca (#2745) 2023-09-20 19:41:13 +02:00
Tino Vázquez
dca8684361 L #-: Remove ssh_auth.rb from linting exclusion 2023-09-20 11:04:46 +02:00
Tino Vázquez
02359fbfc9 L #-: Linting for rubocop 1.56.3 2023-09-19 16:07:32 +02:00
Jan Orel
b4ebee7ff0
B #6318: OneProvision: update equinix provider (#2735)
- no more facility, use metro
 - don't use ancient packet gem
2023-09-18 17:10:34 +02:00
Jan Orel
20308f6d7e
B #-: Fix ruby shebang (#2730) 2023-09-15 09:22:57 +02:00
Pavel Czerný
ac49ab6d30
F #6227: New API for VMGroup roles
* New API for VMGroup roles: add, del, update
* Go and Java api for VM Group roles
2023-09-14 15:36:26 +02:00
Pavel Czerný
dfb4e80006
F #6275: Serialize custom attributes
- EXTERNAL_VM_ATTR can be defined in sched conf to add additional
  VM attributes to the JSON document sent to the external sched. The
  format is: "XPATH<:NAME>" (NAME is optional, if not defined the
  original attribute name will be used).

- Add example server to the share folder
2023-09-14 10:46:18 +02:00
Jan Orel
5de362e082
oneprovision fixes (#2724)
* Do not use yoga ceph repositories
* oneproivison: don't validate frr repo cert
2023-09-14 09:11:21 +02:00
Tino Vázquez
cbaab1e047 L #-: Exclude new JSON rb file from lintin 2023-09-06 19:06:13 +02:00
Ruben S. Montero
dca50b2bb9
F #6275: External scheduler API
The connection to an external scheduler module is configured in sched.conf:

EXTERNAL_SCHEDULER = [
   SERVER  = "http://localhost:4567",
   PROXY   = "",
   TIMEOUT = 10
]

The API post on '/' the list of VMs, their pre-selected list of
candidate hosts based on REQUIREMENTS along with the VM information
(CAPACITY, TEMPLATE and USER_TEMPLATE).

Example:
{
  "VMS": [
    {
      "CAPACITY": {
        "CPU": 1.5,
        "DISK_SIZE": 1024,
        "MEMORY": 131072
      },
      "HOST_IDS": [
        3,
        4,
        5
      ],
      "ID": 32,
      "STATE": "PENDING",
      "TEMPLATE": {
        "AUTOMATIC_DS_REQUIREMENTS": "(\"CLUSTERS/ID\" @> 0)",
        "AUTOMATIC_NIC_REQUIREMENTS": "(\"CLUSTERS/ID\" @> 0)",
        "AUTOMATIC_REQUIREMENTS": "(CLUSTER_ID = 0) & !(PUBLIC_CLOUD = YES) & !(PIN_POLICY = PINNED)",
        "CPU": "1.5",
        "MEMORY": "128",
        ...
      },
      "USER_TEMPLATE": {}
    },
    {
      "CAPACITY": {
        "CPU": 1.5,
        "DISK_SIZE": 1024,
        "MEMORY": 131072
      },
      "HOST_IDS": [
        3,
        4,
        5
      ],
      "ID": 33,
      "STATE": "PENDING",
      "TEMPLATE": {
       ...
      },
      "USER_TEMPLATE": {}
    }
  ]
}

The scheduler needs to respond to this post action with a simple list of
the allocation for each VM:

{
  "VMS": [
    {
      "ID": 32,
      "HOST_ID": 2
    },
    {
      "ID": 33,
      "HOST_ID": 0
    }
  ]
}

This commits vendorize Vendorize nlohmann-json (MIT license)
2023-08-29 17:11:01 +02:00
Pavel Czerný
ee8c6bd8be
B #6297: Fix local characters for onedb (#2699)
* Fix local characters for onedb fsck
* Fix charset for onedb sqlite2mysql

(cherry picked from commit 0fc9f457f2)
2023-08-29 11:41:05 +02:00
Tino Vázquez
1f4512433d L #-: Disabling cop for rubocop 1.56.0 2023-08-17 13:00:35 +02:00
Pavel Czerny
3893aa39d1 M #-: Update Backup Job xml schema 2023-08-08 09:42:05 +02:00
Pavel Czerny
9d463a72f1 M #-: Add DISK_TYPE to xml-schema 2023-08-08 09:42:05 +02:00
Neal
ae2a6b8cb8
F OpenNebula/one#6212: add DISK_TYPE to TM_MAD_CONF for lvm tms (#2684)
Signed-off-by: Neal Hansen <nhansen@opennebula.io>
2023-07-26 16:43:59 +02:00
Tino Vázquez
f0756c0b4d
L #-: Adjust linting for rubocop 1.54.1
(cherry picked from commit 93af7585376b10c7951cbb96d05de0c903a5ee41)
2023-07-12 11:57:20 +02:00
Neal
201d388601
F OpenNebula/one#6367: Add FORMAT to the ALLOW_ORPHANS values (#2664)
in oned.conf comments
2023-07-10 19:37:31 +02:00
Ruben S. Montero
6bbfbb03e4
F #6063: Backup Jobs for OpenNebula
Includes the following changes:
- xml-schema for Backup Job and Scheduled Actions
- GO, Java api
- Deprecate onevm update-chart, delete-chart
    * The commands are replaced by sched-update and sched-delete
    * Refactor method deprecate_command, it's still possible to run the
    command
    * Delete 'shutdown' and 'delete' commands deprecated years ago
    * Fix --verbose option for sched-update and sched-delete
- Re-implementation of scheduled actions, now are managed and executed
  by oned
- Backup Job objects, API, and CLI commands
2023-07-03 18:15:52 +02:00
Pavel Czerný
bf36ccf30d
F #6111: Add VCPU to VM short xml (#2655)
(cherry picked from commit 78c584661c)
2023-06-29 09:59:47 +02:00