Kubernetes Solo development environment windows - windows

this project seems to be great to start out with kubernetes on osx https://github.com/TheNewNormal/kube-solo-osx but is there somethign similar for windows?

You can use minikube to set up a Kubernetes cluster on a Windows machine. It'll create a virtual machine running Linux in which it will set up Kubernetes for you. You can then connect to Kubernetes running in that VM from your Windows environment.
If you want to setup a local Kubernetes cluster with both Linux and Windows-based nodes, have a look at kubernetes-windows-vagrant, which will use Vagrant t create the VMs and set up the environment for you.

As far as I know, there is no windows based Kubernetes dev env.

Related

Kubernetes on single Windows Server Core node cluster

My understanding is that Kubernetes is more efficient UI for managing large clusters of containers, otherwise you're stuck with the command line. As of August 2018, It seems multi-platform support on Docker for Windows is still experimental (https://github.com/moby/moby/issues/33850, https://github.com/docker/for-win/issues/2079). Running any Linux image with the --isolation hyperv after pulling with the --platform linux switches doesn't work if not running on expermintal flag. How to enable to experimental flag on Docker for Windows Server core isn't documented. So setting up a single node kubernetes cluster on Windows Server 1803+ for QA purposes probably isn't well supported or even documented. Being an exclusive Windows shop, having to use a Kubernetes on Linux doesn't seem to make sense especially when the whole point of using Docker is to automate environments. What's the point of making environment configuration automatic when you still need to administer a Linux server.
How do you setup Kubernetes on Windows Server Core 1803 as a single node cluster?
You can quite easily set up one node Kubernetes cluster on Windows using minikube. You can use a native hypervisor (Hyper-V) if you want, but it is more recommended to use VirtualBox at this time.
In both cases, a Linux virtual machine will run on your server, and you will be able to access it with the native version of kubectl to manage the cluster.
Here are two manuals that can help you to do that (I can guess it will work on the Windows Server in the same way):
Tutorial : Getting Started with Kubernetes on your Windows Laptop with Minikube
Minikube on Windows 10 with Hyper-V
Here is an explanation of how you can use Windows server as a worker node in Kubernetes:
Using Windows Server Containers in Kubernetes
Kubernetes on Windows
Microsoft announces that the next version of Windows Server will have better support of Kubenetes and it's ready for testing:
Windows Server 2019 will feature Linux and Kubernetes support

How is my Host environment interacting with my VM? Hadoop/HortonWorks

I'm learning Hadoop. We just installed a HortonWorks Sandbox on a VM. Once we start the VM, we're able to use our Host's web browser to interact with the VM.
I don't really understand this. I thought the Host and VM were completely isolated?
Why when I launch the VM, can I then use the web interface on my Host computer to interact with the VM? May be a simple question but I've never done this before and I've never used a VM like this.
Thanks
The purpose of a VM is to give an isolated environment yes, but the VM software is still running on your host, and using its hardware.
Your network interface is the same and you're using "port forwarding" features of the VM network interface.
Its nothing to do with Hadoop or that VM, but the settings it came installed with.
Similar settings are applied by web or other application developers that want to test their software in different environments. You don't need a desktop / GUI in a VM to test most server applications.
(Worth pointing out that the latest Hortonworks VM also runs Docker internally, so ports are forwarded out of a container to be exposed by the VM)

Can I create a docker swarm network with few linux nodes and few windows node being part of the same overlay network?

Is it possible to create a docker swarm network which contains a mix of Linux machines and windows machines each running their own containers on them ?
If yes, is there any way I can test such a setup on an Ubuntu desktop? Right now I use docker-machine to create multiple VM nodes on my Ubuntu and make them join the docker swarm. I need to test the setup with a mix of linux and windows nodes. I could not find any way to create a windows VM on a linux machine using docker-machine. What is the recommended way of testing a setup like this, if any at all ?
Have you considered something like Azure? Docker Machine natively supports their platform: https://docs.docker.com/machine/drivers/azure/.

Managing dockers on Windows

I'm using dockers on a Windows server 2016, to run all sorts of Windows applications/tasks.
There are several solutions to manage dockers, such as swarm and marathon, but they don't work on Windows (or do work on Windows but via virtual box vm, which is problematic for my needs).
In the future mesos and dc/os will support Windows, but in the meanwhile,
is there an alternative that can work for Windows?
I'd suggest setting up a docker container to manage the rest of your docker.
A couple containers which do exactly that:
http://portainer.io/
DockerUI
If you don't like that you could use a (local) gui to manage it, the only one I know of is:
simple-docker-ui

Is it possible to install VMWare Server on Amazon's EC2?

We are looking to move all of our systems to a virtualized env.
We will be going with EC2 and it appears that if we can install something like vmware or KVM on EC2 then create VMs as needed it would be the most cost effective solution for us.
Is this possible?
thanks!
EC2 is already a virtualized environment; it uses the Xen virtualization manager, which is an open source equivalent to VMWare server. You can create VMs with EC2, customize them and save them as Amazon Machine Images (AMIs).
See the Amazon documentation for a more comprehensive introduction.

Resources