I successfully set up nested virtualization in Azure. Using NAT port forwarding, I can RDP to the guest VMs without any issue. For us, this is not a complete solution as we need to access the guest machine (just on the internal network) by machine name not just through a unique port for each machine. For example, if I have a guest VM called guest1, I should be able to launch explorer and go directly to \guest1\c$ (from not just the host, but from outside the host as well) just as would able to if guest1 were a non-nested VM. All we can do right now is RDP to guest1, that too through a unique port, so guest1:port1 for guest1 and guest2:port2 for guest2.
Is this possible? Thanks in advance!
PS: I followed the instructions here (very useful): https://www.thomasmaurer.ch/2017/07/how-to-setup-nested-virtualization-in-microsoft-azure/
Related
I have a Vm from Azure and in that vm I have another vm running in Hyper-v. That vm in Hyper-v is running a Ubuntu Linux (64 bit) guest operating system, with a virtual appliance. When I run it and it is finished booting, I'm given a IP address like this: "https://10.8.40.104/4442". The problem is I'm not able to access it from inside my 1 vm from Azure. I tried pulling up the browser and pasting the address, but nothing. I am quite new at this so its possible the solution is fairly simple.
Anyone have any idea how I can access that static IP address?
To install Hyper-V in Azure Nested Virtualization, you could follow steps in this blog:
There are (7) short steps that need to be completed to provision a
nested virtual machine inside Microsoft Azure:
Create an Azure VM capable of nesting (Windows Server 2016, etc)
Connect to the Azure VM
Install Hyper-V Feature inside the Azure VM
Create a NAT’ed vSwitch for outside connectivity
Create the guest virtual machine
Configure an IP Address on the nested guest virtual machine
Test Connectivity
For allowing connectivity to the nested virtual machine from outside, you need to create a new virtual switch that will be configured for NAT’ed access. The network flow will be like this: outside---host public IP---host private IP---NAT internal switch---Internal gateway---nested VM private IP.
Feel free to let me know if this helps or need further help.
I currently need to run some windows-specific software for part of a workflow, and I can't run it on my personal computer.
I have got the free account at Azure, so I thought I would use the remote windows machine. I created the VM, and I can see the login screen on Boot Diagnostics.
However, I can't connect to RDP. Tried several issues and solutions (all provided on Azure docs), to no avail.
A few steps I already did:
Checked network configs. Tried different external ports for RDP (if somehow the RDP port could be blocked somewhere). I also tried basic configuration, advanced configuration.
Re-created the external IP's. The machine can't be pinged, and I don't seem to be able to trace routes for them.
Re-deployed the machine, deleted and created a new machine.
Switched and tried different Linux RDP connectors, and even used a friends Windows computer to try to connect, to no avail.
I could gladly use any help troubleshooting this.
My machine is currently running Linux Mint, on the eduroam Wifi networks.
Thanks in advance, and feel free to ask for any additional information or configuration.
Properly, you could check if the RDP port is blocked on NSG(vm nic level or subnet level NSG), you could follow this to open the port.
Also, you could verify if the networking connectivity issue from your local computer to Azure following by Using Telnet to Test Port 3389 Functionality. For example, run telnet VMpublicIP 3389 in CMD as the administrator account.
If the RDP port is already enabled in NSG, see Troubleshoot an RDP general error in Azure VM and Troubleshoot Azure VM RDP connection issues by Event ID
Tried on another network and it worked. It seems eduroam blocks RDP even when it is on other ports.
I am trying out the Free Trial Microsoft Azure.
Basically I created an VM running Windows Server 2008 SP1.
There, I am running GeoServer, being able to access the geoserver from the local browser (eg: http://localhost:8080/geoserver/web)
Now, how to access this from a public browser? It has a public IP 13.93.154.109
which I can't even ping it, not to say to access it.
What did I miss out?
Note: I tried both classic/non-classic VM, result is the same.
Also, I am aware that there is an OpenGeo Suite out there for Azure. But it costs a lot. What I am trying to do is, to share the VM with the other existing product.
Thanks in advance.
localhost-from-vm
P.S: I am able to ping 13.93.154.109:3389 using PsPing instead of normal Ping.
You need to open the port 8080 to allow traffic on your VM.
Depending on how you have created the VM, it can be done in different ways:
If you have used the Classic workflow, you need to add an endpoint to your cloud service: https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-windows-classic-setup-endpoints/
If you have used the Azure Resource Manager workflow, you need to create an inbound rule in the network security group: https://azure.microsoft.com/en-us/documentation/articles/virtual-networks-create-nsg-arm-pportal/#create-rules-in-an-existing-nsg
I'm new to Azure (strike 1) and totally suck at networking (strike 2).
Nevertheless, I've got two VMs up and running in the same virtual network; one will act as a web server and the other will act as a SQL database server.
While I can see that their internal IP addresses are both in the same network I'm unable to verify that the machines can communicate with each other and am sort of confused regarding the appropriate place to address this.
Microsoft's own documentation says
All virtual machines that you create in Windows Azure can
automatically communicate using a private network channel with other
virtual machines in the same cloud service or virtual network.
However, you need to add an endpoint to a machine for other resources
on the Internet or other virtual networks to communicate with it. You
can associate specific ports and a protocol to endpoints. Resources
can connect to an endpoint by using a protocol of TCP or UDP. The TCP
protocol includes HTTP and HTTPS communication.
So why can't the machines at least ping each other via internal IPs? Is it Windows Firewall getting in the way? I'm starting to wonder if I've chose the wrong approach for a simple web server/database server setup. Please forgive my ignorance. Any help would be greatly appreciated.
If both the machines are in the same Virtual Network, then just turn off Windows Firewall and they will be able to ping each other. Other way is to just allow all incoming ICMP traffic in Windows Firewall with Advanced Settings.
However there is a trick. Both the machines will see each other by IP Addresses, but there will be no name resolution in so defined Virtual Network. Meaning that you won't be able to ping by name, but only by direct IP address. So, if want your Website (on VM1) to connect to SQL Server (on VM2), you have to address it by full IP Address, not machine name.
The only way to make name resolution within a Virtual Network is to use a dedicated DNS server, which you maintain and configure on-premises.
This article describes in details name resolution scenarios in Windows Azure. Your particular case is this:
Name resolution between virtual machines and role instances located in
the same virtual network, but different cloud services
You could potentially achieve name resolution, if you put your VMs is same cloud service. Thus you will not even require dedicated virtual network.
If your VMs are inside a Virtual Network in Azure, then you have to make sure two things.
Required Port is enabled.
Firewall is disabled on the server.
I was trying to connect to one VM where SQL Server DB was installed, from another VM. I Had to enable 1433 port in the VM where SQL was installed. For this you need to add an MSSQL endpoint to the VM on the azure management portal. After that i disabled windows firewall. Then i was able to connect to the VM from another.
I am basically a windows developer and very new to Sharepoint. I have Designed a small site in sharepoint on my virtual PC environment.
I want to access it from out side of VPC environment and also from other local LAN machines [like intranet].
How do i configure (IIS/Sharepoint Adm) to make my site as an intranet site?
I googled it, but not able to get desired information. I don't have much knowledge in ISS setting also, kindly provide any help in layman style.
You need to configure Virtual PC to use Virtual Networking:
In this case a virtual machine acts as
an independent computer in a network
with the host computer. If there is a
DHCP server in the network (Dynamic
Host Configuration Protocol) to assign
IP addresses, a virtual machine will
get it and will work as an independent
system in the network (otherwise, you
will have to specify an external IP
manually)
This is actually the default option in Virtual PC. You should be able to access the VM on the network as you would your own machine. Of course this means the VM's network settings must be valid for your network.
You shouldn't have to reconfigure anything is IIS/Sharepoint Adm to get this to work.