Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IPI OSCP 4.9 vSphere OVA import rpc error #9352

Open
Likqez opened this issue Jan 9, 2025 · 1 comment
Open

IPI OSCP 4.9 vSphere OVA import rpc error #9352

Likqez opened this issue Jan 9, 2025 · 1 comment

Comments

@Likqez
Copy link

Likqez commented Jan 9, 2025

Version

$ openshift-install version
./openshift-install 4.9.59
built from commit 1882c69e27b57b5b90904de718a4bc7a304c5543
release image quay.io/openshift-release-dev/ocp-release@sha256:b22d8c20d3f7fc0afb8654f5df4cfafa8230ad6fe58c0c48760c3f42a3aae5fd
release architecture amd64

Platform:

vSphere Client version 7.0.3.00500
ESXi host(s) version: 6.7.0 and build: 18828794

IPI in disconnected environment.
Mirror registry with: quay.io/openshift-release-dev/ocp-release:4.9.59-x86_64.

What happened?

vSphere Installation Fails During RHCOS OVA Import

The OpenShift installation process fails during the RHCOS OVA import step, immediately after the vsphere_folder.folder creation. This occurs despite the installer successfully creating the required tag and tag category.

Using installation config from install-config.yml and running:

export TF_LOG=TRACE && ./openshift-install create cluster --dir=rhos-install --log-level=DEBUG

The OVA file is being served via a temporary HTTP server on the installation host and is accessible to the vCenter instance. Manual verification confirms that the OVA can be successfully deployed using vCenter's "Deploy OVF Template" UI function.

Relevant error logs:

