diff --git a/README.md b/README.md index 55f0069c..e6aec51b 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@

-Logo banner +Logo banner

License Code style: Black @@ -23,37 +23,58 @@ Installation of PVC is accomplished by two main components: a [Node installer IS Just give it physical servers, and it will run your VMs without you having to think about it, all in just an hour or two of setup time. - -## What is it based on? - -The core node and API daemons, as well as the CLI API client, are written in Python 3 and are fully Free Software (GNU GPL v3). In addition to these, PVC makes use of the following software tools to provide a holistic hyperconverged infrastructure solution: - - * Debian GNU/Linux as the base OS. - * Linux KVM, QEMU, and Libvirt for VM management. - * Linux `ip`, FRRouting, NFTables, DNSMasq, and PowerDNS for network management. - * Ceph for storage management. - * Apache Zookeeper for the primary cluster state database. - * Patroni PostgreSQL manager for the secondary relation databases (DNS aggregation, Provisioner configuration). - - ## Getting Started -To get started with PVC, please see the [About](https://docs.parallelvirtualcluster.org/en/latest/about/) page for general information about the project, and the [Getting Started](https://docs.parallelvirtualcluster.org/en/latest/getting-started/) page for details on configuring your first cluster. - +To get started with PVC, please see the [About](https://docs.parallelvirtualcluster.org/en/latest/about-pvc/) page for general information about the project, and the [Getting Started](https://docs.parallelvirtualcluster.org/en/latest/deployment/getting-started/) page for details on configuring your first cluster. ## Changelog -View the changelog in [CHANGELOG.md](CHANGELOG.md). - +View the changelog in [CHANGELOG.md](CHANGELOG.md). **Please note that any breaking changes are announced here; ensure you read the changelog before upgrading!** ## Screenshots -While PVC's API and internals aren't very screenshot-worthy, here is some example output of the CLI tool. +These screenshots show some of the available functionality of the PVC system and CLI as of PVC v0.9.85. -

Node listing
Listing the nodes in a cluster

+

0. Integrated help
+The CLI features an integrated, fully-featured help system to show details about every possible command. +

-

Network listing
Listing the networks in a cluster, showing 3 bridged and 1 IPv4-only managed networks

+

1. Connection management
+A single CLI instance can manage multiple clusters, including a quick detail view, and will default to a "local" connection if an "/etc/pvc/pvc.conf" file is found; sensitive API keys are hidden by default. +

-

VM listing and migration
Listing a limited set of VMs and migrating one with status updates

+

2. Cluster details and output formats
+PVC can show the key details of your cluster at a glance, including health, persistent fault events, and key resources; the CLI can output both in pretty human format and JSON for easier machine parsing in scripts. +

-

Node logs
Viewing the logs of a node (keepalives and VM [un]migration)

+

3. Node information
+PVC can show details about the nodes in the cluster, including their live health and resource utilization. +

+ +

4. VM information
+PVC can show details about the VMs in the cluster, including their state, resource allocations +

+ +

5. VM details
+In addition to the above basic details, PVC can also show extensive information about a running VM's devices and other resource utilization. +

+ +

6. Network information
+PVC has two major client network types, and ensures a consistent configuration of client networks across the entire cluster; managed networks can feature DHCP, DNS, firewall, and other functionality including DHCP reservations. +

+ +

7. Storage information
+PVC provides a convenient abstracted view of the underlying Ceph system and can manage all core aspects of it. +

+ +

8. VM and node logs
+PVC can display logs from VM serial consoles (if properly configured) and nodes in-client to facilitate quick troubleshooting. +

+ +

9. VM and worker tasks
+PVC provides full VM lifecycle management, as well as long-running worker-based commands (in this example, clearing a VM's storage locks). +

+ +

10. Provisioner
+PVC features an extensively customizable and configurable VM provisioner system, including EC2-compatible CloudInit support, allowing you to define flexible VM profiles and provision new VMs with a single command. +

diff --git a/docs/images/pvc-migration.png b/docs/images/pvc-migration.png deleted file mode 100644 index e9daf313..00000000 Binary files a/docs/images/pvc-migration.png and /dev/null differ diff --git a/docs/images/pvc-networks.png b/docs/images/pvc-networks.png deleted file mode 100644 index afa7732a..00000000 Binary files a/docs/images/pvc-networks.png and /dev/null differ diff --git a/docs/images/pvc-nodelog.png b/docs/images/pvc-nodelog.png deleted file mode 100644 index a0eda9c6..00000000 Binary files a/docs/images/pvc-nodelog.png and /dev/null differ diff --git a/docs/images/pvc-nodes.png b/docs/images/pvc-nodes.png deleted file mode 100644 index 1a6bf8ec..00000000 Binary files a/docs/images/pvc-nodes.png and /dev/null differ diff --git a/images/0-integrated-help.png b/images/0-integrated-help.png new file mode 100644 index 00000000..96af2922 Binary files /dev/null and b/images/0-integrated-help.png differ diff --git a/images/1-connection-management.png b/images/1-connection-management.png new file mode 100644 index 00000000..e1a164fe Binary files /dev/null and b/images/1-connection-management.png differ diff --git a/images/10-provisioner.png b/images/10-provisioner.png new file mode 100644 index 00000000..a425332c Binary files /dev/null and b/images/10-provisioner.png differ diff --git a/images/2-cluster-details-and-output-formats.png b/images/2-cluster-details-and-output-formats.png new file mode 100644 index 00000000..5c4ad9f6 Binary files /dev/null and b/images/2-cluster-details-and-output-formats.png differ diff --git a/images/3-node-information.png b/images/3-node-information.png new file mode 100644 index 00000000..b7690d48 Binary files /dev/null and b/images/3-node-information.png differ diff --git a/images/4-vm-information.png b/images/4-vm-information.png new file mode 100644 index 00000000..266c61f7 Binary files /dev/null and b/images/4-vm-information.png differ diff --git a/images/5-vm-details.png b/images/5-vm-details.png new file mode 100644 index 00000000..344088b0 Binary files /dev/null and b/images/5-vm-details.png differ diff --git a/images/6-network-information.png b/images/6-network-information.png new file mode 100644 index 00000000..f2b4d9fe Binary files /dev/null and b/images/6-network-information.png differ diff --git a/images/7-storage-information.png b/images/7-storage-information.png new file mode 100644 index 00000000..2560e251 Binary files /dev/null and b/images/7-storage-information.png differ diff --git a/images/8-vm-and-node-logs.png b/images/8-vm-and-node-logs.png new file mode 100644 index 00000000..d0d1ab64 Binary files /dev/null and b/images/8-vm-and-node-logs.png differ diff --git a/images/9-vm-and-worker-tasks.png b/images/9-vm-and-worker-tasks.png new file mode 100644 index 00000000..a29d59fd Binary files /dev/null and b/images/9-vm-and-worker-tasks.png differ diff --git a/docs/images/pvc_logo_black.png b/images/pvc_logo_black.png similarity index 100% rename from docs/images/pvc_logo_black.png rename to images/pvc_logo_black.png