From: John Wolfe Date: Fri, 4 Mar 2022 20:31:27 +0000 (-0800) Subject: Add the ReleaseNotes.md file for the OVT 12.0.0 release X-Git-Tag: stable-12.0.0~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a43eac940829b44d5f19c563f76bc8f173ae9464;p=thirdparty%2Fopen-vm-tools.git Add the ReleaseNotes.md file for the OVT 12.0.0 release - Sync README.md content with the RN where there is overlap. --- diff --git a/README.md b/README.md index 7fe050c82..f64c8b2ca 100644 --- a/README.md +++ b/README.md @@ -105,20 +105,20 @@ To build the optional sdmp (Service Discovery) plugin use the `--enable-serviced ### Salt Minion Setup The Salt support on Linux consists of a single bash script to setup Salt Minion on VMware virtual machines. The script requires the "curl" and "awk" commands to be available on the system. -It is recommended to Linux vendors supplying open-vm-tools packages that Salt Minion support be provided in a separate optional package - "open-vm-tools-salt-minion". +Linux providers supplying open-vm-tools packages are recommended to provide Salt Minion support in a separate optional package - "open-vm-tools-salt-minion". -To make the Salt Minion Setup a part of the open-vm-tools build use the `--enable-salt-minion` option when invoking the configure script: +To include the Salt Minion Setup in the open-vm-tools build use the `--enable-salt-minion` option when invoking the configure script. ``` ./configure --enable-salt-minion ``` ### Component Manager (componentMgr) plugin -The component Manager manages a preconfigured set of components available from VMware that can be made available on the Linux guest. Currently the only component that can be managed is the Salt Minion. +The component Manager manages a preconfigured set of components available from VMware that can be made available on the Linux guest. Currently the only component that can be managed is the Salt Minion Setup. ### ContainerInfo (containerInfo) plugin -The optional containerInfo plugin captures a list of the containers running on a Linux guest and publishes the list to the guest variable "**guestinfo.vmtools.containerinfo**" in JSON format. The containerInfo plugin supports only the containerd runtime. The plugin communicates with the containerd runtime using gRPC and retrieves the list of running containers. If any of those containers are managed by Docker, the plugin uses libcurl to communicate with the Docker daemon and get the name of the container. +The optional containerInfo plugin retrieves a list of the containers running on a Linux guest and publishes the list to the guest variable "**guestinfo.vmtools.containerinfo**" in JSON format. The containerInfo plugin communicates with the containerd daemon using gRPC to retrieve the desired information. For containers that are managed by Docker, the plugin uses libcurl to communicate with the Docker daemon and get the names of the containers. -This plugin requires additional build and runtime dependencies. It is suggested that this plugin be released in a separate, optional package - "open-vm-tools-containerinfo". A separate package avoids unneeded, unused runtime dependencies for the customers not using the features provided by this plugin. +Since this plugin requires additional build and runtime dependencies, Linux vendors are recommended to release it in a separate, optional package - "open-vm-tools-containerinfo". This avoids unnecessary dependencies for customers not using the feature. #### Canonical, Debian, Ubuntu Linux | Build Dependencies | Runtime | @@ -143,11 +143,11 @@ This plugin requires additional build and runtime dependencies. It is suggested #### Configuring the build for the ContainerInfo plugin -The configure script defaults to build the ContainerInfo plugin. If, however, all the needed dependencies are not available, the plugin will not be built - as if the configure script was invoked with `--enable-containerinfo=no`. Use this option to explicitly avoid trying to build the plugin. +The configure script defaults to building the ContainerInfo when all the needed dependencies are available. ContainerInfo will not be built if there are missing dependencies. Invoke the configure script with `--enable-containerinfo=no` to explicitly inhibit building the plugin. ``` ./configure --enable-containerinfo=no ``` -If the configure script is given the option `--enable-containerinfo=yes` and all necessary dependencies are not available, the configure script will terminate with an error. +If the configure script is given the option `--enable-containerinfo=yes` and any necessary dependency is not available, the configure script will terminate with an error. ``` ./configure --enable-containerinfo=yes ``` diff --git a/ReleaseNotes.md b/ReleaseNotes.md index 6f4ce1c57..2441e807b 100644 --- a/ReleaseNotes.md +++ b/ReleaseNotes.md @@ -1,56 +1,166 @@ -#open-vm-tools 10.0.0 Release Notes - -Updated on 1 SEP 2015 -##What's in the Release Notes -The release notes cover the following topics: - -- What's New -- Internationalization -- Compatibility -- Installation and Upgrades for This Release -- Known Issues - -##What's New -VMware Tools is a suite of utilities that enhances the performance of the virtual machine's guest operating system and improves management of the virtual machine. Read about the new and enhanced features in this release below: - -- **Common versioning**: Infrastructure changes to enable reporting of the true version of open-vm-tools. This feature is dependent on host support. -- **Quiesced snapshots enhancements for Linux guests running IO workload**: Robustness related enhancements in quiesced snapshot operation. The _vmtoolsd_ service supports caching of log messages when guest IO has been quiesced. Enhancements in the _vmbackup_ plugin use a separate thread to quiesce the guest OS to avoid timeout issues due to heavy I/O in the guest. -- **Shared Folders**: For Linux distributions with kernel version 4.0.0 and higher, there is a new FUSE based Shared Folders client which is used as a replacement for the kernel mode client. -- **ESXi Serviceability**: Default _vmtoolsd_ logging is directed to a file instead of syslog. _vmware-toolbox-cmd_ is enhanced for setting _vmtoolsd_ logging levels. -- **GuestInfo Enhancements**: Plugin enhancements to report more than 64 IP addresses from the guest. These enhancements will be available only after upgrading the host because the guest IP addresses limit also exists on the host side. - -## Internationalization -open-vm-tools 10.0.0 supports the following languages: - -- English -- French -- German -- Spanish -- Italian -- Japanese -- Korean -- Simplified Chinese -- Traditional Chinese - -## Compatibility -open-vm-tools 10.0.0 is compatible with all supported versions of VMware vSphere, VMware Workstation 12.0 and VMware Fusion 8.0. -## Installation and Upgrades for This Release -The steps to install open-vm-tools vary depending on your VMware product and the guest operating system you have installed. For general steps to install open-vm-tools in most VMware products, see https://github.com/vmware/open-vm-tools/blob/master/README.md -## Known Issues -The known issues are as follows: - -- **The status of IPv6 address is displayed as "unknown"** - - The status of IPv6 address from vim-cmd is displayed as "unknown" even when the address is valid. - - Workaround: None -- **TextCopyPaste between host and guest systems fail** - - Copy and Paste of text between host and guest systems fail if the text size 50KB or higher. - - Workaround: Copy and Paste smaller amounts of text. -- **Definition of the field _ipAddress_ in guestinfo is ambiguous** - - The field _ipAddress_ is defined as "Primary IP address assigned to the guest operating system, if known". - - Workaround: The field _ipAddress_ in this context for Linux is defined as the first IP address fetched by open-vm-tools. +# Open-vm-tools 12.0.0 Release Notes + +Updated: 3 MAR 2022 + +Open-vm-tools | 01 MAR 2022 | Build 19345655 + +Check back for additions and updates to these release notes. + +## What's in the Release Notes + +The release notes cover the following topics: + +* [What's New](#whatsnew) +* [Internationalization](#i18n) +* [End of Feature Support Notice](#endoffeaturesupport) +* [Compatibility Notes](#compatibility) +* [Guest Operating System Customization Support](#guestop) +* [Interoperability Matrix](#interop) +* [Resolved Issues](#resolvedissues) +* [Known Issues](#knownissues) + +## What's New + +* Support for managing Salt Minion through guest variables. See [Enable Salt Minion Using VMware Tools](https://docs.vmware.com/en/VMware-Tools/12.0.0/com.vmware.vsphere.vmwaretools.doc/GUID-373CD922-AF80-4B76-B19B-17F83B8B0972.html). +* Support for gathering and publishing a list of containers running inside Linux guests. See [Configure ContainerInfo for Linux](https://docs.vmware.com/en/VMware-Tools/12.0.0/com.vmware.vsphere.vmwaretools.doc/GUID-82490A5C-014C-46D9-815A-18B1C9E5312C.html). + +To implement these two features, open-vm-tools 12.0.0 release introduces an optional setup script and two plugins (one optional) + + * [Salt Minion Setup](#saltminion) + * [Component Manager plugin](#compmgr) + * [ContainerInfo plugin (optional)](#continfo) + +### Salt Minion Setup +The Salt support on Linux consists of a single bash script to setup Salt Minion on VMware virtual machines. The script requires the "curl" and "awk" commands to be available on the system. + +Linux providers supplying open-vm-tools packages are recommended to provide Salt Minion support in a separate optional package - "open-vm-tools-salt-minion". + +To include the Salt Minion Setup in the open-vm-tools build use the `--enable-salt-minion` option when invoking the configure script. +``` +./configure --enable-salt-minion +``` + +### Component Manager (componentMgr) plugin +The component Manager manages a preconfigured set of components available from VMware that can be made available on the Linux guest. Currently the only component that can be managed is the Salt Minion Setup. + +### ContainerInfo (containerInfo) plugin +The optional containerInfo plugin retrieves a list of the containers running on a Linux guest and publishes the list to the guest variable "**guestinfo.vmtools.containerinfo**" in JSON format. The containerInfo plugin communicates with the containerd daemon using gRPC to retrieve the desired information. For containers that are managed by Docker, the plugin uses libcurl to communicate with the Docker daemon and get the names of the containers. + +Since this plugin requires additional build and runtime dependencies, Linux vendors are recommended to release it in a separate, optional package - "open-vm-tools-containerinfo". This avoids unnecessary dependencies for customers not using the feature. + +#### Canonical, Debian, Ubuntu Linux +| Build Dependencies | Runtime | +|:------------------------:|:----------------:| +| `libcurl4-openssl-dev` | `curl` | +| `protobuf-compiler` | `protobuf` | +| `libprotobuf-dev` | `grpc++` | +| `protobuf-compiler-grpc` | +| `libgrpc++-dev` | +| `golang-github-containerd-containerd-dev` | +| `golang-github-gogo-protobuf-dev` | + +#### Fedora, Red Hat Enterprise Linux, ... +| Build Dependencies | Runtime | +|:------------------------:|:----------------:| +| `libcurl-devel` | `curl` | +| `protobuf-compiler` | `protobuf` | +| `protobuf-devel` | `grpc-cpp` | +| `grpc-plugins` | +| `grpc-devel` | +| `containerd-devel` | + + +#### Configuring the build for the ContainerInfo plugin +The configure script defaults to building the ContainerInfo when all the needed dependencies are available. ContainerInfo will not be built if there are missing dependencies. Invoke the configure script with `--enable-containerinfo=no` to explicitly inhibit building the plugin. +``` +./configure --enable-containerinfo=no +``` +If the configure script is given the option `--enable-containerinfo=yes` and any necessary dependency is not available, the configure script will terminate with an error. +``` +./configure --enable-containerinfo=yes +``` + + + +## Internationalization + +Open-vm-tools 12.0.0 is available in the following languages: + +* English +* French +* German +* Spanish +* Italian +* Japanese +* Korean +* Simplified Chinese +* Traditional Chinese + +## End of Feature Support Notice + +* The tar tools (linux.iso) and OSPs shipped with VMware Tools 10.3.x release will continue to be supported. However, releases after VMware Tools 10.3.5 will only include critical and security fixes. No new feature support will be provided in these types of VMware Tools (tar tools and OSP's). It is recommended that customers use open-vm-tools for those operating systems that support open-vm-tools. For more information about open-vm-tools, see [https://kb.vmware.com/s/article/2073803](https://kb.vmware.com/s/article/2073803). + +## Guest Operating System Customization Support + +The [Guest OS Customization Support Matrix](http://partnerweb.vmware.com/programs/guestOS/guest-os-customization-matrix.pdf) provides details about the guest operating systems supported for customization. + +## Interoperability Matrix + +The [VMware Product Interoperability Matrix](http://partnerweb.vmware.com/comp_guide2/sim/interop_matrix.php) provides details about the compatibility of current and earlier versions of VMware Products. + +## Resolved Issues + +* **Open-vm-tools can be built with either libfuse2 or libfuse3.** + + The open-vm-tools source has been updated to work with either the Fuse 2.x or Fuse 3.x software versions. The `configure.ac` file has been modified to accept the following options which allow users to specify which version to use. While the auto-options allow experimentation, select a specific version of fuse when building packages for distribution. + + | Option | | + |:--------------|:-----------------------| + | **--without-fuse** | vmblock-fuse and vmhgfs-fuse will be disabled| + | **--with-fuse=fuse3\|3** | use Fuse 3.x | + | **--with-fuse=fuse\|2** | use Fuse 2.x | + | **--with-fuse=auto** | check for Fuse 3 or Fuse 2 availability; disable vmblock-fuse and vmhgfs-fuse if unavailable | + | **--with-fuse** | implicit "yes" | + | **--with-fuse=yes** | check for Fuse 3 or Fuse 2 availability; disable vmblock-fuse and vmhgfs-fuse if unavailable | + +* A number of Coverity and Codacy reported issues have been addressed. + +* **The following issues and pull requests reported on [github.com/vmware/open-vm-tools](https://github.com/vmware/open-vm-tools) have been addressed:** + + - [Issue # 128](https://github.com/vmware/open-vm-tools/issues/128) + - [Issue # 314](https://github.com/vmware/open-vm-tools/issues/314) + - [Pull # 513](https://github.com/vmware/open-vm-tools/pull/513) + - [Pull # 544](https://github.com/vmware/open-vm-tools/pull/544) + - [Pull # 573](https://github.com/vmware/open-vm-tools/pull/573) + +* **A complete list of the granular changes that are in the open-vm-tools 11.3.0 release is available at:** + + [Open-vm-tools ChangeLog](https://github.com/vmware/open-vm-tools/blob/stable-12.0.0/open-vm-tools/ChangeLog) + +## Known Issues + +The known issues are grouped as follows. + +* [Open-vm-tools Issues](#vmware-tools-issues-known) +* [Open-vm-tools Issues in VMware Workstation or Fusion](#vmware-tools-issues-in-vmware-workstation-or-fusion-known) + +**Open-vm-tools Issues** + +* **[FTBFS] glibc 2.35 and GCC 11 & 12 reporting possible array bounds overflow - bora/lib/asyncsocket/asyncksocket.c: AsyncTCPSocketPollWork()** + + Reported in [open-vm-tools issue #570](https://github.com/vmware/open-vm-tools/issues/570), the fix did not make the code freeze date. The fix is available in the open-vm-tools "devel" branch at [commit de6d129](https://github.com/vmware/open-vm-tools/commit/de6d129476724668b8903e2a87654f50ba21b1b2) and can be applied directly to the 12.0.0, 11.3.5 and 11.3.0 open-vm-tools sources. + + The fix will be in the next open-vm-tools source release. + +**Open-vm-tools Issues in VMware Workstation or Fusion** + +* **Shared Folders mount is unavailable on Linux VM.** + + If the **Shared Folders** feature is enabled on a Linux VM while it is powered off, the shared folders mount is not available on restart. + + Workaround: + + If the VM is powered on, disable and enable the **Shared Folders** feature from the interface. For resolving the issue permanently, edit **/etc/fstab** and add an entry to mount the Shared Folders automatically on boot. For example, add the line: + + vmhgfs-fuse /mnt/hgfs fuse defaults,allow_other 0 0 +