[DEBUG] plugin.terraform-provider-vsphereprivate: 2025/01/09 13:24:13 [DEBUG] /home/lanznerl/.cache/openshift-installer/image_cache/rhcos-vmware.x86_64.ova: Beginning import ova create
[DEBUG] plugin.terraform-provider-vsphereprivate: panic: runtime error: invalid memory address or nil pointer dereference
[DEBUG] plugin.terraform-provider-vsphereprivate: [signal SIGSEGV: segmentation violation code=0x1 addr=0x50 pc=0xd421755]
[DEBUG] plugin.terraform-provider-vsphereprivate:
[DEBUG] plugin.terraform-provider-vsphereprivate: goroutine 118 [running]:
[DEBUG] plugin.terraform-provider-vsphereprivate: github.com/openshift/installer/pkg/terraform/exec/plugins/vsphereprivate.findImportOvaParams(0xc00072f8c0, 0xc00134847a, 0x3, 0xc001348467, 0x7, 0xc001348490, 0xe, 0xc0013484d0, 0xa, 0xc0013484b0, ...)
[DEBUG] plugin.terraform-provider-vsphereprivate:    /go/src/github.com/openshift/installer/pkg/terraform/exec/plugins/vsphereprivate/resource_vsphereprivate_import_ova.go:215 +0x10f5
[DEBUG] plugin.terraform-provider-vsphereprivate: github.com/openshift/installer/pkg/terraform/exec/plugins/vsphereprivate.resourceVSpherePrivateImportOvaCreate(0xc00093d7a0, 0xdd5dac0, 0xc0011ccbe0, 0x0, 0x0)
[DEBUG] plugin.terraform-provider-vsphereprivate:    /go/src/github.com/openshift/installer/pkg/terraform/exec/plugins/vsphereprivate/resource_vsphereprivate_import_ova.go:318 +0x493
[DEBUG] plugin.terraform-provider-vsphereprivate: github.com/hashicorp/terraform-plugin-sdk/helper/schema.(*Resource).Apply(0xc0010239e0, 0xc0016e1540, 0xc000130a80, 0xdd5dac0, 0xc0011ccbe0, 0xebb8a01, 0xc000dafdb8, 0xc0016f96b0)
[DEBUG] plugin.terraform-provider-vsphereprivate:    /go/src/github.com/openshift/installer/vendor/github.com/hashicorp/terraform-plugin-sdk/helper/schema/resource.go:310 +0x375
[DEBUG] plugin.terraform-provider-vsphereprivate: github.com/hashicorp/terraform-plugin-sdk/helper/schema.(*Provider).Apply(0xc000e3de00, 0xc0011d9a38, 0xc0016e1540, 0xc000130a80, 0xc000b33048, 0xc0016fc5e0, 0xebc2de0)
[DEBUG] plugin.terraform-provider-vsphereprivate:    /go/src/github.com/openshift/installer/vendor/github.com/hashicorp/terraform-plugin-sdk/helper/schema/provider.go:294 +0x99
[DEBUG] plugin.terraform-provider-vsphereprivate: github.com/hashicorp/terraform-plugin-sdk/internal/helper/plugin.(*GRPCProviderServer).ApplyResourceChange(0xc001012078, 0x123fffc8, 0xc0016f89c0, 0xc00093d1f0, 0xc001012078, 0xc0016f89c0, 0xc001182ba0)
[DEBUG] plugin.terraform-provider-vsphereprivate:    /go/src/github.com/openshift/installer/vendor/github.com/hashicorp/terraform-plugin-sdk/internal/helper/plugin/grpc_provider.go:885 +0x8a5
[DEBUG] plugin.terraform-provider-vsphereprivate: github.com/hashicorp/terraform-plugin-sdk/tfplugin5._Provider_ApplyResourceChange_Handler(0x105073c0, 0xc001012078, 0x123fffc8, 0xc0016f89c0, 0xc00031b800, 0x0, 0x123fffc8, 0xc0016f89c0, 0xc0016fe2c0, 0x28c)
[DEBUG] plugin.terraform-provider-vsphereprivate:    /go/src/github.com/openshift/installer/vendor/github.com/hashicorp/terraform-plugin-sdk/tfplugin5/tfplugin5.pb.go:3305 +0x214
[DEBUG] plugin.terraform-provider-vsphereprivate: google.golang.org/grpc.(*Server).processUnaryRPC(0xc0005d8000, 0x124aaa38, 0xc000740d80, 0xc0009f6300, 0xc000ffe960, 0x1a69e440, 0x0, 0x0, 0x0)
[DEBUG] plugin.terraform-provider-vsphereprivate:    /go/src/github.com/openshift/installer/vendor/google.golang.org/grpc/server.go:1082 +0x52b
[DEBUG] plugin.terraform-provider-vsphereprivate: google.golang.org/grpc.(*Server).handleStream(0xc0005d8000, 0x124aaa38, 0xc000740d80, 0xc0009f6300, 0x0)
[DEBUG] plugin.terraform-provider-vsphereprivate:    /go/src/github.com/openshift/installer/vendor/google.golang.org/grpc/server.go:1405 +0xccf
[DEBUG] plugin.terraform-provider-vsphereprivate: google.golang.org/grpc.(*Server).serveStreams.func1.1(0xc000076690, 0xc0005d8000, 0x124aaa38, 0xc000740d80, 0xc0009f6300)
[DEBUG] plugin.terraform-provider-vsphereprivate:    /go/src/github.com/openshift/installer/vendor/google.golang.org/grpc/server.go:746 +0xab
[DEBUG] plugin.terraform-provider-vsphereprivate: created by google.golang.org/grpc.(*Server).serveStreams.func1
[DEBUG] plugin.terraform-provider-vsphereprivate:    /go/src/github.com/openshift/installer/vendor/google.golang.org/grpc/server.go:744 +0xa5
[DEBUG] vsphereprivate_import_ova.import: apply errored, but we're indicating that via the Error pointer rather than returning it: rpc error: code = Unavailable desc = transport is closing

What you expected to happen?

The import process to complete, pulling

How to reproduce it (as minimally and precisely as possible)?

$ openshift-install create install-config
  1. Select vSphere, give all required values.
  2. Select a network with a space in its name.

Since this is not dependant on which ova file is uploaded, download or choose any file and
go cd in its root dir

$ python3 -m http.server 80

Keep that session open until after u execute.

Alter the install-config.yaml and set platform.vsphere.clusterOSImage to http://localhost:80/<OSImageFile>.

export TF_LOG=TRACE && openshift-install create cluster --log-level=DEBUG
@Likqez
Copy link
Author

Likqez commented Jan 13, 2025

I got it working by altering the installer to my needs.
I removed

if importOvaParams.HardwareVersion != vmx13 {
...
}

from pkg/terraform/exec/plugins/vsphereprivate/resource_vsphereprivate_import_ova.go:214
because hostSystemManagedObject.Config had Null Values Only.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant