adamant-kite-43734
08/04/2023, 12:17 PMagreeable-oil-87482
08/04/2023, 7:33 PMens160
the correct interface name for your VM?agreeable-oil-87482
08/04/2023, 7:34 PMswift-sunset-4572
08/04/2023, 7:35 PMswift-sunset-4572
08/04/2023, 7:35 PMagreeable-oil-87482
08/04/2023, 7:36 PMagreeable-oil-87482
08/04/2023, 7:36 PMagreeable-oil-87482
08/04/2023, 7:37 PMswift-sunset-4572
08/04/2023, 7:38 PMvmtoolsd --cmd 'info-get guestinfo.ovfEnv' > /tmp/ovfenv
This command then doesnt shows anything thenagreeable-oil-87482
08/04/2023, 7:39 PMagreeable-oil-87482
08/04/2023, 7:39 PMswift-sunset-4572
08/04/2023, 7:40 PMagreeable-oil-87482
08/04/2023, 7:43 PMswift-sunset-4572
08/04/2023, 7:47 PMagreeable-oil-87482
08/04/2023, 7:48 PMswift-sunset-4572
08/04/2023, 7:51 PMcom.vmware.guestinfo IPv4 fixedAllocated
guestinfo.interface.0.ip.0.address ip:atl2_dvp_devtestk8_922
guestinfo.interface.0.ip.0.netmask ${netmask:atl2_dvp_devtestk8_922}
guestinfo.interface.0.route.0.gateway ${gateway:atl2_dvp_devtestk8_922}
guestinfo.dns.servers ${dns:atl2_dvp_devtestk8_922}
swift-sunset-4572
08/04/2023, 7:51 PMswift-sunset-4572
08/04/2023, 7:51 PMagreeable-oil-87482
08/04/2023, 7:52 PMswift-sunset-4572
08/04/2023, 7:52 PMagreeable-oil-87482
08/04/2023, 7:54 PMswift-sunset-4572
08/04/2023, 7:58 PMagreeable-oil-87482
08/04/2023, 8:03 PMagreeable-oil-87482
08/04/2023, 8:04 PMswift-sunset-4572
08/04/2023, 8:05 PMagreeable-oil-87482
08/04/2023, 8:06 PMagreeable-oil-87482
08/04/2023, 8:06 PMswift-sunset-4572
08/04/2023, 8:06 PMvmtoolsd --cmd 'info-get guestinfo.ovfEnv'
And thats why this command shows no values tried running it on vm
swift-sunset-4572
08/04/2023, 8:07 PMcom.vmware.guestinfo IPv4 fixedAllocated
guestinfo.interface.0.ip.0.address ip:atl2_dvp_devtestk8_922
guestinfo.interface.0.ip.0.netmask ${netmask:atl2_dvp_devtestk8_922}
guestinfo.interface.0.route.0.gateway ${gateway:atl2_dvp_devtestk8_922}
guestinfo.dns.servers ${dns:atl2_dvp_devtestk8_922}
swift-sunset-4572
08/04/2023, 8:07 PMswift-sunset-4572
08/04/2023, 8:09 PMswift-sunset-4572
08/04/2023, 8:10 PMFetching the vsphere credential metadata from the rancher
data "rancher2_cloud_credential" "auth" {
name = "vsphereprgx"
}
# creating a cluster using the node pools
resource "rancher2_cluster_v2" "foo-rke2" {
name = var.cluster_name
kubernetes_version = var.kubernetes_version # which kubernetes version is to be deployed
enable_network_policy = var.enable_network_policy
default_cluster_role_for_project_members = var.default_cluster_role_for_project_members
rke_config {
# creating the machine global config
machine_global_config = <<EOF
cni: ${var.cni}
disable-kube-proxy: false
etcd-expose-metrics: false
kubelet-arg:
max-pods=250
EOF
# creating dynamic machine pools
dynamic "machine_pools" {
for_each = var.node
content {
cloud_credential_secret_name = data.rancher2_cloud_credential.auth.id
control_plane_role = machine_pools.key == "ctl_plane" ? true : false
etcd_role = machine_pools.key == "ctl_plane" ? true : false
name = machine_pools.value.name
quantity = machine_pools.value.quantity
worker_role = machine_pools.key != "ctl_plane" ? true : false
machine_config {
kind = rancher2_machine_config_v2.machineconfig[machine_pools.key].kind
name = replace(rancher2_machine_config_v2.machineconfig[machine_pools.key].name, "_", "-")
}
} # End of dynamic for_each content
} # End of machine_pools
}
}
# creating a machine config to be used while creating the cluster
resource "rancher2_machine_config_v2" "machineconfig" {
for_each = var.node
generate_name = "${each.value.name}-config"
vsphere_config {
cfgparam = ["disk.enableUUID=TRUE"] # Disk UUID is Required for vSphere Storage Provider ( mandatory for the cluster to work )
clone_from = var.vsphere_env.cloud_image_name
cloud_config = file("/root/terraform/cloud.yaml", )
cpu_count = each.value.cpu
creation_type = "template"
datacenter = var.vsphere_env.datacenter
datastore = var.vsphere_env.datastore
disk_size = each.value.disk_size
memory_size = each.value.ram
network = var.vsphere_env.vm_network
folder = var.vsphere_env.folder
pool = var.vsphere_env.pool
}
}
agreeable-oil-87482
08/04/2023, 8:10 PMagreeable-oil-87482
08/04/2023, 8:10 PMagreeable-oil-87482
08/04/2023, 8:11 PMswift-sunset-4572
08/04/2023, 8:11 PMswift-sunset-4572
08/04/2023, 8:57 PMagreeable-oil-87482
08/05/2023, 6:01 AMswift-sunset-4572
08/05/2023, 7:38 AMagreeable-oil-87482
08/05/2023, 7:39 AMswift-sunset-4572
08/05/2023, 7:41 AMagreeable-oil-87482
08/06/2023, 11:30 AMswift-sunset-4572
08/07/2023, 4:42 AMswift-sunset-4572
08/07/2023, 5:09 AMEdit: This post has been updated to reflect changes in newer versions of Rancher.
Note: As mentioned by Jonathan in the comments, disabling cloud-init's initial network configuration is recommended. To do this, create a file:
/etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
To contain:
network: {config: disabled}
In your VM template.
How networking configuration is applied to k8s nodes (or VM's in general) in on-premises environments is usually achieved by one of two ways – DHCP or static. For some, DHCP is not a popular option and static addresses can be time-consuming to manage, particularly when there's no IPAM feature in Rancher. In this blog post I go through how to leverage vSphere Network Protocol Profiles in conjunction with Rancher and Cloud-Init to reliably, and predictably apply static IP addresses to deployed nodes.
but i am removing the 50-cloud-init.yaml
before creating a vm template , evven then should i add this 99-disable-network-config.cfgswift-sunset-4572
08/07/2023, 7:13 AMswift-sunset-4572
08/07/2023, 7:13 AMswift-sunset-4572
08/07/2023, 7:14 AM/etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
i created this file in the template and ran this script as well --> https://github.com/David-VTUK/Rancher-Packer/blob/d2822931a12b1967f4c3362072c5f386fb4eb57f/vSphere/ubuntu_2204/script.sh#L22swift-sunset-4572
08/07/2023, 7:15 AM