Crossplane - failure to delete port resource in Claim
I have created a Claim that includes a Device, Port, PortVlanAttachment and a Vlan. In order to create the Port I have to pass the Device Eth1 port UUID to the 'spec.forProvider.portId' of the Port Kind. This works and picks up the vlan info, but upon deleting the claim, the port is not deleted automatically as expected. The following event messages can be seen: Conflicting configuration arguments: "vlan_ids": conflicts with vxlan_ids Warning CannotObserveExternalResource 8s (x10 over 6m27s) managed/metal.equinix.jet.crossplane.io/v1alpha1, kind=port cannot run refresh: refresh failed: Conflicting configuration arguments: "vlan_ids": conflicts with vxlan_ids Conflicting configuration arguments: "vxlan_ids": conflicts with vlan_ids The spec of the object looks like this: Spec: Deletion Policy: Delete For Provider: Bonded: false Port Id: b561e487-fbb0-4a2c-98e7-22da331ed316 Vlan Ids: 73f648b5-9b6b-4076-a6ab-673aa45c7152 Vxlan Ids: 1000 Provider Config Ref: Name: default In order to resolve the issue I need to manually delete the resources finalizer.473Views2likes7CommentsCrossplane - Metal Vlan description not updated in UI
When editing an existing Metal Vlan resource's spec to add a description, the string is applied to the managed resource but is not updated in the UI. If the description is included in the original Vlan resource spec during creation, the UI shows the description. apiVersion: metal.equinix.jet.crossplane.io/v1alpha1 kind: Vlan metadata: name: myvlan1 spec: forProvider: description: | Dummy native VLAN for purposes of enabling tagging on the trunk port. projectId: <uuid> metro: sv If the spec.forProvider.description is left out during the creation, then editing the resource and applying the change will not cause the description to show up in the UI. I'm not sure if this is expected or not.152Views0likes1CommentCrossplane Metal provider - lifecycle.prevent_destroy error
After I spin up a Metal Device using the Crossplane Equinix provider, it comes up but in the events I see the following. I'm not sure if it is expected or a bug? Managed resource event message: Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal CreatedExternalResource 3m7s managed/metal.equinix.jet.crossplane.io/v1alpha1, kind=device Successfully requested creation of external resource Warning CannotObserveExternalResource 13s (x6 over 30s) managed/metal.equinix.jet.crossplane.io/v1alpha1, kind=device cannot run plan: plan failed: Instance cannot be destroyed: Resource equinix_metal_device.my-gateway-sv-4x2x4-4gfpq has lifecycle.prevent_destroy set, but the plan calls for this resource to be destroyed. To avoid this error and continue with the plan, either disable lifecycle.prevent_destroy or reduce the scope of the plan using the -target flag. Field in XRD for plan is: "plan: m3.small.x86" Environment: Crossplane v1.16 Equinix Provider: v0.6.1 K8s: Kind 1.27187Views1like1CommentTrouble updating Crossplane Claim status with Equinix Provider
I’m having some trouble using the Equinix providers within a Claim and I’m not sure where the problem lies. The issue is that I am trying to take the ID uuid from the Devicestatus.atProvider.idand update astatus.idfield in my xrd claim, but the status never seems to get updated. This works fine with the AWS provider as an example. In my example I want to grab the UUID of the device and populate the Claim XRD's status.id field, but I do not see this population happening. I use the same technique with the upbound AWS provider so I know it is valid. Within the composition.yaml: - type: ToCompositeFieldPath fromFieldPath: status.atProvider.id toFieldPath: status.id Has anyone else gotten this to work?260Views1like2CommentsFlatcar: A Cloud Native Take on Linux
A few years ago, the folks behind Flatcar Container Linux made it their business to change that, to give the world a version of Linux that would behave and be managed like a cloud native developer would expect. Today, engineers can configure and deploy Flatcar instances using the same declarative approach they use to create a Kubernetes cluster: by listing their desired configuration details in a YAML doc and then having the OS image automatically installed and configured on as many servers as they would like. Here’s how the Flatcar team does this, with a little bit of help from its friends at Equinix! Read more on Deploy.Equinix.com398Views0likes0CommentsBuilding microservices using Github Actions
Wamaitha Nyamu shows us microservices in this livestream. We'll discuss how to use IaC to build microservices, why they're more efficient, and the software that makes it all possible. If you want to learn about Terraform, Ansible, Docker, and Github Actions then come join us.1.3KViews0likes0CommentsWhat is your offsite disaster recovery strategy?
In this blog, we discussed how Equinix customers simplified and strengthened strategies for bringing workloads back online quickly and avoiding downtime. What are the strategies, solutions, and best practices your organization has in place to achieve optimal recovery time and recovery point objectives?5.3KViews2likes0CommentsTraceroute Series: Episode 3
In episode 3 of the Traceroute Podcast, Dave Temkin, Ingrid Burrington, Jack Waters, and Andrew Blum join us to discuss how the physical internet works. Detailing the hidden infrastructure involved in getting computers connected around the world, they shed some light on the fact that, contrary to what digital natives might think, your connection to the World Wide Web isn't 100% wireless.2.1KViews0likes0Comments