Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2ba79de0c5 | ||
|
|
c060e2c4ce | ||
|
|
62b01f21f7 | ||
|
|
b4d65e549e | ||
|
|
f42e7a3eeb | ||
|
|
430bd3e323 | ||
|
|
eebd715455 | ||
|
|
3900860634 | ||
|
|
7f1a95392f | ||
|
|
1fe88517ca | ||
|
|
4e92311606 | ||
|
|
47983006c0 | ||
|
|
b1a4209926 |
@@ -1,2 +1,223 @@
|
|||||||
# vjailbreak-docs
|
<div align="center">
|
||||||
Helping VMware users migrate to alternative Hypervisors
|
|
||||||
|
# vJailbreak
|
||||||
|
|
||||||
|
A free tool that simplifies the migration of virtual machines from VMware to any OpenStack-compliant cloud.
|
||||||
|
|
||||||
|
[](https://github.com/platform9/vjailbreak/actions/workflows/packer.yml)
|
||||||
|
[](https://github.com/platform9/vjailbreak/actions/workflows/golangci-lint.yaml)
|
||||||
|
|
||||||
|
[](https://github.com/platform9/vjailbreak/releases/latest)
|
||||||
|
[](https://github.com/platform9/vjailbreak/releases)
|
||||||
|
[](https://github.com/platform9/vjailbreak/stargazers)
|
||||||
|
[](https://github.com/platform9/vjailbreak/network/members)
|
||||||
|
|
||||||
|
[](https://deepwiki.com/platform9/vjailbreak)
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
vJailbreak is a powerful migration tool designed to seamlessly transfer virtual machines from VMware environments to any OpenStack-compliant cloud platform. The project aims to simplify the complex process of VM migration while ensuring compatibility and performance in the target environment.
|
||||||
|
|
||||||
|
### Key Features
|
||||||
|
|
||||||
|
- **VMware Integration**: Connect directly to vCenter to access and discover source VMs
|
||||||
|
|
||||||
|
- **Automated VM Conversion**: Convert VM disks from `vmdk` to `qcow2` format and prepare for OpenStack environment
|
||||||
|
|
||||||
|
- **OpenStack Integration**: Direct deployment to any OpenStack-compliant cloud with network and storage mapping
|
||||||
|
|
||||||
|
- **Flexible Migration Options**: Support for both hot and cold migrations with customizable scheduling
|
||||||
|
|
||||||
|
- **Rolling Conversion**: Staged migration process that minimizes downtime and resource usage
|
||||||
|
|
||||||
|
- **Advanced Migration Options**: Customizable migration parameters including network configuration, resource allocation, and storage mappings
|
||||||
|
|
||||||
|
- **Health Verification**: Post-migration health checks to ensure successful migration
|
||||||
|
|
||||||
|
- **Scalable Architecture**: Scale up or down migration agents based on workload
|
||||||
|
|
||||||
|
- **Enhanced Security**: Secure handling of credentials and data throughout the migration process
|
||||||
|
|
||||||
|
## Documentation
|
||||||
|
|
||||||
|
Comprehensive documentation for vJailbreak is available on our documentation site:
|
||||||
|
|
||||||
|
[📚 vJailbreak Documentation](https://platform9.github.io/vjailbreak/introduction/getting_started/)
|
||||||
|
|
||||||
|
## Demonstration
|
||||||
|
|
||||||
|
### Video Overview
|
||||||
|
|
||||||
|
Click the image below to watch a demonstration of vJailbreak in action:
|
||||||
|
|
||||||
|
[](https://www.youtube.com/watch?v=seThilJ5ujM)
|
||||||
|
|
||||||
|
## Screenshots
|
||||||
|
|
||||||
|
### Migration Setup
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Click to view migration setup screenshots</summary>
|
||||||
|
|
||||||
|
#### Migration Form (Step 1)
|
||||||
|

|
||||||
|
|
||||||
|
#### Migration Form (Step 2)
|
||||||
|

|
||||||
|
</details>
|
||||||
|
|
||||||
|
### Migration Progress
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Click to view migration progress screenshots</summary>
|
||||||
|
|
||||||
|
#### Progress View (Stage 1)
|
||||||
|

|
||||||
|
|
||||||
|
#### Progress View (Stage 2)
|
||||||
|

|
||||||
|
</details>
|
||||||
|
|
||||||
|
### Agent Scaling
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Click to view agent scaling screenshots</summary>
|
||||||
|
|
||||||
|
#### Scaling Up
|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
|
#### Scaling Down
|
||||||
|

|
||||||
|
</details>
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
This project is available under the [Business Source License 1.1](LICENSE). See the LICENSE file for full details.
|
||||||
|
|
||||||
|
Key points from the license:
|
||||||
|
- Licensor: Platform9 Systems, Inc.
|
||||||
|
- Licensed Work: All versions of vJailbreak (c) 2024 Platform9 Systems, Inc.
|
||||||
|
- Change Date: Four years from the date the Licensed Work is published
|
||||||
|
- Change License: MPL 2.0
|
||||||
|
|
||||||
|
For information about alternative licensing arrangements, contact info@platform9.com.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
### Prerequisites
|
||||||
|
|
||||||
|
- **VMware Environment**:
|
||||||
|
- VMware vCenter with appropriate permissions
|
||||||
|
- vSphere environment accessible to vJailbreak
|
||||||
|
|
||||||
|
- **OpenStack Environment**:
|
||||||
|
- OpenStack-compliant cloud target
|
||||||
|
- Network and storage access
|
||||||
|
|
||||||
|
- **Network Connectivity**:
|
||||||
|
- Access to vCenter, ESXi, and OpenStack API endpoints
|
||||||
|
- Access to download virtio drivers and other components
|
||||||
|
- ICMP (ping) access for connectivity verification
|
||||||
|
- **DNS Resolution**: Ensure that DNS resolution for vCenter, all ESXi hosts and OpenStack endpoints is properly configured. DNS for ESXi hosts is specifically required during the VM copy phase and migration may fail without it.
|
||||||
|
|
||||||
|
- **Supported OS**:
|
||||||
|
- All operating systems supported by virt-v2v
|
||||||
|
- See [virt-v2v support page](https://libguestfs.org/virt-v2v-support.1.html) for details
|
||||||
|
|
||||||
|
> **Note:** For an extensive and detailed list of all prerequisites, including network ports, access requirements, and FAQ, please refer to the [Prerequisites documentation](https://platform9.github.io/vjailbreak/introduction/prerequisites/).
|
||||||
|
|
||||||
|
### Quick Start
|
||||||
|
|
||||||
|
1. **Install ORAS and download vJailbreak**:
|
||||||
|
```bash
|
||||||
|
# Install ORAS (see https://oras.land/docs/installation)
|
||||||
|
|
||||||
|
# Download the latest vJailbreak image
|
||||||
|
oras pull quay.io/platform9/vjailbreak:<tag>
|
||||||
|
# This downloads the image to vjailbreak_qcow2/vjailbreak-image.qcow2
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Upload image and create vJailbreak VM**:
|
||||||
|
```bash
|
||||||
|
# Upload the image to your OpenStack environment
|
||||||
|
openstack image create --os-interface admin --insecure \
|
||||||
|
--container-format bare --disk-format qcow2 \
|
||||||
|
--file vjailbreak_qcow2/vjailbreak-image.qcow2 vjailbreak-image
|
||||||
|
|
||||||
|
# Deploy a VM from this image (use UI or CLI)
|
||||||
|
# - Choose m1.xlarge flavor (or larger for large VM migrations)
|
||||||
|
# - Select a network that can reach your VMware vCenter
|
||||||
|
# - Configure security group to allow required traffic
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Copy VDDK Libraries (Standard Copy method only)**:
|
||||||
|
- VDDK is required only if you plan to use the **Standard** storage copy method. As of
|
||||||
|
**v0.4.10**, vJailbreak defaults to **vJailbreak Accelerated Copy**. Along with
|
||||||
|
**Storage-Accelerated Copy**, it does not require VDDK at all. Skip this step unless you
|
||||||
|
specifically need Standard copy.
|
||||||
|
- Download [VDDK libraries](https://developer.broadcom.com/sdks/vmware-virtual-disk-development-kit-vddk/)
|
||||||
|
- Copy to `/home/ubuntu` on the vJailbreak VM
|
||||||
|
- Untar to create `vmware-vix-disklib-distrib` in `/home/ubuntu`
|
||||||
|
- See [vJailbreak Accelerated Copy](https://platform9.github.io/vjailbreak/concepts/vjailbreak-accelerated-copy/) and [Storage-Accelerated Copy](https://platform9.github.io/vjailbreak/concepts/storage-accelerated-copy/) for VDDK-free migration options
|
||||||
|
|
||||||
|
4. **Configure DNS Resolution**:
|
||||||
|
- Proper DNS resolution for your VMware and OpenStack URLs is required for vJailbreak to function correctly
|
||||||
|
|
||||||
|
- **Static Entries**: Adding entries to `/etc/hosts` will apply changes immediately
|
||||||
|
```bash
|
||||||
|
# Example /etc/hosts entry
|
||||||
|
192.168.1.100 vcenter.example.com
|
||||||
|
192.168.2.100 openstack.example.com
|
||||||
|
|
||||||
|
# ESXi hosts entries (required for VM copy phase)
|
||||||
|
192.168.1.101 esxi01.example.com esxi01
|
||||||
|
192.168.1.102 esxi02.example.com esxi02
|
||||||
|
```
|
||||||
|
|
||||||
|
- **DNS Configuration**: If modifying `/etc/resolv.conf`, you must restart the controller pod for changes to take effect
|
||||||
|
```bash
|
||||||
|
# After modifying resolv.conf
|
||||||
|
kubectl -n vjailbreak rollout restart deployment migration-controller-manager
|
||||||
|
```
|
||||||
|
|
||||||
|
5. **Launch vJailbreak**:
|
||||||
|
- Connect to the vJailbreak UI using the VM's IP address
|
||||||
|
- Provide VMware vCenter and OpenStack credentials
|
||||||
|
- Begin migrating VMs
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
Refer to the [documentation](https://platform9.github.io/vjailbreak/introduction/getting_started/) for detailed usage instructions.
|
||||||
|
|
||||||
|
## Community and Support
|
||||||
|
|
||||||
|
- **GitHub Issues**: For bug reports and feature requests
|
||||||
|
- **Documentation**: [Complete vJailbreak Documentation](https://platform9.github.io/vjailbreak/)
|
||||||
|
- **Reddit Community**: Join our [r/vjailbreak](https://www.reddit.com/r/vjailbreak/) subreddit
|
||||||
|
- **Commercial Support**: For enterprise support, contact [Platform9](https://platform9.com/)
|
||||||
|
|
||||||
|
## Acknowledgements
|
||||||
|
|
||||||
|
vJailbreak builds upon several open-source technologies:
|
||||||
|
|
||||||
|
- [virt-v2v](https://github.com/virt-manager/virt-manager)
|
||||||
|
- [nbdkit](https://gitlab.com/nbdkit/nbdkit)
|
||||||
|
- [k3s](https://k3s.io/)
|
||||||
|
- [OpenStack](https://www.openstack.org/)
|
||||||
|
- [govmomi](https://github.com/vmware/govmomi)
|
||||||
|
- [virtio-win](https://github.com/virtio-win/kvm-guest-drivers-windows)
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
|
||||||
|
Contributions to vJailbreak are welcome! Please feel free to submit issues and pull requests.
|
||||||
|
|
||||||
|
1. Fork the repository
|
||||||
|
2. Create your feature branch (`git checkout -b feature/amazing-feature`)
|
||||||
|
3. Commit your changes (`git commit -m 'Add some amazing feature'`)
|
||||||
|
4. Push to the branch (`git push origin feature/amazing-feature`)
|
||||||
|
5. Open a Pull Request
|
||||||
|
|
||||||
|
Please ensure your code follows the project's coding standards and includes appropriate tests.
|
||||||
|
|||||||
+1713
-25
File diff suppressed because it is too large
Load Diff
@@ -20,6 +20,19 @@ spec:
|
|||||||
imagePullPolicy: IfNotPresent
|
imagePullPolicy: IfNotPresent
|
||||||
ports:
|
ports:
|
||||||
- containerPort: 80
|
- containerPort: 80
|
||||||
|
envFrom:
|
||||||
|
- configMapRef:
|
||||||
|
name: pf9-env
|
||||||
|
optional: true
|
||||||
|
volumeMounts:
|
||||||
|
- name: pf9-logs
|
||||||
|
mountPath: /var/log/pf9
|
||||||
|
readOnly: true
|
||||||
|
volumes:
|
||||||
|
- name: pf9-logs
|
||||||
|
hostPath:
|
||||||
|
path: /var/log/pf9
|
||||||
|
type: DirectoryOrCreate
|
||||||
|
|
||||||
---
|
---
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
@@ -45,6 +58,12 @@ metadata:
|
|||||||
nginx.ingress.kubernetes.io/backend-protocol: "HTTP"
|
nginx.ingress.kubernetes.io/backend-protocol: "HTTP"
|
||||||
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
|
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
|
||||||
nginx.ingress.kubernetes.io/ssl-redirect: "true"
|
nginx.ingress.kubernetes.io/ssl-redirect: "true"
|
||||||
|
nginx.ingress.kubernetes.io/proxy-body-size: "500m"
|
||||||
|
nginx.ingress.kubernetes.io/proxy-connect-timeout: "600"
|
||||||
|
nginx.ingress.kubernetes.io/proxy-send-timeout: "600"
|
||||||
|
nginx.ingress.kubernetes.io/proxy-read-timeout: "600"
|
||||||
|
nginx.ingress.kubernetes.io/proxy-buffering: "off"
|
||||||
|
nginx.ingress.kubernetes.io/proxy-request-buffering: "off"
|
||||||
spec:
|
spec:
|
||||||
ingressClassName: nginx
|
ingressClassName: nginx
|
||||||
rules:
|
rules:
|
||||||
|
|||||||
@@ -0,0 +1,110 @@
|
|||||||
|
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/managed-by: kustomize
|
||||||
|
app.kubernetes.io/name: migration
|
||||||
|
control-plane: controller-manager
|
||||||
|
name: migration-controller-manager
|
||||||
|
namespace: migration-system
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
control-plane: controller-manager
|
||||||
|
strategy:
|
||||||
|
type: Recreate
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
kubectl.kubernetes.io/default-container: manager
|
||||||
|
labels:
|
||||||
|
control-plane: controller-manager
|
||||||
|
spec:
|
||||||
|
affinity:
|
||||||
|
nodeAffinity:
|
||||||
|
requiredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
nodeSelectorTerms:
|
||||||
|
- matchExpressions:
|
||||||
|
- key: node-role.kubernetes.io/control-plane
|
||||||
|
operator: Exists
|
||||||
|
containers:
|
||||||
|
- args:
|
||||||
|
- --leader-elect=false
|
||||||
|
- --health-probe-bind-address=:8081
|
||||||
|
command:
|
||||||
|
- /manager
|
||||||
|
env:
|
||||||
|
- name: MAX_CONCURRENT_RECONCILES
|
||||||
|
value: "5"
|
||||||
|
envFrom:
|
||||||
|
- configMapRef:
|
||||||
|
name: pf9-env
|
||||||
|
optional: true
|
||||||
|
image: quay.io/platform9/vjailbreak-controller:v0.4.10
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
lifecycle:
|
||||||
|
preStop:
|
||||||
|
exec:
|
||||||
|
command:
|
||||||
|
- /bin/sh
|
||||||
|
- -c
|
||||||
|
- sleep 5
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /healthz
|
||||||
|
port: 8081
|
||||||
|
initialDelaySeconds: 15
|
||||||
|
periodSeconds: 20
|
||||||
|
name: manager
|
||||||
|
readinessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /readyz
|
||||||
|
port: 8081
|
||||||
|
initialDelaySeconds: 5
|
||||||
|
periodSeconds: 10
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: 200m
|
||||||
|
memory: 256Mi
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /etc/pf9/k3s
|
||||||
|
name: master-token
|
||||||
|
- mountPath: /home/ubuntu
|
||||||
|
name: vddk
|
||||||
|
- mountPath: /etc/hosts
|
||||||
|
name: hosts-file
|
||||||
|
readOnly: true
|
||||||
|
- mountPath: /host/dmi/product_uuid
|
||||||
|
name: dmi-product-uuid
|
||||||
|
readOnly: true
|
||||||
|
dnsConfig:
|
||||||
|
options:
|
||||||
|
- name: ndots
|
||||||
|
value: "1"
|
||||||
|
dnsPolicy: ClusterFirstWithHostNet
|
||||||
|
hostNetwork: true
|
||||||
|
securityContext:
|
||||||
|
runAsGroup: 0
|
||||||
|
runAsUser: 0
|
||||||
|
serviceAccountName: migration-controller-manager
|
||||||
|
terminationGracePeriodSeconds: 30
|
||||||
|
volumes:
|
||||||
|
- hostPath:
|
||||||
|
path: /var/lib/rancher/k3s/server
|
||||||
|
type: Directory
|
||||||
|
name: master-token
|
||||||
|
- hostPath:
|
||||||
|
path: /home/ubuntu
|
||||||
|
type: Directory
|
||||||
|
name: vddk
|
||||||
|
- hostPath:
|
||||||
|
path: /etc/hosts
|
||||||
|
type: File
|
||||||
|
name: hosts-file
|
||||||
|
- hostPath:
|
||||||
|
path: /sys/class/dmi/id/product_uuid
|
||||||
|
type: File
|
||||||
|
name: dmi-product-uuid
|
||||||
|
---
|
||||||
@@ -0,0 +1,117 @@
|
|||||||
|
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: vpwned-sdk
|
||||||
|
name: migration-vpwned-sdk
|
||||||
|
namespace: migration-system
|
||||||
|
spec:
|
||||||
|
progressDeadlineSeconds: 600
|
||||||
|
replicas: 1
|
||||||
|
revisionHistoryLimit: 10
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: vpwned-sdk
|
||||||
|
strategy:
|
||||||
|
rollingUpdate:
|
||||||
|
maxSurge: 25%
|
||||||
|
maxUnavailable: 25%
|
||||||
|
type: RollingUpdate
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
container.apparmor.security.beta.kubernetes.io/vpwned: unconfined
|
||||||
|
labels:
|
||||||
|
app: vpwned-sdk
|
||||||
|
spec:
|
||||||
|
affinity:
|
||||||
|
nodeAffinity:
|
||||||
|
requiredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
nodeSelectorTerms:
|
||||||
|
- matchExpressions:
|
||||||
|
- key: node-role.kubernetes.io/control-plane
|
||||||
|
operator: Exists
|
||||||
|
containers:
|
||||||
|
- env:
|
||||||
|
- name: DBUS_SYSTEM_BUS_ADDRESS
|
||||||
|
value: unix:path=/run/dbus/system_bus_socket
|
||||||
|
envFrom:
|
||||||
|
- configMapRef:
|
||||||
|
name: pf9-env
|
||||||
|
optional: true
|
||||||
|
image: quay.io/platform9/vjailbreak-vpwned:v0.4.10
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
name: vpwned
|
||||||
|
ports:
|
||||||
|
- containerPort: 3001
|
||||||
|
protocol: TCP
|
||||||
|
resources: {}
|
||||||
|
securityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
add:
|
||||||
|
- DAC_OVERRIDE
|
||||||
|
drop:
|
||||||
|
- ALL
|
||||||
|
runAsUser: 0
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /etc/hosts
|
||||||
|
name: hosts-file
|
||||||
|
readOnly: true
|
||||||
|
- mountPath: /home/ubuntu
|
||||||
|
name: vddk-storage
|
||||||
|
- mountPath: /run/dbus/system_bus_socket
|
||||||
|
name: dbus-socket
|
||||||
|
- mountPath: /etc/systemd/timesyncd.conf.d
|
||||||
|
name: timesyncd-conf-dir
|
||||||
|
- mountPath: /usr/share/zoneinfo
|
||||||
|
name: host-zoneinfo
|
||||||
|
readOnly: true
|
||||||
|
- mountPath: /etc/pf9
|
||||||
|
name: pf9-config
|
||||||
|
- mountPath: /var/log/pf9
|
||||||
|
name: pf9-logs
|
||||||
|
readOnly: true
|
||||||
|
dnsConfig:
|
||||||
|
options:
|
||||||
|
- name: ndots
|
||||||
|
value: "1"
|
||||||
|
dnsPolicy: ClusterFirst
|
||||||
|
restartPolicy: Always
|
||||||
|
schedulerName: default-scheduler
|
||||||
|
securityContext: {}
|
||||||
|
serviceAccountName: migration-controller-manager
|
||||||
|
terminationGracePeriodSeconds: 30
|
||||||
|
volumes:
|
||||||
|
- hostPath:
|
||||||
|
path: /etc/hosts
|
||||||
|
type: File
|
||||||
|
name: hosts-file
|
||||||
|
- hostPath:
|
||||||
|
path: /home/ubuntu
|
||||||
|
type: DirectoryOrCreate
|
||||||
|
name: vddk-storage
|
||||||
|
- hostPath:
|
||||||
|
path: /run/dbus/system_bus_socket
|
||||||
|
type: Socket
|
||||||
|
name: dbus-socket
|
||||||
|
- hostPath:
|
||||||
|
path: /etc/systemd/timesyncd.conf.d
|
||||||
|
type: DirectoryOrCreate
|
||||||
|
name: timesyncd-conf-dir
|
||||||
|
- hostPath:
|
||||||
|
path: /usr/share/zoneinfo
|
||||||
|
type: Directory
|
||||||
|
name: host-zoneinfo
|
||||||
|
- hostPath:
|
||||||
|
path: /etc/pf9
|
||||||
|
type: Directory
|
||||||
|
name: pf9-config
|
||||||
|
- hostPath:
|
||||||
|
path: /var/log/pf9
|
||||||
|
type: DirectoryOrCreate
|
||||||
|
name: pf9-logs
|
||||||
|
---
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: vjailbreak-ui
|
||||||
|
namespace: migration-system
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: vjailbreak-ui
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: vjailbreak-ui
|
||||||
|
spec:
|
||||||
|
affinity:
|
||||||
|
nodeAffinity:
|
||||||
|
requiredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
nodeSelectorTerms:
|
||||||
|
- matchExpressions:
|
||||||
|
- key: node-role.kubernetes.io/control-plane
|
||||||
|
operator: Exists
|
||||||
|
serviceAccountName: ui-manager-sa
|
||||||
|
containers:
|
||||||
|
- name: vjailbreak-ui-container
|
||||||
|
image: quay.io/platform9/vjailbreak-ui:v0.4.10
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
ports:
|
||||||
|
- containerPort: 80
|
||||||
|
envFrom:
|
||||||
|
- configMapRef:
|
||||||
|
name: pf9-env
|
||||||
|
optional: true
|
||||||
|
volumeMounts:
|
||||||
|
- name: nginx-shadow-htpasswd
|
||||||
|
mountPath: /etc/nginx/shadow
|
||||||
|
volumes:
|
||||||
|
- name: nginx-shadow-htpasswd
|
||||||
|
hostPath:
|
||||||
|
path: /etc/htpasswd
|
||||||
|
type: FileOrCreate
|
||||||
|
---
|
||||||
@@ -0,0 +1,70 @@
|
|||||||
|
|
||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: vjailbreak-ai-data
|
||||||
|
namespace: migration-system
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 2Gi
|
||||||
|
---
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: vjailbreak-ai
|
||||||
|
namespace: migration-system
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: vjailbreak-ai
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: vjailbreak-ai
|
||||||
|
spec:
|
||||||
|
affinity:
|
||||||
|
nodeAffinity:
|
||||||
|
requiredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
nodeSelectorTerms:
|
||||||
|
- matchExpressions:
|
||||||
|
- key: node-role.kubernetes.io/control-plane
|
||||||
|
operator: Exists
|
||||||
|
serviceAccountName: vjailbreak-ai-sa
|
||||||
|
containers:
|
||||||
|
- name: vjailbreak-ai
|
||||||
|
image: quay.io/platform9/vjailbreak-ai:v0.4.10
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
ports:
|
||||||
|
- containerPort: 8080
|
||||||
|
env:
|
||||||
|
- name: ANTHROPIC_API_KEY
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: vjailbreak-ai-secret
|
||||||
|
key: api-key
|
||||||
|
optional: true
|
||||||
|
- name: CHROMA_PATH
|
||||||
|
value: /data/chroma
|
||||||
|
- name: CONTEXT_PATH
|
||||||
|
value: /data/context.md
|
||||||
|
- name: ALLOWED_ORIGINS
|
||||||
|
value: "http://vjailbreak-ui-service.migration-system.svc.cluster.local"
|
||||||
|
volumeMounts:
|
||||||
|
- name: ai-data
|
||||||
|
mountPath: /data
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
memory: "256Mi"
|
||||||
|
cpu: "100m"
|
||||||
|
limits:
|
||||||
|
memory: "1Gi"
|
||||||
|
cpu: "500m"
|
||||||
|
volumes:
|
||||||
|
- name: ai-data
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: vjailbreak-ai-data
|
||||||
|
---
|
||||||
+1902
-28
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,75 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: vjailbreak-ai-context
|
||||||
|
namespace: migration-system
|
||||||
|
data:
|
||||||
|
additional_context: |
|
||||||
|
## vJailbreak Architecture
|
||||||
|
|
||||||
|
vJailbreak migrates VMware VMs to OpenStack in this sequence:
|
||||||
|
1. Controller creates a v2v-helper pod per migration
|
||||||
|
2. v2v-helper runs virt-v2v with the nbdkit+VDDK plugin to stream VMDK data
|
||||||
|
3. Converted disk is uploaded to OpenStack Glance as QCOW2 (or written to a Cinder volume via RAW)
|
||||||
|
4. Nova boots the migrated VM using the uploaded image or volume
|
||||||
|
|
||||||
|
Key components:
|
||||||
|
- **migration-controller-manager** — Kubernetes controller in `migration-system` namespace; reconciles Migration CRs
|
||||||
|
- **v2v-helper pod** — named `<migration-name>` in `migration-system`; runs virt-v2v; one pod per Migration
|
||||||
|
- **VDDK** — VMware Virtual Disk Development Kit at `/home/ubuntu/vmware-vix-disklib-distrib/` on the vJailbreak VM
|
||||||
|
- **Conversion scratch space** — `emptyDir` at `/var/tmp/v2v-conversion-disks/` inside v2v-helper pod (~2× VM disk size required)
|
||||||
|
- **storageCopyMethod** — `hot` (live/CBT incremental) or `cold` (offline full-copy); set in MigrationTemplate
|
||||||
|
|
||||||
|
CRD hierarchy: Migration → MigrationPlan → MigrationTemplate → NetworkMapping + StorageMapping
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Common Failure Patterns and Fixes
|
||||||
|
|
||||||
|
### VDDK / VMware Connectivity
|
||||||
|
| Symptom | Likely Cause | Fix |
|
||||||
|
|---------|-------------|-----|
|
||||||
|
| `VixDiskLib_Open failed` / `Transport error` | VDDK library missing or wrong version | Verify `/home/ubuntu/vmware-vix-disklib-distrib/` exists; VDDK 7.0+ required |
|
||||||
|
| `Failed to connect to host <esxi-fqdn>` | ESXi hostname not resolving in pod | Add ESXi host entries to `/etc/hosts` on vJailbreak VM, then restart controller |
|
||||||
|
| `SSL certificate verify failed` | vCenter TLS cert untrusted | Set `InsecureSkipVerify: true` in VMwareCreds or add cert to trust store |
|
||||||
|
| `NoPermission` / `NotAuthenticated` | Insufficient vCenter permissions | Account needs Datastore.Browse, VirtualMachine.Provisioning.DiskRandomRead, Global.DisableMethods |
|
||||||
|
| `CBT not enabled` / `queryChangedDiskAreas` error | Changed Block Tracking disabled on source VM | Enable CBT in vCenter VM settings, create a snapshot, then retry |
|
||||||
|
|
||||||
|
### virt-v2v / Conversion
|
||||||
|
| Symptom | Likely Cause | Fix |
|
||||||
|
|---------|-------------|-----|
|
||||||
|
| `No space left on device` | Node disk exhausted during conversion | Ensure node has ≥2× VM disk size free in `/var/tmp`; check `df -h` on vJailbreak VM |
|
||||||
|
| `libguestfs: error: could not create appliance` | libguestfs kernel/QEMU unavailable in pod | Check pod for missing KVM device; vJailbreak VM must have nested virt or bare-metal KVM |
|
||||||
|
| `Failed to locate virtio drivers` / `virtio-win` | virtio-win ISO not found | Confirm virtio-win ISO is present at the expected path in the v2v-helper image |
|
||||||
|
| `qemu-img: Could not open` / `corrupt` | VMDK corrupt or CBT snapshot stale | Remove stale snapshots in vCenter; try `storageCopyMethod: cold` |
|
||||||
|
| `virt-v2v: error: inspection of disk image failed` | Unsupported guest OS | Check virt-v2v support page; Windows requires virtio-win, Linux needs grub accessible |
|
||||||
|
| Conversion stuck / timeout | Very large VM or slow storage | Increase `migrationTimeout` in MigrationPlan; check network throughput between vJailbreak and ESXi |
|
||||||
|
|
||||||
|
### OpenStack Upload / Deploy
|
||||||
|
| Symptom | Likely Cause | Fix |
|
||||||
|
|---------|-------------|-----|
|
||||||
|
| `No valid host found` | Flavor constraints or resource exhaustion | Verify flavor exists and Nova has capacity; check `openstack flavor list` |
|
||||||
|
| `Quota exceeded` | OpenStack project quota hit | Check `openstack quota show` for instances, cores, RAM, volumes, gigabytes |
|
||||||
|
| `Network <name> could not be found` | NetworkMapping source or target name mismatch | Verify NetworkMapping.Spec matches exact OpenStack network names |
|
||||||
|
| `VolumeType <name> not found` | StorageMapping mismatch | Verify StorageMapping.Spec matches exact Cinder volume type names; case-sensitive |
|
||||||
|
| `Provided image is too large` | Glance upload size limit | Increase `glance-api.conf image_size_cap`; or use `storageCopyMethod: raw-volume` to bypass Glance |
|
||||||
|
| `ImageNotFound` during Nova boot | Glance upload failed or image in error state | Check `openstack image list`; look for image in `killed` or `queued` state |
|
||||||
|
|
||||||
|
### Kubernetes / Controller
|
||||||
|
| Symptom | Likely Cause | Fix |
|
||||||
|
|---------|-------------|-----|
|
||||||
|
| Pod `OOMKilled` | Insufficient memory for conversion | Large Windows VMs need 4–8 GB; increase v2v-helper memory limit in MigrationPlan |
|
||||||
|
| Pod stuck in `Pending` | Node selector mismatch or node resource shortage | Check `kubectl describe pod <name>` for scheduling events |
|
||||||
|
| `context deadline exceeded` in controller | Migration timeout too short | Increase `migrationTimeout` in MigrationPlan spec |
|
||||||
|
| Migration stuck in `DataCopyStart` | NBD/VDDK stream stalled | Check v2v-helper logs for `nbdkit` errors; restart migration |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Analysis Guidelines
|
||||||
|
|
||||||
|
- **Always quote specific log lines** as evidence in `root_cause` — vague causes are not actionable
|
||||||
|
- **fix_steps** should be concrete shell commands or UI steps, not generic advice
|
||||||
|
- Check `storageCopyMethod` (`hot` vs `cold`) — hot migrations have extra pre-copy phases that can fail
|
||||||
|
- If `phase` is `Failed` but logs are empty, check controller logs for reconcile errors mentioning the Migration name
|
||||||
|
- Network and storage mapping errors almost always have the exact mismatched name in the log — quote it
|
||||||
|
- If confidence is `low` or `none`, list the specific information that would be needed to diagnose further
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: vjailbreak-ai-context
|
||||||
|
namespace: migration-system
|
||||||
|
data:
|
||||||
|
# Operator-provided context injected into every AI analysis prompt.
|
||||||
|
# Edit the value below to add site-specific information.
|
||||||
|
# Examples:
|
||||||
|
# - Custom VDDK install path
|
||||||
|
# - Known ESXi certificate issues in this environment
|
||||||
|
# - Network restrictions that affect migrations
|
||||||
|
# - OpenStack volume type mappings in use
|
||||||
|
additional_context: |
|
||||||
|
# Add operator-specific notes here.
|
||||||
|
# Example:
|
||||||
|
# VDDK is installed at /opt/vmware/vddk (non-standard path).
|
||||||
|
# All ESXi hosts use self-signed TLS certificates -- SSL errors are expected.
|
||||||
|
# OpenStack Cinder volume type "ssd" maps to VMware datastore "fast-ssd".
|
||||||
@@ -0,0 +1,72 @@
|
|||||||
|
# Prerequisites:
|
||||||
|
# Create the API key Secret via Settings → AI in the vJailbreak UI, or manually:
|
||||||
|
# kubectl -n migration-system create secret generic vjailbreak-ai-secret \
|
||||||
|
# --from-literal=api-key=<anthropic-api-key> \
|
||||||
|
# --from-literal=admin-key=<admin-key>
|
||||||
|
# The Deployment uses optional: true so it starts without the Secret,
|
||||||
|
# but AI analysis calls will fail until the key is configured.
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: vjailbreak-ai
|
||||||
|
namespace: migration-system
|
||||||
|
labels:
|
||||||
|
app: vjailbreak-ai
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: vjailbreak-ai
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: vjailbreak-ai
|
||||||
|
spec:
|
||||||
|
securityContext:
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 1001
|
||||||
|
fsGroup: 1001
|
||||||
|
containers:
|
||||||
|
- name: vjailbreak-ai
|
||||||
|
image: quay.io/platform9/vjailbreak-ai:main
|
||||||
|
ports:
|
||||||
|
- containerPort: 8080
|
||||||
|
env:
|
||||||
|
- name: ANTHROPIC_API_KEY
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: vjailbreak-ai-secret
|
||||||
|
key: api-key
|
||||||
|
optional: true # Secret must be created via Settings UI before AI analysis works
|
||||||
|
- name: ADMIN_API_KEY
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: vjailbreak-ai-secret
|
||||||
|
key: admin-key
|
||||||
|
optional: true
|
||||||
|
volumeMounts:
|
||||||
|
- name: chroma-data
|
||||||
|
mountPath: /data
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: 200m
|
||||||
|
memory: 512Mi
|
||||||
|
limits:
|
||||||
|
cpu: "1"
|
||||||
|
memory: 1Gi
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /health
|
||||||
|
port: 8080
|
||||||
|
initialDelaySeconds: 30
|
||||||
|
periodSeconds: 30
|
||||||
|
readinessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /health
|
||||||
|
port: 8080
|
||||||
|
initialDelaySeconds: 10
|
||||||
|
periodSeconds: 10
|
||||||
|
volumes:
|
||||||
|
- name: chroma-data
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: vjailbreak-ai-chroma
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: vjailbreak-ai-chroma
|
||||||
|
namespace: migration-system
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 2Gi
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: vjailbreak-ai
|
||||||
|
namespace: migration-system
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: vjailbreak-ai
|
||||||
|
ports:
|
||||||
|
- port: 8080
|
||||||
|
targetPort: 8080
|
||||||
|
type: ClusterIP
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
apiVersion: vjailbreak.k8s.pf9.io/v1alpha1
|
||||||
|
kind: VolumeImageProfile
|
||||||
|
metadata:
|
||||||
|
name: default-windows
|
||||||
|
namespace: migration-system
|
||||||
|
spec:
|
||||||
|
osFamily: windowsGuest
|
||||||
|
description: Default profile for Windows VMs
|
||||||
|
properties:
|
||||||
|
hw_qemu_guest_agent: "yes"
|
||||||
|
hw_video_model: virtio
|
||||||
|
hw_pointer_model: usbtablet
|
||||||
|
hw_disk_bus: virtio
|
||||||
|
os_type: windows
|
||||||
|
---
|
||||||
|
apiVersion: vjailbreak.k8s.pf9.io/v1alpha1
|
||||||
|
kind: VolumeImageProfile
|
||||||
|
metadata:
|
||||||
|
name: default-linux
|
||||||
|
namespace: migration-system
|
||||||
|
spec:
|
||||||
|
osFamily: linuxGuest
|
||||||
|
description: Default profile for Linux VMs
|
||||||
|
properties:
|
||||||
|
hw_qemu_guest_agent: "yes"
|
||||||
|
hw_video_model: virtio
|
||||||
|
hw_pointer_model: usbtablet
|
||||||
@@ -59,20 +59,55 @@ spec:
|
|||||||
- |
|
- |
|
||||||
IS_MASTER=$(grep -E '^export IS_MASTER=' /etc/pf9/k3s.env | cut -d'=' -f2)
|
IS_MASTER=$(grep -E '^export IS_MASTER=' /etc/pf9/k3s.env | cut -d'=' -f2)
|
||||||
MASTER_IP=$(grep -E '^export MASTER_IP=' /etc/pf9/k3s.env | cut -d'=' -f2)
|
MASTER_IP=$(grep -E '^export MASTER_IP=' /etc/pf9/k3s.env | cut -d'=' -f2)
|
||||||
|
|
||||||
|
# Migration considered idle if quiet for this long; only then is it eligible for cleanup.
|
||||||
|
ACTIVITY_WINDOW_MIN=60
|
||||||
|
# Delete threshold: older than 24h.
|
||||||
|
RETENTION_MTIME=+1
|
||||||
|
|
||||||
|
# Deletes migration-<vm>-<id>.log + migration-<vm>-<id>/ as one unit,
|
||||||
|
# skipping the pair if either was written to within ACTIVITY_WINDOW_MIN.
|
||||||
|
cleanup_dir() {
|
||||||
|
local base_dir="$1"
|
||||||
|
[ -d "$base_dir" ] || return 0
|
||||||
|
|
||||||
|
local names
|
||||||
|
names=$( { find "$base_dir" -maxdepth 1 -type f -name 'migration-*.log' -printf '%f\n' 2>/dev/null | sed 's/\.log$//'
|
||||||
|
find "$base_dir" -mindepth 1 -maxdepth 1 -type d -name 'migration-*' -printf '%f\n' 2>/dev/null
|
||||||
|
} | sort -u )
|
||||||
|
|
||||||
|
echo "$names" | while IFS= read -r name; do
|
||||||
|
[ -n "$name" ] || continue
|
||||||
|
local log_file="$base_dir/$name.log"
|
||||||
|
local dir="$base_dir/$name"
|
||||||
|
|
||||||
|
if find "$log_file" "$dir" -type f -mmin -"$ACTIVITY_WINDOW_MIN" 2>/dev/null | grep -q .; then
|
||||||
|
echo "[cleanup] Skipping $name (active within last ${ACTIVITY_WINDOW_MIN}m)"
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
[ -f "$log_file" ] && find "$log_file" -mtime "$RETENTION_MTIME" -delete 2>/dev/null
|
||||||
|
if [ -d "$dir" ]; then
|
||||||
|
find "$dir" -type f -mtime "$RETENTION_MTIME" -delete 2>/dev/null
|
||||||
|
rmdir "$dir" 2>/dev/null || true
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# Stray non-migration files: clean by age alone.
|
||||||
|
find "$base_dir" -maxdepth 1 -type f ! -name 'migration-*.log' -mtime "$RETENTION_MTIME" -delete 2>/dev/null || true
|
||||||
|
}
|
||||||
|
|
||||||
if [ "$IS_MASTER" = "true" ]; then
|
if [ "$IS_MASTER" = "true" ]; then
|
||||||
echo "Master node detected. IP: $MASTER_IP"
|
echo "Master node detected. IP: $MASTER_IP"
|
||||||
|
|
||||||
# Clean up logs older than 24 hours on master node
|
master_cleanup_loop() {
|
||||||
echo "Cleaning up logs older than 24 hours on master node"
|
while true; do
|
||||||
# Note: Not restarting services to avoid disruption
|
echo "Cleaning up logs older than 24 hours on master node ($(date))"
|
||||||
# Instead, properly closing files in the v2v-helper code
|
cleanup_dir /var/log/pf9
|
||||||
# Clean master's own logs and force delete any stuck files
|
sleep 300
|
||||||
find /var/log/pf9 -type f -mtime +1 -delete 2>/dev/null || true
|
done
|
||||||
# Clean worker logs stored on master and force delete any stuck files
|
}
|
||||||
find /var/lib/rsync/worker-logs -type f -mtime +1 -delete 2>/dev/null || true
|
master_cleanup_loop &
|
||||||
# Clear deleted but open files (useful when processes still hold file handles)
|
|
||||||
echo "Clearing deleted but open files..."
|
|
||||||
lsof +L1 | grep "/var/log/pf9\|/var/lib/rsync/worker-logs" | awk '{print $2}' | xargs -r kill -HUP 2>/dev/null || true
|
|
||||||
|
|
||||||
echo "Starting rsync daemon..."
|
echo "Starting rsync daemon..."
|
||||||
rsync --daemon --config=/etc/pf9/rsyncd.conf --no-detach
|
rsync --daemon --config=/etc/pf9/rsyncd.conf --no-detach
|
||||||
@@ -84,29 +119,24 @@ spec:
|
|||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
echo "Worker node detected. Syncing from Master..."
|
echo "Worker node detected. Syncing from Master..."
|
||||||
|
|
||||||
|
agent_cleanup_loop() {
|
||||||
|
while true; do
|
||||||
|
echo "Cleaning up logs older than 24 hours on worker node ($(date))"
|
||||||
|
cleanup_dir /var/log/pf9
|
||||||
|
sync
|
||||||
|
echo 3 > /proc/sys/vm/drop_caches 2>/dev/null || true
|
||||||
|
sleep 300
|
||||||
|
done
|
||||||
|
}
|
||||||
|
agent_cleanup_loop &
|
||||||
|
|
||||||
while true; do
|
while true; do
|
||||||
mkdir -p /home/ubuntu/vmware-vix-disklib-distrib/
|
mkdir -p /home/ubuntu/vmware-vix-disklib-distrib/
|
||||||
|
|
||||||
# Clean up logs older than 24 hours on worker node
|
|
||||||
echo "Cleaning up logs older than 24 hours on worker node"
|
|
||||||
# Note: Not restarting services to avoid disruption
|
|
||||||
# Instead, properly closing files in the v2v-helper code
|
|
||||||
# Force delete old log files
|
|
||||||
find /var/log/pf9 -type f -mtime +1 -delete 2>/dev/null || true
|
|
||||||
# Clear deleted but open files
|
|
||||||
echo "Clearing deleted but open files..."
|
|
||||||
lsof +L1 | grep "/var/log/pf9" | awk '{print $2}' | xargs -r kill -HUP 2>/dev/null || true
|
|
||||||
# Free up disk space by clearing caches
|
|
||||||
sync
|
|
||||||
echo 3 > /proc/sys/vm/drop_caches 2>/dev/null || true
|
|
||||||
|
|
||||||
echo "Syncing from rsync://${MASTER_IP}"
|
echo "Syncing from rsync://${MASTER_IP}"
|
||||||
rsync -avz rsync://${MASTER_IP}/vmwarelib/ /home/ubuntu/vmware-vix-disklib-distrib/
|
rsync -avz rsync://${MASTER_IP}/vmwarelib/ /home/ubuntu/vmware-vix-disklib-distrib/
|
||||||
|
|
||||||
# Sync logs from worker to master
|
|
||||||
rsync -avz /var/log/pf9 rsync://${MASTER_IP}/worker-logs
|
rsync -avz /var/log/pf9 rsync://${MASTER_IP}/worker-logs
|
||||||
|
|
||||||
# Sync virtio-win drivers from master to worker
|
|
||||||
rsync -avz rsync://${MASTER_IP}/virtio-win /home/ubuntu/virtio-win
|
rsync -avz rsync://${MASTER_IP}/virtio-win /home/ubuntu/virtio-win
|
||||||
|
|
||||||
if [ $? -eq 0 ]; then
|
if [ $? -eq 0 ]; then
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
# This file is used to set environment variables to be injected into v2v-helper
|
# This file is used to set environment variables to be injected into v2v-helper
|
||||||
# User can populate this file via cloud-init
|
# User can populate this file via cloud-init
|
||||||
|
|
||||||
|
TZ=UTC
|
||||||
|
|
||||||
|
|||||||
@@ -20,6 +20,20 @@ data:
|
|||||||
VMWARE_CREDS_REQUEUE_AFTER_MINUTES: "60" # number of minutes to requeue after for vmware creds
|
VMWARE_CREDS_REQUEUE_AFTER_MINUTES: "60" # number of minutes to requeue after for vmware creds
|
||||||
VALIDATE_RDM_OWNER_VMS: "true" # validate RDM owner VMs before migration
|
VALIDATE_RDM_OWNER_VMS: "true" # validate RDM owner VMs before migration
|
||||||
DEPLOYMENT_NAME: vJailbreak
|
DEPLOYMENT_NAME: vJailbreak
|
||||||
|
TIMEZONE: ""
|
||||||
PERIODIC_SYNC_MAX_RETRIES: "3" # max number of retries for CBT sync
|
PERIODIC_SYNC_MAX_RETRIES: "3" # max number of retries for CBT sync
|
||||||
PERIODIC_SYNC_RETRY_CAP: "3h" # max retry interval for CBT sync
|
PERIODIC_SYNC_RETRY_CAP: "3h" # max retry interval for CBT sync
|
||||||
AUTO_FSTAB_UPDATE: "false" # automatically update fstab
|
AUTO_FSTAB_UPDATE: "true" # automatically update fstab
|
||||||
|
DEFAULT_NETWORK_PERSISTENCE: "false" # default value for persist source network interfaces in migration form
|
||||||
|
AUTO_PXE_BOOT_ON_CONVERSION: "false" # automatically set machine to PXE boot during cluster conversion
|
||||||
|
V2V_HELPER_POD_CPU_REQUEST: "1000m"
|
||||||
|
V2V_HELPER_POD_MEMORY_REQUEST: "2Gi"
|
||||||
|
V2V_HELPER_POD_CPU_LIMIT: "2000m"
|
||||||
|
V2V_HELPER_POD_MEMORY_LIMIT: "5Gi"
|
||||||
|
V2V_HELPER_POD_EPHEMERAL_STORAGE_REQUEST: "3Gi"
|
||||||
|
V2V_HELPER_POD_EPHEMERAL_STORAGE_LIMIT: "3Gi"
|
||||||
|
NTP_SERVERS: ""
|
||||||
|
HTTP_TIMEOUT_SECONDS: "30" # timeout for http calls in seconds
|
||||||
|
PROXY_VM_OVA_URL: "https://vjailbreak-dev.s3.us-west-2.amazonaws.com/hot-add/ha-proxy-vm.ova" # OVA template URL for deploying the Hot-Add Proxy VM
|
||||||
|
VDDK_REQUIRED: "false" # if true, force users to the VDDK upload page until present; if false, VDDK is optional and no redirect/tour happens
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,37 @@
|
|||||||
|
# v0.3.8
|
||||||
|
|
||||||
|
- **Tag:** `v0.3.8`
|
||||||
|
- **Published:** 2026-01-07T08:27:41Z
|
||||||
|
- **Source release:** https://github.com/platform9/vjailbreak/releases/tag/v0.3.8
|
||||||
|
|
||||||
|
## Release Notes
|
||||||
|
|
||||||
|
## What's Changed
|
||||||
|
* Implement Session Timeout (18 hours inactivity) for UI by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1264
|
||||||
|
* install vjbctl binary system wide by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1269
|
||||||
|
* Make datacenter field as an optional entry in vmware creds form by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1256
|
||||||
|
* #1227, #1224 :: Create a Common Component Library for Consistent UI Across the Application by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1297
|
||||||
|
* support additional machine states, optional set to PXE boot by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1301
|
||||||
|
* fix - Agent Node not prompting to change password by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1310
|
||||||
|
* fix errored agent nodes deletion from PCD by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1303
|
||||||
|
* Added script to preserve network interfaces by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1304
|
||||||
|
* #1299 :: New UI – Issues and Required Fixes by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1313
|
||||||
|
* Added advanced option in UI to select if the user wants to persist network interfaces by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1314
|
||||||
|
* add script to check and bring the offline volumes online by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1309
|
||||||
|
* Added a new state to show migrationplan validation failure in ui by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1298
|
||||||
|
* fix - logs for persistance script showing errors by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1317
|
||||||
|
* Add endpoint to take proxy variable, update the cm and restart controller. by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1316
|
||||||
|
* Fix logs UI and updated CRDs by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1320
|
||||||
|
* #1294 :: UI add proxy by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1322
|
||||||
|
* #1294 :: UI: Add proxy with separate Http, Https field by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1325
|
||||||
|
* added validationFailed to stop time elapsed by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1328
|
||||||
|
* Refactored network persistance script by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1327
|
||||||
|
* #1331 :: Show warning message on UI after saving proxy by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1332
|
||||||
|
* no_proxy default values by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1335
|
||||||
|
* Fixed migrationplan status based on all edge cases (combination of validationFailed, failed, suceeded, inprogress) by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1333
|
||||||
|
* Fix - Network persistence not working for older versions of ubuntu by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1338
|
||||||
|
* Vmware tools fix by @amar-chand in https://github.com/platform9/vjailbreak/pull/1267
|
||||||
|
* fix - Interfaces with no ip for ubuntu older versions getting default ip by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1340
|
||||||
|
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/platform9/vjailbreak/compare/v0.3.7...v0.3.8
|
||||||
@@ -0,0 +1,60 @@
|
|||||||
|
# v0.4.0
|
||||||
|
|
||||||
|
- **Tag:** `v0.4.0`
|
||||||
|
- **Published:** 2026-02-03T10:40:48Z
|
||||||
|
- **Source release:** https://github.com/platform9/vjailbreak/releases/tag/v0.4.0
|
||||||
|
|
||||||
|
## Release Notes
|
||||||
|
|
||||||
|
## What's Changed
|
||||||
|
* Added link to public documentation in the ui by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1345
|
||||||
|
* #1336, #834 :: UI implement feedback changes by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1346
|
||||||
|
* Implement Storage SDK Foundation (#1091 #1093) - PART1 by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1291
|
||||||
|
* continues the array-accelerated migration work by implementing the storage array gRPC server layer by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1350
|
||||||
|
* Storage SDK Foundation - Part 3 -- removed all UI changes by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1353
|
||||||
|
* Upload VDDK via UI. by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1319
|
||||||
|
* fix: Make VCENTER_DATACENTER optional in secret by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1356
|
||||||
|
* Reverting 3 commits that introduced breaking changes by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1357
|
||||||
|
* storage array integration by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1361
|
||||||
|
* Added migration details modal by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1355
|
||||||
|
* remove stale folders from the project by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1359
|
||||||
|
* Handled trailing slash in vCenter URL by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1349
|
||||||
|
* VDDK upload by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1364
|
||||||
|
* Added more relevant option in MigrationForm by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1347
|
||||||
|
* Bug: Check for empty arraycreds secret ref when normal migration and change names. by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1369
|
||||||
|
* Restrict retry on rdm migration by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1365
|
||||||
|
* Added validation for hotplug flavor discovery by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1360
|
||||||
|
* merge two common folders for better code structure by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1379
|
||||||
|
* Added return to avoid segmentation fault or panic by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1387
|
||||||
|
* VM Migrations stats and alerts on grafana dashboards by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1362
|
||||||
|
* #1368, #1367 date time selection is not working for scheduled cutover and copy start time by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1384
|
||||||
|
* feat: adding vddk upload status api by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1377
|
||||||
|
* deterministic volume ordering during copy by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1389
|
||||||
|
* UI: Create UI for storage accelerated copy. by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1378
|
||||||
|
* Added missing logs for better debugging by @geet-pf9 in https://github.com/platform9/vjailbreak/pull/1401
|
||||||
|
* feat: adding vddk version in the api by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1397
|
||||||
|
* #731 :: [UI] add prompts for missing VDDK, credentials by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1372
|
||||||
|
* Fix - windows 2022 not able to recognise the network interfaces by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1382
|
||||||
|
* pass vminfo by reference and improve sync error handling by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1391
|
||||||
|
* Reset currentState to initial in case of error and success by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1404
|
||||||
|
* Implemented OpenStack token-based authentication by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1394
|
||||||
|
* feat: adding fuzzy search by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1392
|
||||||
|
* Add VM power status check after poweroff by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1405
|
||||||
|
* Make request limit configurable and increase limit to 5Gib by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1407
|
||||||
|
* feat: Adding netapp storage.go by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1399
|
||||||
|
* Mark migrations ValidationFailed when RDM disk is not managed by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1406
|
||||||
|
* Disabled hour-time-picker for scheduled cutover if minutes are disabled by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1415
|
||||||
|
* Fix issues in vddk upload page by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1418
|
||||||
|
* fix: added buildBackendToVolumeTypeMap function and cleanup logic by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1422
|
||||||
|
* #1424 :: The screen flickers first time when clicking on other Global Settings tabs while the VDDK upload is in progress or uploaded by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1429
|
||||||
|
* #1434 :: Add ESXi SSH Private Key Input Field to Storage Array Credentials Page by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1435
|
||||||
|
* Prioritizing Cold Migration in case of cutover options selected with cold migration by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1439
|
||||||
|
* #1444 :: Couldn't upload ssh key without an extension by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1447
|
||||||
|
* Throttling the go routines during copying changed block stage by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1446
|
||||||
|
* UI :: #1438 :: Admin cutover + cold migration is not a valid usecase by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1441
|
||||||
|
* #1430 :: Updating the vJailbreak settings through the UI removes ConfigMap keys that are not shown in the UI by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1436
|
||||||
|
|
||||||
|
## New Contributors
|
||||||
|
* @geet-pf9 made their first contribution in https://github.com/platform9/vjailbreak/pull/1401
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/platform9/vjailbreak/compare/v0.3.8...v0.4.0
|
||||||
@@ -0,0 +1,114 @@
|
|||||||
|
# v0.4.1
|
||||||
|
|
||||||
|
- **Tag:** `v0.4.1`
|
||||||
|
- **Published:** 2026-03-03T08:32:13Z
|
||||||
|
- **Source release:** https://github.com/platform9/vjailbreak/releases/tag/v0.4.1
|
||||||
|
|
||||||
|
## Release Notes
|
||||||
|
|
||||||
|
## What's Changed
|
||||||
|
* upgarde core components by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1458
|
||||||
|
* Network Persistence For Windows by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1408
|
||||||
|
* increase QPS for kubernetes client in proxy pod by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1460
|
||||||
|
* Fixed - v2v build failure by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1471
|
||||||
|
* Added s3 URL artifact to build outputs (release) by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1464
|
||||||
|
* Push image on S3 only for release, nightly and manual triggers by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1474
|
||||||
|
* Added option to migrate a vm without powering off the source vm by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1472
|
||||||
|
* Fixed the variable issue in v2v helper by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1476
|
||||||
|
* Added downloadable s3 url for qcow2 images by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1475
|
||||||
|
* #1451 :: Remove data copy method and cutover options from adavance options when user selects storage accelerated copy by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1473
|
||||||
|
* Install latest golang and libnbd-devel in Dockerfile by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1485
|
||||||
|
* chore: upgrade grafana by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1483
|
||||||
|
* user experience enhancements (download logs) by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1486
|
||||||
|
* add pre-commit hooks for lint and YAML generator by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1494
|
||||||
|
* Use GitHub repository variables for S3 bucket names and region in CI workflow by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1488
|
||||||
|
* Added manual pre-release workflow for CRD and installer generation by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1489
|
||||||
|
* add backoff for migration pod checking logs by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1396
|
||||||
|
* #1454 :: Deselecting the advanced option does not reset the UI to its original state by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1477
|
||||||
|
* Replace pre-baked Ubuntu base image with Ubuntu Minimal and automate K3s/Helm installation by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1496
|
||||||
|
* firstboot scheduling windows by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1500
|
||||||
|
* Run upgrade process as a job by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1467
|
||||||
|
* Removed extra logging by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1490
|
||||||
|
* pin golang lint version by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1517
|
||||||
|
* fix: continue network discovery even for orphaned networks by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1457
|
||||||
|
* #1515 :: UI Bug: “Start Conversion” Button Not Enabled in Rolling Cluster Conversion Form by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1516
|
||||||
|
* #1398 :: Reorganize Main Menu into Two-Level Structure by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1512
|
||||||
|
* replace grafana yamls by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1521
|
||||||
|
* add more printcolumns by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1522
|
||||||
|
* Apply PostMigrationAction for all migrations in a batch by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1492
|
||||||
|
* Support duplicate VM names by using vCenter MOID as a unique identifier by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1523
|
||||||
|
* fix nginx grafana by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1526
|
||||||
|
* Keep icons consistent in all the pages by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1530
|
||||||
|
* #1450 :: UI is not allowing to delete auto discovered storage mapping by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1470
|
||||||
|
* Revert #1523: Remove duplicate vm name changes by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1535
|
||||||
|
* Add ssh validate CR for key validation by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1505
|
||||||
|
* Removed extra logs showing repeated 0% by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1536
|
||||||
|
* Add necessary tools for easier debug ability by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1538
|
||||||
|
* Cluster Conversion: fix the capacity check for esxi hosts by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1504
|
||||||
|
* #1506 :: Create New Page for ESXi SSH Key Management by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1539
|
||||||
|
* fix - Firstboot script for nic recovery is not running and errors on specific windows versions by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1534
|
||||||
|
* add esxi details by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1525
|
||||||
|
* Resolve UI synchronization lag during Admin Cutover by refining MigrationPlan predicates by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1542
|
||||||
|
* Introduce warning error states during periodic sync so that customer can take necessary steps by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1497
|
||||||
|
* Feature/option not to preserve ip and mac by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1511
|
||||||
|
* Fixed retry mechanism by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1544
|
||||||
|
* backend volume type validations by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1498
|
||||||
|
* fix: scope VM validation to non-terminal states and harden post-migration actions by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1549
|
||||||
|
* Create esxi ssh cr while configuring esxi ssh key. by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1558
|
||||||
|
* bake virtio 0.1.185 for windows server 2012 by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1425
|
||||||
|
* script to remove log files regarding vmwaretools,vmware etc by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1547
|
||||||
|
* Added advanced option to run vmware removal script with just a check in the migration form by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1550
|
||||||
|
* user firstboot fix by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1569
|
||||||
|
* #1545 : UI - Redirect to the first sub item upon clicking the Item in the sidebar by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1570
|
||||||
|
* fix: adding a timestamp measure to ensure the latest version is fetched for vddk version by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1562
|
||||||
|
* skip deletion of vmwaremachine that was migrated and renamed by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1566
|
||||||
|
* fix generate-mount-persistence invocation for multi-disk by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1564
|
||||||
|
* Remove irrelevent filters on ESXi SSH Credentials page by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1567
|
||||||
|
* #1510 :: UI Request option to NOT preserve the IP address and MAC address to allow migration to a different subnet by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1557
|
||||||
|
* #1443 : Add Storage accelerated copy related information in migration details for storage mapping (currently showing NA) by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1571
|
||||||
|
* UI: Fix rdm configure tab in migration form by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1576
|
||||||
|
* #1574: Update Tour Popup Messaging for Separate VMware and PCD Pages by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1579
|
||||||
|
* fix: on empty IP create only port group else route the standard way by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1573
|
||||||
|
* fix: Migration phase skips CopyingChangedBlocks/ConvertingDisk after admin cutover by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1585
|
||||||
|
* guestfish run fix, fix grub bootloader by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1586
|
||||||
|
* Net persist patch by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1589
|
||||||
|
* Remove 2 errors on UI for rdm form and add a warning dialog box if wrong selected by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1590
|
||||||
|
* Injected Disk-Online script into the codebase and enhanced tool removal script for win2012 by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1578
|
||||||
|
* fix: custom IP is not applied for no preserve IP and no preserve MAC by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1597
|
||||||
|
* #1583 : Cannot remove assign IP post a new IP is applied by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1592
|
||||||
|
* Include resourceVersion when updating ESXi SSH credentials by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1605
|
||||||
|
* fix: adding dhcp search for no ip by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1481
|
||||||
|
* Revert fix generate-mount-persistence invocation for multi-disk by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1606
|
||||||
|
* Continue after failure Firstboot Schduling for windows firstboot by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1604
|
||||||
|
* Interface Name preservation by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1609
|
||||||
|
* Disable github hook on pre-release commit by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1613
|
||||||
|
* chore: Pre-release CRD generation for v0.4.1 by @github-actions[bot] in https://github.com/platform9/vjailbreak/pull/1614
|
||||||
|
* Use Cloud image instead of minimal ubuntu by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1618
|
||||||
|
* Update nginx ingress and prometheus alert manager images ( release ) by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1619
|
||||||
|
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/platform9/vjailbreak/compare/v0.4.0...v0.4.1
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### Upgrade Guide: v0.4.0 → v0.4.1
|
||||||
|
Users upgrading from v0.4.0 to v0.4.1 needs to follow the steps below:
|
||||||
|
|
||||||
|
- #### Step 1: Update v0.4.0 Container Images
|
||||||
|
|
||||||
|
In your existing v0.4.0 setup, update the deployment images to pull the latest v0.4.0 containers and set imagePullPolicy to Always with the below command given.
|
||||||
|
```
|
||||||
|
kubectl patch deployment migration-controller-manager -n migration-system --type='json' \
|
||||||
|
-p='[{"op":"replace","path":"/spec/template/spec/containers/0/imagePullPolicy","value":"Always"}]' && \
|
||||||
|
kubectl patch deployment migration-vpwned-sdk -n migration-system --type='json' \
|
||||||
|
-p='[{"op":"replace","path":"/spec/template/spec/containers/0/imagePullPolicy","value":"Always"}]' && \
|
||||||
|
kubectl patch deployment vjailbreak-ui -n migration-system --type='json' \
|
||||||
|
-p='[{"op":"replace","path":"/spec/template/spec/containers/0/imagePullPolicy","value":"Always"}]'
|
||||||
|
```
|
||||||
|
|
||||||
|
- #### Step 2: Restart Deployments
|
||||||
|
|
||||||
|
Restart the deployments to ensure the updated images are pulled and running:
|
||||||
|
```
|
||||||
|
kubectl rollout restart deployment -n migration-system
|
||||||
|
- #### Step 3: Follow Upgrade Steps from the [public documentation](https://platform9.github.io/vjailbreak/guides/how-to/upgrade_vjailbreak/)
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
# v0.4.10
|
||||||
|
|
||||||
|
- **Tag:** `v0.4.10`
|
||||||
|
- **Published:** 2026-09-02T10:34:13Z
|
||||||
|
- **Source release:** https://github.com/platform9/vjailbreak/releases/tag/v0.4.10
|
||||||
|
|
||||||
|
## Release Notes
|
||||||
|
|
||||||
|
## What's Changed
|
||||||
|
* Enabling other copy methods without vddk- #2350 by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2353
|
||||||
|
* Adding directory or create by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2356
|
||||||
|
* [2358] Add VDDK_REQUIRED configmap flag to gate mandatory VDDK upload redirect by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2359
|
||||||
|
* [2363] Default migration form to vJailbreak Accelerated Copy (HotAdd) by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2362
|
||||||
|
* Pre-release CRD generation for v0.4.10 by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2370
|
||||||
|
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/platform9/vjailbreak/compare/v0.4.9...v0.4.10
|
||||||
|
|
||||||
|
## Highlights
|
||||||
|
This is a quick release in response to VDDK unavailability. More details - https://platform9.com/blog/vddk-no-longer-available/
|
||||||
@@ -0,0 +1,47 @@
|
|||||||
|
# v0.4.2
|
||||||
|
|
||||||
|
- **Tag:** `v0.4.2`
|
||||||
|
- **Published:** 2026-03-18T18:50:07Z
|
||||||
|
- **Source release:** https://github.com/platform9/vjailbreak/releases/tag/v0.4.2
|
||||||
|
|
||||||
|
## Release Notes
|
||||||
|
|
||||||
|
## What's Changed
|
||||||
|
* UI access control by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1629
|
||||||
|
* refactor for a cleaner code: consolidate go modules and constants by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1560
|
||||||
|
* Simplify S3 QCOW2 upload paths by removing date folders by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1631
|
||||||
|
* fix - Static network interface name is not getting preserved for Rocky9 by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1634
|
||||||
|
* Refactor: move commonly used functions to common package by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1633
|
||||||
|
* fix: Wait for network IP and default route before installing K3s master and worker by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1644
|
||||||
|
* metadata as input by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1639
|
||||||
|
* Implement independent post-migration script execution for mixed OS plans by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1638
|
||||||
|
* #1607 : Cancel button is not working during vddk upload by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1635
|
||||||
|
* #1575, #1577 : Start Migration is not getting disabled by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1637
|
||||||
|
* Added checks for failure in user management vjbctl by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1659
|
||||||
|
* Add exponential backoff auto-reconnect for migration pod log streams by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1657
|
||||||
|
* Fix UI RBAC permissions for pod operations by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1661
|
||||||
|
* fix: Scale up agents on L2 network by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1654
|
||||||
|
* Detect if target is L2 network if so ignore ip by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1666
|
||||||
|
* Added failure checks in vjbctl by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1672
|
||||||
|
* create seperate CI to create base image, use this base image to generate qcow2 by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1677
|
||||||
|
* Revert "create seperate CI to create base image, use this base image to generate qcow2" by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1684
|
||||||
|
* #1543 : VM selection filter is not working properly by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1682
|
||||||
|
* fix: Version lock ingress version by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1686
|
||||||
|
* fix - Migrations failing with - failed to reserve ports for VM by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1688
|
||||||
|
* #1694 : Extract only first IPv4 address when displaying and editing VM IP addresses by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1695
|
||||||
|
* Fix: VJailbreakNode CR status was stuck at "CreatingVM" for L2 networks even after the VM joined the K8s cluster. by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1693
|
||||||
|
* Ability to reuse ports in case of l2 network by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1700
|
||||||
|
* #1692 : Support multiple IP addresses per network interface by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1697
|
||||||
|
* API change: multiple ips for single nic in vmwaremachines by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1696
|
||||||
|
* Disabled Fallbacktodhcp and Securitygrp for L2 by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1705
|
||||||
|
* #1694 : Preserve IP for a powered on VM is getting wrong IPs for no IP interfaces by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1704
|
||||||
|
* fix agents migration for L3 by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1706
|
||||||
|
* #1710 : Remove no ip validation in assign IP box for no ip interfaces by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1712
|
||||||
|
* Mount persist debug log by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1711
|
||||||
|
* Disabled assigned ip box for multiple ips by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1713
|
||||||
|
* Defining refresh ui function for vjbctl by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1715
|
||||||
|
* chore: Pre-release CRD generation for v0.4.2 by @github-actions[bot] in https://github.com/platform9/vjailbreak/pull/1716
|
||||||
|
* Added a check to preserve ip by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1718
|
||||||
|
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/platform9/vjailbreak/compare/v0.4.1...v0.4.2
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
# v0.4.3
|
||||||
|
|
||||||
|
- **Tag:** `v0.4.3`
|
||||||
|
- **Published:** 2026-04-08T06:57:13Z
|
||||||
|
- **Source release:** https://github.com/platform9/vjailbreak/releases/tag/v0.4.3
|
||||||
|
|
||||||
|
## Release Notes
|
||||||
|
|
||||||
|
## What's Changed
|
||||||
|
* fix for no cluster filter by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1726
|
||||||
|
* fix - Unable to migrate powered-off VM without IP address by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1732
|
||||||
|
* Optimise VMware tool removal by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1675
|
||||||
|
* Added dnsConfig with ndots: 1 for controller,v2v-helper and vpwned pods by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1736
|
||||||
|
* Replaced the manual name construction with a call to resolvecinderVolumeToLun Function by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1738
|
||||||
|
* Added delete permissions for secrets by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1740
|
||||||
|
* uuid for image id discovery call by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1739
|
||||||
|
* Duplicate ESXi hosts are visible for multiple VMware credentials by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1707
|
||||||
|
* Preserved non-ASCII chars in Kubernetes secrets by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1745
|
||||||
|
* #1656: Reset to Default button toggles off Auto Fstab Update and sets migration type to hot by default by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1734
|
||||||
|
* #1733 : Add a toggle to pass the instance ID when creating PCD credentials on a VJB VM that was created using an L2 network by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1744
|
||||||
|
* #1648 : Remove the N/A drop down from Storage Accelerated Copy by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1748
|
||||||
|
* Disable security group selection for L2-enabled PCD credentials by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1757
|
||||||
|
* Updating virt-v2v version by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1763
|
||||||
|
* Give permission to UI user to create arraycredsmapping by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1760
|
||||||
|
* mount point for lvm by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1599
|
||||||
|
* Implement subnet compatibility warnings for VM network mapping by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1755
|
||||||
|
* Agents markdown file by @roopakparikh in https://github.com/platform9/vjailbreak/pull/1507
|
||||||
|
* Feat/support virtual portgroups by @sanya-pf9 in https://github.com/platform9/vjailbreak/pull/1730
|
||||||
|
* v2v checks for windows by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1775
|
||||||
|
* Add update patch list to secret for ui role by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1777
|
||||||
|
* #1591 : Migration details in the details modal becomes NA if we remove creds and create new creds, Its reconciling with old creds by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1753
|
||||||
|
* adding proper filtering for agent nodes by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1778
|
||||||
|
* Added devcon utility by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1790
|
||||||
|
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/platform9/vjailbreak/compare/v0.4.2...v0.4.3
|
||||||
|
|
||||||
|
## Release Notes & Known Issues
|
||||||
|
* Static IP and interface name preservation is not supported when the target network has DHCP disabled.
|
||||||
|
* For Windows VMs, static IP configurations are automatically converted to DHCP. However, the original source IP is retained on the destination VM to maintain network connectivity.
|
||||||
|
* The VMware Tools removal script may leave behind some residual artifacts. Refer to the [documentation](https://platform9.github.io/vjailbreak/guides/troubleshooting/vmware_residual_artifacts/#_top) for more details.
|
||||||
|
* Agent scaling is not supported for vJailbreak VMs operating on L2 networks.
|
||||||
@@ -0,0 +1,67 @@
|
|||||||
|
# v0.4.4
|
||||||
|
|
||||||
|
- **Tag:** `v0.4.4`
|
||||||
|
- **Published:** 2026-04-29T15:08:09Z
|
||||||
|
- **Source release:** https://github.com/platform9/vjailbreak/releases/tag/v0.4.4
|
||||||
|
|
||||||
|
## Release Notes
|
||||||
|
|
||||||
|
## What's Changed
|
||||||
|
* Add offline VMware Tools cleanup and optimize firstboot script for cleaner migrations by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1779
|
||||||
|
* Claude.md and other files for LLM integration by @roopakparikh in https://github.com/platform9/vjailbreak/pull/1690
|
||||||
|
* Add security scan file for vulnerability scans by @hsri-pf9 in https://github.com/platform9/vjailbreak/pull/1039
|
||||||
|
* Removing the volume attachment delay due to metadata service connectivity by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1804
|
||||||
|
* ci: skip build-image and lint workflow by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1807
|
||||||
|
* Support duplicate VM names by using vCenter MOID as a unique identifier by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1772
|
||||||
|
* fix - Interface preservation not working on DHCP disabled network for windows by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1805
|
||||||
|
* #1761 : Bugsnag not working properly by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1765
|
||||||
|
* Fix multi-disk volume-type mismatch by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1815
|
||||||
|
* fix: update VM identification from name to ID in VmsSelectionStep by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1817
|
||||||
|
* validate CURRENT_INSTACE_ID is in the same env by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1816
|
||||||
|
* #1783 : Duplicate Amplitude Events Triggered During Migration by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1791
|
||||||
|
* Added user assigned ip per nic in backend by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1719
|
||||||
|
* Added UI for per-NIC multi-IP overrides by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1820
|
||||||
|
* Added workflow for old builds cleanup from quay and S3 by @geet-pf9 in https://github.com/platform9/vjailbreak/pull/1735
|
||||||
|
* change volume attachment wait time and logs by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1819
|
||||||
|
* Virtio installation in windows by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1824
|
||||||
|
* Improved Mac Filtering by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1831
|
||||||
|
* 1825 : Enhance Amplitude Events with OS Region Name from Credentials by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1835
|
||||||
|
* feat: add UI support for setting volume metadata prior to migration by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1838
|
||||||
|
* feat: add volume image properties prior to migration by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1834
|
||||||
|
* Handling interfaces with no ip for rhel based os by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1842
|
||||||
|
* UI: show selected profiles in details modal by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1841
|
||||||
|
* Remove default profile auto-selection and fix boot volume metadata merge by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1846
|
||||||
|
* Update portgroupkey if stale with correct live mor of the dvpg. by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1836
|
||||||
|
* improve bootable partition detection for Grub 2.12 and add script logging by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1829
|
||||||
|
* L2 scaling support. Don't query metadataservice, get uuid from pod's nodename. by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1848
|
||||||
|
* Feature: Add FC support for pure and netapp. by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1851
|
||||||
|
* fix - Suse-11-4 - VM ends up in maintenance mode post migration by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1850
|
||||||
|
* fix - dirty disk post migration windows by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1856
|
||||||
|
* Pass vmkey instead of vmname to delete object by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1865
|
||||||
|
* Map lun to igroup based on svm by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1866
|
||||||
|
* Prevent the user from adding multiple IPs if the Preserve IP toggle is turned off by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1863
|
||||||
|
* use custom http timeout from settings by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1860
|
||||||
|
* Remove L2 instance ID from UI and backend by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1858
|
||||||
|
* Fixed master instance ID issue by @geet-pf9 in https://github.com/platform9/vjailbreak/pull/1871
|
||||||
|
* After we copy the disks via storagecopy add image tags to boot correctly by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1870
|
||||||
|
* Bug: Use GetIsSimpleNetwork method instead of using stale env variable by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1875
|
||||||
|
* increased version window for github tags by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1876
|
||||||
|
* Keepalive client mechanism by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1881
|
||||||
|
|
||||||
|
## New Contributors
|
||||||
|
* @hsri-pf9 made their first contribution in https://github.com/platform9/vjailbreak/pull/1039
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/platform9/vjailbreak/compare/v0.4.3...v0.4.4
|
||||||
|
|
||||||
|
## Highlights
|
||||||
|
- **VMware Tools Removal:** The removal script now removes all residual files and folders. A small number of registry entries may remain depending on the Windows version, but these are harmless and can be removed manually if needed.
|
||||||
|
- **Migration Profiles:** Pre-defined key-value pairs can now be applied to a migrated VM's root volume in OpenStack. Profiles are supported for both Windows and Linux guests.
|
||||||
|
- **L2 Network Scaling Support:** Scaling of agents in L2 network (Simple Networking) is now supported.
|
||||||
|
- **Persistent Network Interface for Windows (2016+):** Static network configurations including interface name, IP, MAC, and gateway are now preserved across migration for Windows Server 2016 and above.
|
||||||
|
- **FC Support for Storage Area Migration (SAM):** Fibre Channel support has been added for SAM workflows, verified with NetApp FC targets.
|
||||||
|
|
||||||
|
## Known Limitations
|
||||||
|
- **Windows 2012 and Earlier — Persist Network:** The persistent network interface option is not supported on Windows 2012 and below. IP and MAC addresses are preserved, but the interface name and gateway may get lost, and the NIC configuration becomes dynamic after migration.
|
||||||
|
- **Migration Profiles — Upgrade Path:** The two default profiles (Windows and Linux) are auto-created on fresh installations only. Users upgrading from lower versions to v0.4.4 will need to create these profiles manually.
|
||||||
|
- **VMware Tools Registry Entries:** Depending on the Windows version, a small number of VMware Tools registry entries (listed in public docs) may not be removed by the uninstall script. These are harmless but can be removed manually if desired.
|
||||||
|
- **FC SAM — Verified Target:** FC support for SAM has been verified against NetApp FC targets. Compatibility with other FC storage vendors is not yet validated.
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
# v0.4.5
|
||||||
|
|
||||||
|
- **Tag:** `v0.4.5`
|
||||||
|
- **Published:** 2026-05-06T06:19:56Z
|
||||||
|
- **Source release:** https://github.com/platform9/vjailbreak/releases/tag/v0.4.5
|
||||||
|
|
||||||
|
## Release Notes
|
||||||
|
|
||||||
|
## What's Changed
|
||||||
|
* Fix RDM configuration issue from UI by @geet-pf9 in https://github.com/platform9/vjailbreak/pull/1895
|
||||||
|
* Bug: Fix unauthenticated error when doing vcenter operations after a long time. by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1891
|
||||||
|
* Fixed migration issue for shared rdm disk by @geet-pf9 in https://github.com/platform9/vjailbreak/pull/1902
|
||||||
|
* chore: Pre-release CRD generation for v0.4.5 by @github-actions[bot] in https://github.com/platform9/vjailbreak/pull/1904
|
||||||
|
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/platform9/vjailbreak/compare/v0.4.4...v0.4.5
|
||||||
@@ -0,0 +1,69 @@
|
|||||||
|
# v0.4.6
|
||||||
|
|
||||||
|
- **Tag:** `v0.4.6`
|
||||||
|
- **Published:** 2026-06-11T05:42:35Z
|
||||||
|
- **Source release:** https://github.com/platform9/vjailbreak/releases/tag/v0.4.6
|
||||||
|
|
||||||
|
## Release Notes
|
||||||
|
|
||||||
|
## What's Changed
|
||||||
|
* [1822] Removed redundant field (AssignedIP) by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1899
|
||||||
|
* [1907] Fix: fetch single VMwareMachine instead of entire list in migration detail query by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1903
|
||||||
|
* [1241] Disable port security on migrated ports when no security group is selected while migration by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1892
|
||||||
|
* #1822: Display All VM IP Addresses in Migration Details Page (Assigned & Preserved IPs) by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1911
|
||||||
|
* [1897] Feat: Add controller logs button to topbar in UI by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1896
|
||||||
|
* docs(CLAUDE.md): add unit test requirements for Claude-written code by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1917
|
||||||
|
* [1830] Fix: Include RBAC-shared security groups in destination tenant security group list by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1910
|
||||||
|
* [1925] ci: Shift nightly build trigger to 01:00 IST by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1924
|
||||||
|
* [1920] Added warnings for selected VMs with missing IPs by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1918
|
||||||
|
* [1913] Fix: Skip VMwareMachine reconciliation for migrated VMs by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1912
|
||||||
|
* #973: Verify vCenter FQDN DNS resolution by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1928
|
||||||
|
* [1931] feat: Add debug bundle collection with resources and logs for easier troubleshooting by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1929
|
||||||
|
* Bug: Filter Flavor Selection on AZ and flavours without AZ by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1916
|
||||||
|
* [1840] Added the ability to migrate the VMs with no interface by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1927
|
||||||
|
* Updating the compute api version to support multi-attach volumes by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1932
|
||||||
|
* [1921] feat: Show revalidation progress on Credentials page by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1919
|
||||||
|
* [1890] agent dns config by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1937
|
||||||
|
* [1888] refactor: Remove direct pod permissions by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1935
|
||||||
|
* [1938] Support VMs with space in their name by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1936
|
||||||
|
* [1933] Don't restart ui when listing users by @spai-p9 in https://github.com/platform9/vjailbreak/pull/1939
|
||||||
|
* [1796] Optimising the copy changed blocks mechanism for faster sync by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1934
|
||||||
|
* #587: UI refactor migration by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1960
|
||||||
|
* #1940: Block v2v pod creation or disable start migration if vddk is not uploaded by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1969
|
||||||
|
* #1873: Block security group selection during scaling L2 Agent by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1962
|
||||||
|
* [1803] fix: Added retry for transient API errors by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1958
|
||||||
|
* [1961] fix: Handle transient vCenter errors during VM power-off by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1973
|
||||||
|
* [1610] Fix VMware Tools cleanup for Linux/SUSE VMs by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1968
|
||||||
|
* [1482] Adding hot add proxy by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1964
|
||||||
|
* [1978] Sles LVM Minitrd fix by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/1976
|
||||||
|
* #1971: UI hot add proxy migration complete UI requirements by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1981
|
||||||
|
* UI E2E testcases with mock data using playwright by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/1972
|
||||||
|
* Fix cluster conversion issues by @geet-pf9 in https://github.com/platform9/vjailbreak/pull/1984
|
||||||
|
* [1990] Fix boot device index parse failure due to mixed guestfish stderr/stdout by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1993
|
||||||
|
* Hypervisor resmgr role Cluster Conversion by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1997
|
||||||
|
* #1999: Security group warning should be visible for Use security group of primary vJB vm by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2000
|
||||||
|
* [2004] Fix SLED OS detection and broaden SSH key format support by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2003
|
||||||
|
* [2002] fix- Cant upload key Invalid key error for RSA key by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2006
|
||||||
|
* [2009] Unified logs icons and aligned migration name across logs drawer and details by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2008
|
||||||
|
* Update CRD for v0.4.6 by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2017
|
||||||
|
|
||||||
|
|
||||||
|
## Highlights
|
||||||
|
**Hot Add Proxy**: Hot-Add Proxy is an advanced data copy method that attaches source VM disks directly to a dedicated Proxy VM and streams the data over NBD (Network Block Device) to the destination. Instead of copying data over the NFC protocol from ESXi. This feature is currently in beta, will be stabilized in the coming releases.
|
||||||
|
|
||||||
|
**Migration Reliability**:
|
||||||
|
- VMs with no network interfaces can now be migrated successfully.
|
||||||
|
- Multi-attach volume types are now supported for migration.
|
||||||
|
|
||||||
|
**Enhanced UX**:
|
||||||
|
- All IP addresses (assigned and preserved) are now shown on the Migration Details page in the UI.
|
||||||
|
- Controller logs (migration controller manager) are visible in the UI irrespective of any migrations triggered.
|
||||||
|
- A debug bundle collection button makes log and resource gathering easier for troubleshooting. All CRs related to that migration are now gathered for easier debugging.
|
||||||
|
|
||||||
|
|
||||||
|
## Known Limitations
|
||||||
|
- Migrations of VMs with grub version lower than 2 might face issues while booting post migration.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/platform9/vjailbreak/compare/v0.4.5...v0.4.6
|
||||||
@@ -0,0 +1,69 @@
|
|||||||
|
# v0.4.7
|
||||||
|
|
||||||
|
- **Tag:** `v0.4.7`
|
||||||
|
- **Published:** 2026-07-02T10:52:42Z
|
||||||
|
- **Source release:** https://github.com/platform9/vjailbreak/releases/tag/v0.4.7
|
||||||
|
|
||||||
|
## Release Notes
|
||||||
|
|
||||||
|
## What's Changed
|
||||||
|
* Fixed the missing --binding-profile '{"l2-port": true}' on ports created for VMs migrated onto L2-only networks in PCD by @spai-p9 in https://github.com/platform9/vjailbreak/pull/2015
|
||||||
|
* [2007] Fix fstab rewrite incorrectly activating commented bind-mount entries by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2011
|
||||||
|
* [1058] Configure NTP servers and system timezone for the vJailbreak VM directly from the UI by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/1742
|
||||||
|
* [1915] Added persist source network interfaces as a global setting by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2025
|
||||||
|
* Detect if we are using virtio-scsi controller for windows and pass --blockdriver for conversion by @spai-p9 in https://github.com/platform9/vjailbreak/pull/2027
|
||||||
|
* [1812] Fix volume cleanup when CreateTargetInstance times out by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2026
|
||||||
|
* [1975] Hot-Add Proxy VM UX improvements by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2023
|
||||||
|
* [1996] upgrade core components with guest OS migration fixes by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2031
|
||||||
|
* [1970] Add server group selection for agent scale-up to control placement affinity by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2032
|
||||||
|
* [1979] VM selection refresh button now revalidates VMware credentials by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2034
|
||||||
|
* [1872] Verify volume bootable state after SetBootable timeout by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2035
|
||||||
|
* prebake proxy VM OVA into appliance image by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2038
|
||||||
|
* Fix: Check hardware version and migration type only then check for cbt by @spai-p9 in https://github.com/platform9/vjailbreak/pull/2037
|
||||||
|
* [1980] Enhance user experience with new UI by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2040
|
||||||
|
* UI side changes for Hot add proxy improvements by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2030
|
||||||
|
* Rename Firstboot-Scheduler.ps1 to 0-Firstboot-Scheduler.ps1 by @noaboa97 in https://github.com/platform9/vjailbreak/pull/1994
|
||||||
|
* fix(v2v-helper): repair broken build on main by @valentin-pf9 in https://github.com/platform9/vjailbreak/pull/1945
|
||||||
|
* [1750] UI for edit and retry by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2024
|
||||||
|
* [2044] Consolidate edit-and-retry into single Retry action by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2021
|
||||||
|
* #2047 : Need UI enhancement in hot add proxy changes by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2048
|
||||||
|
* [2050] Optimize retry flow and add bulk retry by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2049
|
||||||
|
* [2052] Fix Windows firstboot loop by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2056
|
||||||
|
* [1915] Added persist source network interfaces as a global setting by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2058
|
||||||
|
* [2054] fix(retry): prefilled IP overrides not shown in Assign IP dialog on retry form by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2059
|
||||||
|
* [2062] fix - ssh keypair name missmatch by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2060
|
||||||
|
* #2051: Converting disk shows copy disk inside the migration details page by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2063
|
||||||
|
* #2067: Block/Grey out the already registered proxy vm, this could mismatch the secret by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2070
|
||||||
|
* [2079] Fix ProxyVM showing Ready status while SSH validation is failing by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2080
|
||||||
|
* #2068 #2078 #2069: VM is in conversion state but it shows Hot add transfer in UI and stuck in validating state by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2074
|
||||||
|
* [2077] Fix: Reset to Defaults must skip NTP server & timezone while migration running by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2084
|
||||||
|
* #2088: [UI] Windows VM should be blocked for selection as a proxy VM by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2089
|
||||||
|
* [2093] feat: add debug-bundle API to vpwned by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2090
|
||||||
|
* #2082: Debug logs, yamls are not present in logs fetched using log download button by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2092
|
||||||
|
* Fix Host Entries tab: duplicate description text and low-visibility button by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2099
|
||||||
|
|
||||||
|
## New Contributors
|
||||||
|
* @noaboa97 made their first contribution in https://github.com/platform9/vjailbreak/pull/1994
|
||||||
|
* @valentin-pf9 made their first contribution in https://github.com/platform9/vjailbreak/pull/1945
|
||||||
|
|
||||||
|
## Highlights
|
||||||
|
**Migration details page**: Added new page which shows in depth state monitoring for migration lifecycle.
|
||||||
|
|
||||||
|
**Vjailbreak Proxy**:
|
||||||
|
* End-to-end UI for registering a Proxy VM (SSH key upload, validation status), selecting Hot-Add as the copy method in the migration form, and monitoring hot-add-specific migration phases
|
||||||
|
* Verification now auto-installs missing dependencies on the Proxy VM during validation, eliminating the need for manual pre-configuration before registering
|
||||||
|
|
||||||
|
**Advanced Configuration Management**
|
||||||
|
* Configure **NTP servers** and **system timezone** for vJailbreak VMs directly from the UI.
|
||||||
|
* Introduced **server group selection** for agent scale-up, enabling better placement and affinity control.
|
||||||
|
|
||||||
|
**Enhanced Retry Experience**
|
||||||
|
* Introduced a new Edit & Retry capability, allowing users to modify migration settings and retry failed migrations without recreating the migration.
|
||||||
|
* Simplified recovery with a unified Retry action and support for Bulk Retry, reducing manual effort.
|
||||||
|
|
||||||
|
|
||||||
|
## Known Limitations
|
||||||
|
|
||||||
|
**Proxy VM OVA requires ESXi 8.0 U2 or higher**: The bundled OVA template uses virtual hardware version vmx-21, which is incompatible with older ESXi hosts. Attempting to deploy it on ESXi 7.x will fail with an "unsupported hardware family" error. For ESXi 7.x environments, the Proxy VM must be created and configured manually instead of using the OVA deploy option.
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/platform9/vjailbreak/compare/v0.4.6...v0.4.7
|
||||||
@@ -0,0 +1,88 @@
|
|||||||
|
# v0.4.8
|
||||||
|
|
||||||
|
- **Tag:** `v0.4.8`
|
||||||
|
- **Published:** 2026-08-04T09:22:20Z
|
||||||
|
- **Source release:** https://github.com/platform9/vjailbreak/releases/tag/v0.4.8
|
||||||
|
|
||||||
|
## Release Notes
|
||||||
|
|
||||||
|
## What's Changed
|
||||||
|
* #2067: Block/Grey out the already registered proxy vm, this could mismatch the secret by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2105
|
||||||
|
* [2083] Infer hotplug intent from assigned flavor by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2109
|
||||||
|
* fix: security workflow fork PR comments + graphify git noise by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/2116
|
||||||
|
* test(v2v-helper): repair stale mkinitrd LVM wrapper unit tests by @gtherond in https://github.com/platform9/vjailbreak/pull/2075
|
||||||
|
* [2106] Fix wrong stage shown for Hot-Add proxy migrations by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2117
|
||||||
|
* [2085] Block Persist source network interfaces when mapped network subnet doesn't match VM IPs by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2110
|
||||||
|
* [2095] Serve debug bundle as .tar.gz archive instead of single .txt file by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2112
|
||||||
|
* [2113] Improved subnet mismatch warning and Persist IP disabled warning by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2126
|
||||||
|
* refactor: remove deprecated files and components, streamline package dependencies by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2114
|
||||||
|
* Don't call openstackcreds per cluster to get tenant name by @spai-p9 in https://github.com/platform9/vjailbreak/pull/2057
|
||||||
|
* #2087 : Add confirmation dialog for node reprovisioning by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2131
|
||||||
|
* #2094: [UI] Update Controller Log Section Styling to Match Migration Details Logs by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2136
|
||||||
|
* [2128] Show assigned flavor and disk size for VMs selected for migration by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2137
|
||||||
|
* [1930] Fix CentOS 7 conversion failure from e2fsck bitmap errors by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2134
|
||||||
|
* Delete associated agent nodes when OpenstackCreds is deleted by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/2119
|
||||||
|
* #2125: Move Proxy VM Credentials Navigation from Credentials to Migration Menu by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2138
|
||||||
|
* Refactor: ReservePortsForVM by @spai-p9 in https://github.com/platform9/vjailbreak/pull/2140
|
||||||
|
* [2012] Fix SUSE GRUB Legacy device references post-migration by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2133
|
||||||
|
* AI analysis of migration failures by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/1998
|
||||||
|
* [1801] Twice HOTPLUG_CPU_MAX/HOTPLUG_MEMORY_MAX metadata so migrated VMs can be resized on PCD by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2127
|
||||||
|
* [2167] fix(v2v-helper): Install vendored libnbd with libnbd-devel by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2166
|
||||||
|
* When Ip is empty and fallback to dhcp true ask pcd to assign ip via dhcp by @spai-p9 in https://github.com/platform9/vjailbreak/pull/2153
|
||||||
|
* [2161] fix(ui): Global Settings Save button silently dead by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2162
|
||||||
|
* [428] Added ability to preserve tags, attributes, and custom metadata attached to the virtual machine by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2146
|
||||||
|
* [2115] Fix IP address not populating on port creation due to MAC address case mismatch by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2160
|
||||||
|
* [428] UI: Added ability to preserve tags, attributes, and custom metadata attached to the virtual machine by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2145
|
||||||
|
* [2096] Default removeVMwareTools to true by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/2159
|
||||||
|
* Make clean up both agents and vjb nodes to run as background and improve reliability by @spai-p9 in https://github.com/platform9/vjailbreak/pull/2155
|
||||||
|
* Refactoring boot partition detection by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2168
|
||||||
|
* Separate out nbd and virtv2v debug logs by @spai-p9 in https://github.com/platform9/vjailbreak/pull/2165
|
||||||
|
https://github.com/platform9/vjailbreak/pull/2172
|
||||||
|
* [2173] Remove beta tag from Storage Accelerated Copy by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2177
|
||||||
|
* [2152] Add MigrationBlueprint CRD to support migration templates by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2158
|
||||||
|
* [2175] UI patch call for proxy vm retry by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2181
|
||||||
|
* [2176] Fix tags toggle needing two clicks to enable by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2183
|
||||||
|
* [2184] Fix Migration Options toggles needing two clicks to enable by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2185
|
||||||
|
* #2120: Add Support for Migration Templates and Saved Configurations by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2180
|
||||||
|
* Configure guest network incase of ubuntu for fallback to dhcp case by @spai-p9 in https://github.com/platform9/vjailbreak/pull/2182
|
||||||
|
* [2178] fix(migration): disable persist network interfaces when Preserve IP is off and mapped to diff network by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2189
|
||||||
|
* Feature: Add error propogation to UI from debug logs for failures by @spai-p9 in https://github.com/platform9/vjailbreak/pull/2170
|
||||||
|
* [2213] Fix migration stuck in ConvertingDisk after transient VM creation timeout by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/2192
|
||||||
|
* [2143] unique port names for multi-NIC VMs using network+subnet+vmname by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/2147
|
||||||
|
* [2191] Grid/list toggle wraps left instead of staying inline on Templates tooolbar by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2199
|
||||||
|
* [2193] Prevent checkbox selection column from being hidden via Manage Columns by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2198
|
||||||
|
* [2194] Fix: Converting Disk status should not show count of disks by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2200
|
||||||
|
* [2202] Fix: AI Analysis key configuration redirect to correct settings tab by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2204
|
||||||
|
* feat: add data-only migration mode (no VM creation) (#492) by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/2171
|
||||||
|
* Support encrypted volume types in pcd. by @spai-p9 in https://github.com/platform9/vjailbreak/pull/2208
|
||||||
|
* [2201] Show migration failure messages on the UI by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2205
|
||||||
|
* [2203] Fix: Disable migration progress bar by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2210
|
||||||
|
* #2209: Step check marks doesnt disable if user disable the option by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2215
|
||||||
|
* [2214] Fix: Controller/pod log search returns zero results for lines that exist by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2221
|
||||||
|
* [2217] Fix: Remove stale network/storage mappings when VMs are deselected by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2222
|
||||||
|
* feat(dev): add Claude Code agent definitions for vjailbreak workflows by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/2223
|
||||||
|
* [2195] Fix incorrect step timings on the migration detail page by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2225
|
||||||
|
* [2213] Fix: Migration phase permanently frozen at Failed from transient kubelet events by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2229
|
||||||
|
* [2234] Fix: remove VM selection from template creation and refactor pruning of mappings by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2233
|
||||||
|
* [CI] modify pre-release actions to not skip builds by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/2239
|
||||||
|
|
||||||
|
## New Contributors
|
||||||
|
* @gtherond made their first contribution in https://github.com/platform9/vjailbreak/pull/2075
|
||||||
|
|
||||||
|
## Highlights
|
||||||
|
|
||||||
|
* Introduced log analysis for failed migrations using Anthropic AI to help identify potential root causes and simplify troubleshooting.
|
||||||
|
* Added ability to preserve source vCenter VM tags, attributes, and custom metadata during migration.
|
||||||
|
* Promoted Storage Assisted Migration to General Availability (GA).
|
||||||
|
* Added support for Migration Templates and Saved Configurations to streamline repeated migration workflows.
|
||||||
|
* Added support for Data-Only migration mode, enabling data transfer without creating the destination VM.
|
||||||
|
* Added support for migrating KMS-encrypted source VMs.
|
||||||
|
|
||||||
|
## Known Limitations
|
||||||
|
|
||||||
|
* The **Data-Only** migration option is not preserved when a migration is retried using the **Retry** button. See [[Issue #2245](https://github.com/platform9/vjailbreak/issues/2245)] for details.
|
||||||
|
* Migrations of VMs running **RHEL 7.9** may intermittently encounter a disk index-related issue. Retrying the migration typically resolves the problem.
|
||||||
|
* When using the **Hotplug** flavor for migration, the destination VM's **Maximum CPU** and **Maximum Memory** values are set to twice the original VM's configured CPU and memory in vCenter.
|
||||||
|
* Migration of **SUSE Linux Enterprise Server (SLES)** and **SUSE Linux Enterprise Desktop (SLED)** systems using **Legacy GRUB 0.97** is not supported.
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/platform9/vjailbreak/compare/v0.4.7...v0.4.8
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
# v0.4.9
|
||||||
|
|
||||||
|
- **Tag:** `v0.4.9`
|
||||||
|
- **Published:** 2026-08-18T12:40:48Z
|
||||||
|
- **Source release:** https://github.com/platform9/vjailbreak/releases/tag/v0.4.9
|
||||||
|
|
||||||
|
## Release Notes
|
||||||
|
|
||||||
|
## What's Changed
|
||||||
|
* improve vjb debug skill and add security review skill by @OmkarDeshpande7 in https://github.com/platform9/vjailbreak/pull/2230
|
||||||
|
* [2247] Fix: 403 Forbidden fetching migration ConfigMap on migration details page by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2253
|
||||||
|
* [2179] fix(migration): recompute subnet-mismatch warning when IP changes after network mapping by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2190
|
||||||
|
* #2211: UI: Filter not working by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2267
|
||||||
|
* [2270] fix: report failed vmkfstools clones as failures by @spai-p9 in https://github.com/platform9/vjailbreak/pull/2272
|
||||||
|
* [2245] Fix: Persist data-only, source tags and custom metadata when retrying a failed migration by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2264
|
||||||
|
* [2246] Show data-only mode in migration details page policies by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2275
|
||||||
|
* [2262] Warn before upgrade cleanup and gate Upgrade on cleanup by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2276
|
||||||
|
* [2257] Fix migration failure when the guest root filesystem spans multiple disks by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2232
|
||||||
|
* [2283] [Claude] Constitution v1.3.0 — migration form field parity + explicit UI K8s access by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2281
|
||||||
|
* [2228] Cannot create cred with same name if previous attempt failed by @AbhijeetThakur in https://github.com/platform9/vjailbreak/pull/2249
|
||||||
|
* [2279] fix(upgrade): server-side apply manifests so bound PVCs don't fail the CRD phase by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2284
|
||||||
|
* [2278] Adding ability to migrate LDM VMs by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2277
|
||||||
|
* [2286] Added vjailbreak-ai to the upgrade flow by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2285
|
||||||
|
* [2289] LDM UI popup renaming by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2291
|
||||||
|
* [2296] fix win2k12 troubleshooting mode by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2297
|
||||||
|
* [2287] Adding extra phase for transition from sata to virtio by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2293
|
||||||
|
* [2290] Adding disk detach path on keep sata option by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2295
|
||||||
|
* [2288] marking success on keep sata path by @meghansh-pf9 in https://github.com/platform9/vjailbreak/pull/2294
|
||||||
|
* [2279] fix(upgrade): keep the AI PVC out of 00crds.yaml by @sarika-pf9 in https://github.com/platform9/vjailbreak/pull/2299
|
||||||
|
|
||||||
|
## Highlights
|
||||||
|
|
||||||
|
* Added support for Windows VMs with LDM system disk
|
||||||
|
* UI Retry related stability fixes
|
||||||
|
* Added support for Linux VMs with BTRFS
|
||||||
|
|
||||||
|
## Known Limitations
|
||||||
|
|
||||||
|
* Race condition with vjailbreak accelerated proxy - #2300
|
||||||
|
* Multi-IP assignment limitation - #2163
|
||||||
|
* Incorrect migration copy progress on UI - #2139
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/platform9/vjailbreak/compare/v0.4.8...v0.4.9
|
||||||
Reference in New Issue
Block a user