<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>David Sebban&#039;s Blog</title>
	<atom:link href="https://dsebban.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://dsebban.wordpress.com</link>
	<description>Diary of an ex-MVP playing with Windows, Power BI, Azure, etc...</description>
	<lastBuildDate>Thu, 07 Mar 2019 13:15:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<site xmlns="com-wordpress:feed-additions:1">16942766</site><cloud domain='dsebban.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>https://s0.wp.com/i/buttonw-com.png</url>
		<title>David Sebban&#039;s Blog</title>
		<link>https://dsebban.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="https://dsebban.wordpress.com/osd.xml" title="David Sebban&#039;s Blog" />
	<atom:link rel='hub' href='https://dsebban.wordpress.com/?pushpress=hub'/>
	<item>
		<title>Back from Microsoft Ignite &#124; The Tour &#8211; Berlin</title>
		<link>https://dsebban.wordpress.com/2019/03/07/back-from-microsoft-ignite-the-tour-berlin/</link>
					<comments>https://dsebban.wordpress.com/2019/03/07/back-from-microsoft-ignite-the-tour-berlin/#respond</comments>
		
		<dc:creator><![CDATA[David Sebban]]></dc:creator>
		<pubDate>Thu, 07 Mar 2019 13:15:05 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Container]]></category>
		<guid isPermaLink="false">http://dsebban.wordpress.com/?p=798</guid>

					<description><![CDATA[Hi everyone, After years of blogging on various platforms, I am now experiencing LinkedIn articles. I recently came back from Microsoft Ignite The Tour Berlin where I participated as a Microsoft Azure Containers Expert. This was a great experience and I received great feedback from the attendees who asked a lot of questions about Azure &#8230; <a class="more-link" href="https://dsebban.wordpress.com/2019/03/07/back-from-microsoft-ignite-the-tour-berlin/">More <span class="screen-reader-text">Back from Microsoft Ignite &#124; The Tour &#8211;&#160;Berlin</span></a>]]></description>
										<content:encoded><![CDATA[<p>Hi everyone,</p>
<p>After years of blogging on various platforms, I am now experiencing LinkedIn articles. I recently came back from <a href="https://www.microsoft.com/de-de/ignite-the-tour/berlin" target="_blank" rel="noopener nofollow noreferrer">Microsoft Ignite The Tour Berlin</a> where I participated as a Microsoft Azure Containers Expert. This was a great experience and I received great feedback from the attendees who asked a lot of questions about Azure Containers and Azure Kubernetes Services (AKS). I decided to list a few of those questions here and give the answers.</p>
<h2>How do containers communicate inside a cluster?</h2>
<p>This is a dev question, I&#8217;m not a developper myself but I can explain the principles. Let&#8217;s use the <a href="https://github.com/Azure-Samples/azure-voting-app-redis" target="_blank" rel="noopener nofollow noreferrer">azure voting demo app </a>as a reference. The YAML file describes 2 containers : 1 back-end container using the <a href="https://hub.docker.com/_/redis" target="_blank" rel="noopener nofollow noreferrer">redis docker image</a> called &#8220;<strong>azure-vote-back</strong>&#8220;, and 1 front end container using the <a href="https://hub.docker.com/r/microsoft/azure-vote-front" target="_blank" rel="noopener nofollow noreferrer">microsoft/azure-vote-front:v1 docker image</a> called &#8220;<strong>azure-vote-front</strong>&#8220;. In this container, the YAML file declares an environment variable called <strong>REDIS </strong>and the value is &#8220;<strong>azure-vote-back</strong>&#8221;</p>
<div class="slate-resizable-image-embed slate-image-embed__resize-middle">
<ul class="slate-image-embed__toolbar">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<p><img src="https://media.licdn.com/dms/image/C5612AQGGZ0dVkrxm0w/article-inline_image-shrink_1500_2232/0?e=1557360000&amp;v=beta&amp;t=59rZBKxsGL0-eh8KCjBarNSMbTGFpXzWplFlKUFV9xI" /></p>
<div class="slate-image-embed__link-form slate-image-embed__link-form--active"></div>
</div>
<p>Now that the environment is set, let&#8217;s look at the python code that runs in the <strong>azure-vote-front</strong> container:</p>
<div class="slate-resizable-image-embed slate-image-embed__resize-middle">
<ul class="slate-image-embed__toolbar">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<p><img src="https://media.licdn.com/dms/image/C5612AQFgl-m0T7tZeQ/article-inline_image-shrink_1000_1488/0?e=1557360000&amp;v=beta&amp;t=fmcUlN7iSwUseFhD1DK43DxdQljTmX01iQOA_AZv7SM" /></div>
<p>As you can see, in the code, we retrieve the redis server using the environment variable <strong>REDIS</strong> and now the code running in the front end knows how to reach the back end.</p>
<h2>How do I monitor my AKS cluster ?</h2>
<p>My demo was centered around custom Kubernetes clusters running in Azure, to monitor those clusters, I recommend using <a href="https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/" target="_blank" rel="noopener nofollow noreferrer">kubernetes dashboard</a> which comes with your kubernetes cluster</p>
<div class="slate-resizable-image-embed slate-image-embed__resize-full-width">
<ul class="slate-image-embed__toolbar">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<p><img class="slate-image-embed__resize-full-width" src="https://media.licdn.com/dms/image/C5612AQHIO2grejGtrQ/article-inline_image-shrink_1000_1488/0?e=1557360000&amp;v=beta&amp;t=e_AKZSGpE3KMrZlWPmw9vPPhwUH3PKCfJrABiBcaiew" /></div>
<p>That being said, AKS also offer monitoring options, make sure &#8220;<strong>Enable container monitoring</strong>&#8221; is activated when creating your cluster</p>
<div class="slate-resizable-image-embed slate-image-embed__resize-full-width">
<ul class="slate-image-embed__toolbar">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<p><img class="slate-image-embed__resize-full-width" src="https://media.licdn.com/dms/image/C5612AQGHKi5lNUJjKg/article-inline_image-shrink_1000_1488/0?e=1557360000&amp;v=beta&amp;t=XVbRxn-dCYVAkOUv9od-RnSXzgBuf5w0S4bRZtIdB_M" /></div>
<p>Once the cluster is created, you will be able to access monitoring data using the Insight feature in the monitoring section of your AKS Cluster</p>
<div class="slate-resizable-image-embed slate-image-embed__resize-full-width">
<ul class="slate-image-embed__toolbar">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<p><img class="slate-image-embed__resize-full-width" src="https://media.licdn.com/dms/image/C5612AQGfQntZ2ecraw/article-inline_image-shrink_1500_2232/0?e=1557360000&amp;v=beta&amp;t=1oyPth9EkZlOwaVoPry9zbAnRyJRs6-v4XRaWswJwWE" /></div>
<p>of course, Kubernetes dashboard is also an option to monitor your AKS Cluster, on the home page of your AKS Cluster, follow the instructions to get the credentials and launch the dashboard associated to your cluster.</p>
<div class="slate-resizable-image-embed slate-image-embed__resize-full-width">
<ul class="slate-image-embed__toolbar">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<p><img class="slate-image-embed__resize-full-width" src="https://media.licdn.com/dms/image/C5612AQHCydtTeNXs0Q/article-inline_image-shrink_1500_2232/0?e=1557360000&amp;v=beta&amp;t=DpYlPAO1JbB527Gon3Iw5gXZyVeQxY-EvjsHPnENUYs" /></div>
<h2>Can I build only one AKS cluster for my customers and bill them based on their consumptions?</h2>
<p>I had a great conversation with an MSP and a couple of Microsoft people, while there might be a technical answer to that question, the real answer is <strong>NO </strong>because that would be an Azure Service Terms Infringement.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://dsebban.wordpress.com/2019/03/07/back-from-microsoft-ignite-the-tour-berlin/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">798</post-id>
		<media:content url="https://2.gravatar.com/avatar/eb44069fe9eb62302e2f487c54bee27944e613f9c96166009c46ef167c521dfb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sebbandavid</media:title>
		</media:content>

		<media:content url="https://media.licdn.com/dms/image/C5612AQGGZ0dVkrxm0w/article-inline_image-shrink_1500_2232/0?e=1557360000&#038;v=beta&#038;t=59rZBKxsGL0-eh8KCjBarNSMbTGFpXzWplFlKUFV9xI" medium="image" />

		<media:content url="https://media.licdn.com/dms/image/C5612AQFgl-m0T7tZeQ/article-inline_image-shrink_1000_1488/0?e=1557360000&#038;v=beta&#038;t=fmcUlN7iSwUseFhD1DK43DxdQljTmX01iQOA_AZv7SM" medium="image" />

		<media:content url="https://media.licdn.com/dms/image/C5612AQHIO2grejGtrQ/article-inline_image-shrink_1000_1488/0?e=1557360000&#038;v=beta&#038;t=e_AKZSGpE3KMrZlWPmw9vPPhwUH3PKCfJrABiBcaiew" medium="image" />

		<media:content url="https://media.licdn.com/dms/image/C5612AQGHKi5lNUJjKg/article-inline_image-shrink_1000_1488/0?e=1557360000&#038;v=beta&#038;t=XVbRxn-dCYVAkOUv9od-RnSXzgBuf5w0S4bRZtIdB_M" medium="image" />

		<media:content url="https://media.licdn.com/dms/image/C5612AQGfQntZ2ecraw/article-inline_image-shrink_1500_2232/0?e=1557360000&#038;v=beta&#038;t=1oyPth9EkZlOwaVoPry9zbAnRyJRs6-v4XRaWswJwWE" medium="image" />

		<media:content url="https://media.licdn.com/dms/image/C5612AQHCydtTeNXs0Q/article-inline_image-shrink_1500_2232/0?e=1557360000&#038;v=beta&#038;t=DpYlPAO1JbB527Gon3Iw5gXZyVeQxY-EvjsHPnENUYs" medium="image" />
	</item>
		<item>
		<title>Azure Container Groups</title>
		<link>https://dsebban.wordpress.com/2017/10/09/azure-container-groups/</link>
					<comments>https://dsebban.wordpress.com/2017/10/09/azure-container-groups/#respond</comments>
		
		<dc:creator><![CDATA[David Sebban]]></dc:creator>
		<pubDate>Mon, 09 Oct 2017 09:16:40 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Minecraft]]></category>
		<category><![CDATA[Non classé]]></category>
		<guid isPermaLink="false">http://dsebban.wordpress.com/?p=776</guid>

					<description><![CDATA[In my previous post, I showed you how I created an Azure Container Service cluster orchestrated by Kubernetes. In the background this created multiple VMs and therefore you might end up paying more compute time than needed by your containers. If you need to spin up a single container and don&#8217;t want/need the full cluster, &#8230; <a class="more-link" href="https://dsebban.wordpress.com/2017/10/09/azure-container-groups/">More <span class="screen-reader-text">Azure Container Groups</span></a>]]></description>
										<content:encoded><![CDATA[<p>In my previous post, I showed you how I created an Azure Container Service cluster orchestrated by Kubernetes. In the background this created multiple VMs and therefore you might end up paying more compute time than needed by your containers.</p>
<p>If you need to spin up a single container and don&#8217;t want/need the full cluster, you can your Azure Container Groups (aka Azure Container Instances).</p>
<p>for instance, if you want to create the minecraft server container you can simply launch this command on your AZ CLI command shell</p>
<pre><strong>az container create --name mcserver --image davidsebban/ubuntumcserv1_12:acrready --resource-group &lt;yourResourceGroup&gt; --ip-address public --port </strong><strong>25565</strong></pre>
<p><img style="max-width:100%;" src="https://i.imgur.com/qotmNvc.png" /></p>
<p>Tadaaaa <img src="https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><img style="max-width:100%;" src="https://i.imgur.com/jMinVkK.png" /></p>
<p>more info: <a href="https://docs.microsoft.com/en-us/azure/container-instances/container-instances-quickstart" target="_blank" rel="noopener">https://docs.microsoft.com/en-us/azure/container-instances/container-instances-quickstart </a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://dsebban.wordpress.com/2017/10/09/azure-container-groups/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">776</post-id>
		<media:content url="https://2.gravatar.com/avatar/eb44069fe9eb62302e2f487c54bee27944e613f9c96166009c46ef167c521dfb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sebbandavid</media:title>
		</media:content>

		<media:content url="https://i.imgur.com/qotmNvc.png" medium="image" />

		<media:content url="https://i.imgur.com/jMinVkK.png" medium="image" />
	</item>
		<item>
		<title>Minecraft Server in Azure Container Service</title>
		<link>https://dsebban.wordpress.com/2017/10/06/minecraft-server-in-azure-container-service/</link>
					<comments>https://dsebban.wordpress.com/2017/10/06/minecraft-server-in-azure-container-service/#comments</comments>
		
		<dc:creator><![CDATA[David Sebban]]></dc:creator>
		<pubDate>Fri, 06 Oct 2017 15:37:19 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Docker]]></category>
		<category><![CDATA[Kubernetes]]></category>
		<category><![CDATA[Minecraft]]></category>
		<guid isPermaLink="false">http://dsebban.wordpress.com/?p=689</guid>

					<description><![CDATA[Hello, My previous article was just the premise of this one. I decided that I needed to give a new look to my previous demo of minecraft server running on nano server. Last year I already gave it a slight boost by running it inside a docker container. So naturally this time, I decided to &#8230; <a class="more-link" href="https://dsebban.wordpress.com/2017/10/06/minecraft-server-in-azure-container-service/">More <span class="screen-reader-text">Minecraft Server in Azure Container&#160;Service</span></a>]]></description>
										<content:encoded><![CDATA[<p>Hello,</p>
<p>My previous article was just the premise of this one. I decided that I needed to give a new look to my previous demo of minecraft server running on nano server. Last year I already gave it a slight boost by running it inside a docker container. So naturally this time, I decided to run this container on Azure Container Service (ACS).  Here&#8217;s how I did it.</p>
<h4>1. Switching from a Windows Nano Server to an Ubuntu Container</h4>
<p>As a die hard Windows guy, this was probably the most hurtful decision I had to make. But since Microsoft <img src="https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/2764.png" alt="❤" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Linux (#HeartWithTheHands #BFF), there are more and more scenarios in which I considered using Linux. ACS is one of them, by default it runs linux containers and I had a couple hiccups with Windows Containers in the past so I decided to use an Ubuntu Container. <a href="https://hub.docker.com/_/ubuntu/" target="_blank" rel="noopener">This is the reference image I used</a>.</p>
<p>This image has pretty much nothing running on it, therefore, you need to install Java on it since Minecraft server runs on Java. I found this article explaining how to do so: <a href="http://www.wikihow.com/Install-Oracle-Java-on-Ubuntu-Linux." target="_blank" rel="noopener">http://www.wikihow.com/Install-Oracle-Java-on-Ubuntu-Linux.</a> I started with good intentions and wanted to use a dockerfile to build it, and then realized that it had quite a bunch of manual steps and then gave up. But I&#8217;m still working on it and I might post it later.</p>
<p>Once Java was installed, I copied the Minecraft Server binaries and config files to the container, modified the image and pushed it to Docker Hub. Therefore, if you want to play with it, just run the following command lines</p>
<pre><strong>docker pull davidsebban/ubuntumcserv1_12:acrready
docker run -d -p 25565:25565 davidsebban/ubuntumcserv1_12:acrready</strong></pre>
<p>In Minecraft, just add the server and use localhost for the address</p>
<p><img src="https://i.imgur.com/AkM7G39.png" alt="Minecraft Client Configuration" /></p>
<p>Minecraft server browser now sees the server up and running with 0 players connected out of 20 slots available.<img src="https://i.imgur.com/96dfeWg.png" alt="Minecraft Server running on local Ubuntu container" /></p>
<p>if you have issues with docker on Windows when trying to pull or run the container, open the network settings and change the DNS option from 8.8.8.8 to automatic (or vice versa &#8230;)<img title="Docker for Windows Network Settings" src="https://i.imgur.com/fTGc1bR.png" /></p>
<h4>2.  Azure Container Registry (ACR)</h4>
<p>Now that my local container was ready, I started looking at publishing it on ACS. The different documentation I found referred to containers stored in Azure Container Registry, which is a private area to store your containers in order to use them later in ACS. Creating an ACR is easy with <a href="https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest" target="_blank" rel="noopener">Azure CLI 2.0</a> (aka AZ). Once installed, just run the following command lines</p>
<div>
<pre><strong>az login
</strong><strong>az group create --name myResourceGroup --location westeurope
</strong><strong>az acr create --resource-group myResourceGroup --name myDemoRegistry --sku Basic --admin-enabled true</strong></pre>
<div>AZ Login will ask you to enter a code on a web page, it is a one time operation and doesn&#8217;t have to be done again as long as you have your favorite command shell (*cough* powershell *cough*) running.</div>
<div><img src="https://i.imgur.com/SA4v0bA.png" /></div>
<div><img title="ACR Creation Command lines" src="https://i.imgur.com/yT9zBwo.png" /></div>
<div></div>
<div>Once the Registry is up and running, to push the image on it, you need to tag it with the login server associated with it. Write down the login server value (see the highlighted line in the previous screenshot) or use the following command line to store it in a powershell variable.</div>
<div><img title="Login Server" src="https://i.imgur.com/LWgUXR0.png" /></div>
<div></div>
<div>Then launch the following commands to tag and push the image to your private ACR registry</div>
<div><img style="max-width:100%;" src="https://i.imgur.com/mX1aKvl.png" /></div>
</div>
<div></div>
<div>In the azure portal, the container now appears in the registry</div>
<div><img class=" aligncenter" style="max-width:100%;" src="https://i.imgur.com/YDWqO2T.png" /></div>
<h4>3. Azure Container Service</h4>
<p>Now on to the big piece, we need to create an ACS cluster. Each cluster needs an orchestrator, for this one, I decided to use <a href="https://kubernetes.io/" target="_blank" rel="noopener">Kubernetes</a>. I had few issues with this step, most likely because my Azure subscription is a non production one. I ended up using the following command line to create the cluster. the process is pretty long, so now would be a good time to go refill your coffee mug.</p>
<pre><strong>az acs create --orchestrator-type kubernetes --resource-group myResourceGroup --name AzureMeetup K8SCluster --generate-ssh-keys --agent-vm-size Standard_D1_v2</strong></pre>
<p><img style="max-width:100%;" src="https://i.imgur.com/g4rIdZ4.png" /></p>
<p>Once completed, it might take some extra time to become stable, so I suggest to let it sit for 5-10 minutes before continuing with the rest of this article. In the meantime, make sure you have kubectl installed to manage your kubernetes cluster, it&#8217;s easy to install using AZ : <a href="https://docs.microsoft.com/en-us/cli/azure/acs/kubernetes?view=azure-cli-latest#az_acs_kubernetes_install_cli" target="_blank" rel="noopener">https://docs.microsoft.com/en-us/cli/azure/acs/kubernetes?view=azure-cli-latest#az_acs_kubernetes_install_cli </a>. If the cluster is stable, you should be able to list the nodes using kubectl get nodes after having authenticated against the cluster.</p>
<pre><strong>az acs kubernetes get-credentials --resource-group myResourceGroup --name AzureMeetupK8SCluster</strong>
<strong>kubectl get nodes</strong></pre>
<p><img style="max-width:100%;" src="https://i.imgur.com/E4R0UWP.png" /></p>
<p>at that point, you can start using Dashboard, the kubernetes management UI. If you try to access it using the public IP of the cluster, you get an error <img style="max-width:100%;" src="https://i.imgur.com/AwiyOwF.png" /></p>
<p>to solve this error, just follow the instructions in <a href="https://dsebban.wordpress.com/2017/10/05/kubernetes-dashboard-and-azure-container-services/" target="_blank" rel="noopener">my previous post</a> to launch Dashboard via the kubectl proxy command.</p>
<p>it is now time to run our container on our ACS cluster managed by Kubernetes ! Click on <strong>Create</strong> and type a name and the container image reference that has the ACR loginserver tagged in it.<img style="max-width:100%;" src="https://i.imgur.com/Wdxl0IQ.png" /></p>
<p>Minecraft uses TCP port 25565 by default, therefore you need to publish this port. In the service section, choose external and publish port 25565. And that&#8217;s it, you can now click <strong>deploy</strong><img style="max-width:100%;" src="https://i.imgur.com/gbTUgIE.png" /></p>
<p>To monitor the progress of your deployment, type kubectl get pods -w, as soon as the pod is running, you can press ctrl+C to break the command since the container is running. Then you need to monitor the external publication. it takes few minutes for the service to get a public IP address, you can monitor this process by typing kubectl get service mcserver &#8211;watch. As soon as the external IP changes from &lt;pending&gt; to an actual IP, you&#8217;re good to go.<img class=" aligncenter" style="max-width:100%;" src="https://i.imgur.com/3hA1PYZ.png" /></p>
<h4>4. it all started by punching a tree</h4>
<p>Alright, enough with the command lines and the management UI, close everything, turn on your OOF message and launch Minecraft, and add the Azure Server details using the public IP</p>
<p><img style="max-width:100%;" src="https://i.imgur.com/iBWOAog.png" /></p>
<p>Now join the server and start crafting <img src="https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /><img src="https://i.imgur.com/PyXxNyb.png" alt="Minecraft Server running in Azure Container Service" /></p>
<p>PS: if you haven&#8217;t closed Dashboard and look at the service&#8217;s logs, you&#8217;ll see the actual minecraft server logs <img src="https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /><img style="max-width:100%;" src="https://i.imgur.com/ordyNTg.png" /></p>
]]></content:encoded>
					
					<wfw:commentRss>https://dsebban.wordpress.com/2017/10/06/minecraft-server-in-azure-container-service/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">689</post-id>
		<media:content url="https://2.gravatar.com/avatar/eb44069fe9eb62302e2f487c54bee27944e613f9c96166009c46ef167c521dfb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sebbandavid</media:title>
		</media:content>

		<media:content url="https://i.imgur.com/AkM7G39.png" medium="image">
			<media:title type="html">Minecraft Client Configuration</media:title>
		</media:content>

		<media:content url="https://i.imgur.com/96dfeWg.png" medium="image">
			<media:title type="html">Minecraft Server running on local Ubuntu container</media:title>
		</media:content>

		<media:content url="https://i.imgur.com/fTGc1bR.png" medium="image">
			<media:title type="html">Docker for Windows Network Settings</media:title>
		</media:content>

		<media:content url="https://i.imgur.com/SA4v0bA.png" medium="image" />

		<media:content url="https://i.imgur.com/yT9zBwo.png" medium="image">
			<media:title type="html">ACR Creation Command lines</media:title>
		</media:content>

		<media:content url="https://i.imgur.com/LWgUXR0.png" medium="image">
			<media:title type="html">Login Server</media:title>
		</media:content>

		<media:content url="https://i.imgur.com/mX1aKvl.png" medium="image" />

		<media:content url="https://i.imgur.com/YDWqO2T.png" medium="image" />

		<media:content url="https://i.imgur.com/g4rIdZ4.png" medium="image" />

		<media:content url="https://i.imgur.com/E4R0UWP.png" medium="image" />

		<media:content url="https://i.imgur.com/AwiyOwF.png" medium="image" />

		<media:content url="https://i.imgur.com/Wdxl0IQ.png" medium="image" />

		<media:content url="https://i.imgur.com/gbTUgIE.png" medium="image" />

		<media:content url="https://i.imgur.com/3hA1PYZ.png" medium="image" />

		<media:content url="https://i.imgur.com/iBWOAog.png" medium="image" />

		<media:content url="https://i.imgur.com/PyXxNyb.png" medium="image">
			<media:title type="html">Minecraft Server running in Azure Container Service</media:title>
		</media:content>

		<media:content url="https://i.imgur.com/ordyNTg.png" medium="image" />
	</item>
		<item>
		<title>kubernetes dashboard and Azure Container Services</title>
		<link>https://dsebban.wordpress.com/2017/10/05/kubernetes-dashboard-and-azure-container-services/</link>
					<comments>https://dsebban.wordpress.com/2017/10/05/kubernetes-dashboard-and-azure-container-services/#respond</comments>
		
		<dc:creator><![CDATA[David Sebban]]></dc:creator>
		<pubDate>Thu, 05 Oct 2017 17:35:49 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Docker]]></category>
		<category><![CDATA[Kubernetes]]></category>
		<category><![CDATA[Minecraft]]></category>
		<category><![CDATA[Non classé]]></category>
		<guid isPermaLink="false">http://dsebban.wordpress.com/?p=652</guid>

					<description><![CDATA[Hello, Recently I was thinking about the next thing I wanted to learn, so I started by thinking about the last things I learned outside of my regular day to day job: Nano Server on physical servers. Nano Server with Docker Containers on Windows. Azure AD And then it struck me, the next thing I &#8230; <a class="more-link" href="https://dsebban.wordpress.com/2017/10/05/kubernetes-dashboard-and-azure-container-services/">More <span class="screen-reader-text">kubernetes dashboard and Azure Container&#160;Services</span></a>]]></description>
										<content:encoded><![CDATA[<p>Hello,</p>
<p>Recently I was thinking about the next thing I wanted to learn, so I started by thinking about the last things I learned outside of my regular day to day job:</p>
<ul>
<li>Nano Server on physical servers.</li>
<li>Nano Server with Docker Containers on Windows.</li>
<li>Azure AD</li>
</ul>
<p>And then it struck me, the next thing I needed to learn was Azure Container Services (ACS) to continue my journey in the world of Docker Containers and Azure.</p>
<p>And so I went to the ACS node in Azure, clicked on Add &#8230; and then realized I couldn&#8217;t go past step 2 Question 1 <img src="https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /> What the H*ck is that orchestrator thingy</p>
<p><img data-attachment-id="667" data-permalink="https://dsebban.wordpress.com/2017/10/05/kubernetes-dashboard-and-azure-container-services/up8axuc1/" data-orig-file="https://dsebban.wordpress.com/wp-content/uploads/2017/10/up8axuc1.png" data-orig-size="626,219" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="uP8AxUc[1]" data-image-description="" data-image-caption="" data-medium-file="https://dsebban.wordpress.com/wp-content/uploads/2017/10/up8axuc1.png?w=300" data-large-file="https://dsebban.wordpress.com/wp-content/uploads/2017/10/up8axuc1.png?w=626" class="alignnone size-full wp-image-667" src="https://dsebban.wordpress.com/wp-content/uploads/2017/10/up8axuc1.png?w=748" alt="uP8AxUc[1]"   srcset="https://dsebban.wordpress.com/wp-content/uploads/2017/10/up8axuc1.png 626w, https://dsebban.wordpress.com/wp-content/uploads/2017/10/up8axuc1.png?w=150&amp;h=52 150w, https://dsebban.wordpress.com/wp-content/uploads/2017/10/up8axuc1.png?w=300&amp;h=105 300w" sizes="(max-width: 626px) 100vw, 626px" /></p>
<p>so I started learning about Kubernetes since I saw that name here and there. I played with the az cli command, the kubectl command, the <a href="https://github.com/Azure/acs-engine" target="_blank" rel="noopener">acs-engine</a> command &#8230; and then I was bored with my command line and I started searching for a UI.</p>
<p>Turns out, when you create an ACS cluster, it comes with a UI called dashboard but impossible to connect to it. I tried to configure it, and then I found out that you could use the following command line to open a local proxy to your Azure Kubernetes cluster</p>
<p><strong>kubectl proxy</strong></p>
<p>next thing you need to do is to open your web browser and browse to <a href="http://localhost:8001/ui">http://localhost:8001/ui </a></p>
<p>Tada, web UI in a command line world (I&#8217;m a Windows guy I need those)</p>
<p><img data-attachment-id="683" data-permalink="https://dsebban.wordpress.com/2017/10/05/kubernetes-dashboard-and-azure-container-services/kbkubu5/" data-orig-file="https://dsebban.wordpress.com/wp-content/uploads/2017/10/kbkubu5.png" data-orig-size="1280,760" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="kbkubu5" data-image-description="" data-image-caption="" data-medium-file="https://dsebban.wordpress.com/wp-content/uploads/2017/10/kbkubu5.png?w=300" data-large-file="https://dsebban.wordpress.com/wp-content/uploads/2017/10/kbkubu5.png?w=748" class="alignnone size-full wp-image-683" src="https://dsebban.wordpress.com/wp-content/uploads/2017/10/kbkubu5.png?w=748" alt="kbkubu5"   srcset="https://dsebban.wordpress.com/wp-content/uploads/2017/10/kbkubu5.png 1280w, https://dsebban.wordpress.com/wp-content/uploads/2017/10/kbkubu5.png?w=150&amp;h=89 150w, https://dsebban.wordpress.com/wp-content/uploads/2017/10/kbkubu5.png?w=300&amp;h=178 300w, https://dsebban.wordpress.com/wp-content/uploads/2017/10/kbkubu5.png?w=768&amp;h=456 768w, https://dsebban.wordpress.com/wp-content/uploads/2017/10/kbkubu5.png?w=1024&amp;h=608 1024w" sizes="(max-width: 1280px) 100vw, 1280px" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>https://dsebban.wordpress.com/2017/10/05/kubernetes-dashboard-and-azure-container-services/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">652</post-id>
		<media:content url="https://2.gravatar.com/avatar/eb44069fe9eb62302e2f487c54bee27944e613f9c96166009c46ef167c521dfb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sebbandavid</media:title>
		</media:content>

		<media:content url="https://dsebban.wordpress.com/wp-content/uploads/2017/10/up8axuc1.png" medium="image">
			<media:title type="html">uP8AxUc[1]</media:title>
		</media:content>

		<media:content url="https://dsebban.wordpress.com/wp-content/uploads/2017/10/kbkubu5.png" medium="image">
			<media:title type="html">kbkubu5</media:title>
		</media:content>
	</item>
		<item>
		<title>MDT Monitoring Dashboard using PowerBI, Part 2/2</title>
		<link>https://dsebban.wordpress.com/2016/09/26/mdt-monitoring-dashboard-using-powerbi-part-22/</link>
					<comments>https://dsebban.wordpress.com/2016/09/26/mdt-monitoring-dashboard-using-powerbi-part-22/#respond</comments>
		
		<dc:creator><![CDATA[David Sebban]]></dc:creator>
		<pubDate>Mon, 26 Sep 2016 15:55:09 +0000</pubDate>
				<category><![CDATA[MDT]]></category>
		<category><![CDATA[PowerBI]]></category>
		<guid isPermaLink="false">http://dsebban.wordpress.com/?p=576</guid>

					<description><![CDATA[In my previous post, I described how I managed to populate the MDT Monitoring data using PowerShell and a fully automated MDT Deployment share. Now, to access the data, you can do that using the powershell module or using the following URL http://MDTSERVER:9801/MDTMonitorData/. You will notice that there are 3 collections: Computer, ComputerIdentities and NextIDs. the one &#8230; <a class="more-link" href="https://dsebban.wordpress.com/2016/09/26/mdt-monitoring-dashboard-using-powerbi-part-22/">More <span class="screen-reader-text">MDT Monitoring Dashboard using PowerBI, Part&#160;2/2</span></a>]]></description>
										<content:encoded><![CDATA[<p>In <a href="https://dsebban.wordpress.com/2016/09/26/mdt-monitoring-dashboard-using-powerbi-part-12/">my previous post</a>, I described how I managed to populate the MDT Monitoring data using PowerShell and a fully automated MDT Deployment share.</p>
<p>Now, to access the data, you can do that using the powershell module or using the following URL http://MDTSERVER:9801/MDTMonitorData/. You will notice that there are 3 collections: Computer, ComputerIdentities and NextIDs. the one we&#8217;re interested in is &#8220;Computers&#8221;</p>
<p>It is a nicely formatted XML that we can then transform in PowerBI. It took me about an hour to tranform it into a convenient table using the following R request.</p>
<pre>let
 Source = Xml.Tables(Web.Contents("http://MDTSERVER:9801/MDTMonitorData/Computers/")),
 #"Removed Columns" = Table.RemoveColumns(Source,{"title", "id", "updated", "link", "http://www.w3.org/XML/1998/namespace"}),
 #"Expanded entry" = Table.ExpandTableColumn(#"Removed Columns", "entry", {"id", "title", "updated", "author", "link", "category", "content"}, {"id", "title", "updated", "author", "link", "category", "content"}),
 #"Removed Columns1" = Table.RemoveColumns(#"Expanded entry",{"id", "title", "updated", "author", "link", "category"}),
 #"Expanded content" = Table.ExpandTableColumn(#"Removed Columns1", "content", {"Attribute:type", "http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"}, {"Attribute:type", "http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"}),
 #"Expanded http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" = Table.ExpandTableColumn(#"Expanded content", "http://schemas.microsoft.com/ado/2007/08/dataservices/metadata", {"properties"}, {"properties"}),
 #"Removed Columns2" = Table.RemoveColumns(#"Expanded http://schemas.microsoft.com/ado/2007/08/dataservices/metadata",{"Attribute:type"}),
 #"Expanded properties" = Table.ExpandTableColumn(#"Removed Columns2", "properties", {"http://schemas.microsoft.com/ado/2007/08/dataservices"}, {"http://schemas.microsoft.com/ado/2007/08/dataservices"}),
 #"Expanded http://schemas.microsoft.com/ado/2007/08/dataservices" = Table.ExpandTableColumn(#"Expanded properties", "http://schemas.microsoft.com/ado/2007/08/dataservices", {"Name", "PercentComplete", "Settings", "Warnings", "Errors", "DeploymentStatus", "StartTime", "EndTime", "ID", "UniqueID", "CurrentStep", "TotalSteps", "StepName", "LastTime", "DartIP", "DartPort", "DartTicket", "VMHost", "VMName"}, {"Name", "PercentComplete", "Settings", "Warnings", "Errors", "DeploymentStatus", "StartTime", "EndTime", "ID", "UniqueID", "CurrentStep", "TotalSteps", "StepName", "LastTime", "DartIP", "DartPort", "DartTicket", "VMHost", "VMName"}),
 #"Expanded PercentComplete1" = Table.ExpandTableColumn(#"Expanded http://schemas.microsoft.com/ado/2007/08/dataservices", "PercentComplete", {"Element:Text"}, {"PercentComplete"}),
 #"Expanded Warnings" = Table.ExpandTableColumn(#"Expanded PercentComplete1", "Warnings", {"Element:Text"}, {"Warnings"}),
 #"Changed Type" = Table.TransformColumnTypes(#"Expanded Warnings",{{"Warnings", type number}}),
 #"Expanded Errors" = Table.ExpandTableColumn(#"Changed Type", "Errors", {"Element:Text"}, {"Errors"}),
 #"Expanded DeploymentStatus" = Table.ExpandTableColumn(#"Expanded Errors", "DeploymentStatus", {"Element:Text"}, {"DeploymentStatus"}),
 #"Expanded StartTime" = Table.ExpandTableColumn(#"Expanded DeploymentStatus", "StartTime", {"Element:Text"}, {"StartTime"}),
 #"Changed Type2" = Table.TransformColumnTypes(#"Expanded StartTime",{{"StartTime", type datetime}}),
 #"Expanded EndTime" = Table.ExpandTableColumn(#"Changed Type2", "EndTime", {"Element:Text"}, {"EndTime"}),
 #"Changed Type3" = Table.TransformColumnTypes(#"Expanded EndTime",{{"EndTime", type datetime}}),
 #"Expanded LastTime" = Table.ExpandTableColumn(#"Changed Type3", "LastTime", {"Element:Text"}, {"LastTime"}),
 #"Changed Type4" = Table.TransformColumnTypes(#"Expanded LastTime",{{"LastTime", type datetime}}),
 #"Removed Columns3" = Table.RemoveColumns(#"Changed Type4",{"ID", "UniqueID", "CurrentStep", "TotalSteps", "StepName", "DartIP", "DartPort", "DartTicket"}),
 #"Changed Type5" = Table.TransformColumnTypes(#"Removed Columns3",{{"Errors", type number}}),
 #"Removed Columns4" = Table.RemoveColumns(#"Changed Type5",{"Settings"}),
 #"Replaced Value" = Table.ReplaceValue(#"Removed Columns4","3","Completed",Replacer.ReplaceText,{"DeploymentStatus"}),
 #"Replaced Value1" = Table.ReplaceValue(#"Replaced Value","1","Running",Replacer.ReplaceText,{"DeploymentStatus"}),
 #"Replaced Value2" = Table.ReplaceValue(#"Replaced Value1","4","Unresponsive",Replacer.ReplaceText,{"DeploymentStatus"}),
 #"Replaced Value3" = Table.ReplaceValue(#"Replaced Value2","2","Failed",Replacer.ReplaceText,{"DeploymentStatus"}),
 #"Added Custom" = Table.AddColumn(#"Replaced Value3", "ElapsedTime", each [EndTime]-[StartTime]),
 #"Changed Type1" = Table.TransformColumnTypes(#"Added Custom",{{"ElapsedTime", type duration}}),
 #"Inserted Total Minutes" = Table.AddColumn(#"Changed Type1", "ElapsedTimeTotalMinutes", each Duration.TotalMinutes([ElapsedTime]), type number),
 #"Inserted Round Up" = Table.AddColumn(#"Inserted Total Minutes", "Duration", each Number.RoundUp([ElapsedTimeTotalMinutes]), Int64.Type)
in
 #"Inserted Round Up"</pre>
<p>OK, I lied, I didn&#8217;t write that myself, as you can tell, the names are automatically generated and it took me about 10 minutes to do it using PowerBI Desktop <img src="https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><img src="https://i0.wp.com/i.imgur.com/OdHCAEN.png" /></p>
<p>I was interested in the <strong>status</strong> and the <strong>duration</strong>. the status is a integer and I had to replace the values 1/2/3/4 by Running/Failed/Completed/Unresponsive. That&#8217;s easy enough with the &#8220;Replace value function.</p>
<p><img src="https://i0.wp.com/i.imgur.com/mpOiNGr.png" /></p>
<p>The duration, was trickier and needed 4 steps:</p>
<ol>
<li>calculate the time between start and finish, that was done by adding a custom column with the following code : <strong>= Table.AddColumn(#&#8221;Replaced Value3&#8243;, &#8220;ElapsedTime&#8221;, each [EndTime]-[StartTime])</strong></li>
<li>Transform that column into a duration : <strong>= Table.TransformColumnTypes(#&#8221;Added Custom&#8221;,{{&#8220;ElapsedTime&#8221;, type duration}})</strong></li>
<li>Insert a new column that calculates the total number of minutes in that duration :<strong> = Table.AddColumn(#&#8221;Changed Type1&#8243;, &#8220;ElapsedTimeTotalMinutes&#8221;, each Duration.TotalMinutes([ElapsedTime]), type number)</strong></li>
<li>and finally rounding that up so that it would stack nicely in a bar/pie graph in the report: <strong>= Table.AddColumn(#&#8221;Inserted Total Minutes&#8221;, &#8220;Duration&#8221;, each Number.RoundUp([ElapsedTimeTotalMinutes]), Int64.Type)</strong></li>
</ol>
<p style="text-align:justify;">Finally, the GUI, as I said, I was interested in the Status, and I wanted to show the amount of computers that succeeded or failed in a pie chart. That&#8217;s probably the easiest chart in PowerBI. To create that chart, click on the pie chart icon in the visualization section. then drag the &#8220;DeploymentStatus&#8221; field in the Details Section and drag the &#8220;Name&#8221; field in the Values section, and Voila <img src="https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><img src="https://i0.wp.com/i.imgur.com/smz2vyD.png" /></p>
<p style="text-align:justify;">For the duration, I wanted to group computers that lasted the same time, so that I could try to pinpoint which ones are taking longer. I decided to go with a bar chart, to do so, I dragged the &#8220;Duration&#8221; field in the Axis section and I dragged the &#8220;Name&#8221; field in the Value section.</p>
<p><img src="https://i0.wp.com/i.imgur.com/T7bjyNP.png" /></p>
<p style="text-align:justify;">now the magic of PowerBI is that  those charts are linked by default, if you click on a pie section, it will update the bar chart so that you can visualize the data for those selected computers. as you can see below, if I click on the &#8220;Completed&#8221; section, the bar chart is updated</p>
<p><img src="https://i0.wp.com/i.imgur.com/h6DjMNv.png" /></p>
<p style="text-align:justify;">Now that you have the R query and a few examples, it&#8217;s your turn to impress you boss and provide a shiny ((tm) Johan Arwidmark <a href="https://twitter.com/jarwidmark/status/780422057007935488">who was waiting for this post</a>) dashboard showing your deployments progress.</p>
<p style="text-align:justify;">I wanted to thank Johan who helped me with an important part of this. By default, the monitoring data is retained 3 days, if you need to monitor the data for a longer period of time, you need to modify the config file as described in Johan&#8217;s blog post <a href="http://deploymentresearch.com/Research/Post/343/Configuring-MDT-Monitoring-Behind-the-scenes">http://deploymentresearch.com/Research/Post/343/Configuring-MDT-Monitoring-Behind-the-scenes </a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://dsebban.wordpress.com/2016/09/26/mdt-monitoring-dashboard-using-powerbi-part-22/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">576</post-id>
		<media:content url="https://2.gravatar.com/avatar/eb44069fe9eb62302e2f487c54bee27944e613f9c96166009c46ef167c521dfb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sebbandavid</media:title>
		</media:content>

		<media:content url="http://i.imgur.com/OdHCAEN.png" medium="image" />

		<media:content url="http://i.imgur.com/mpOiNGr.png" medium="image" />

		<media:content url="http://i.imgur.com/smz2vyD.png" medium="image" />

		<media:content url="http://i.imgur.com/T7bjyNP.png" medium="image" />

		<media:content url="http://i.imgur.com/h6DjMNv.png" medium="image" />
	</item>
		<item>
		<title>MDT Monitoring Dashboard using PowerBI, Part 1/2</title>
		<link>https://dsebban.wordpress.com/2016/09/26/mdt-monitoring-dashboard-using-powerbi-part-12/</link>
					<comments>https://dsebban.wordpress.com/2016/09/26/mdt-monitoring-dashboard-using-powerbi-part-12/#respond</comments>
		
		<dc:creator><![CDATA[David Sebban]]></dc:creator>
		<pubDate>Mon, 26 Sep 2016 14:52:59 +0000</pubDate>
				<category><![CDATA[MDT]]></category>
		<category><![CDATA[PowerBI]]></category>
		<guid isPermaLink="false">http://dsebban.wordpress.com/?p=480</guid>

					<description><![CDATA[Hello, Lately I&#8217;ve spent more time working on producing project management dashboards than deploying Windows or other Server products. Obviously I started doing that using Excel and Access but soon switched to PowerBI and its flexibility made me want to combine it with my all time favorite product: Microsoft Deployment Toolkit. For those of you &#8230; <a class="more-link" href="https://dsebban.wordpress.com/2016/09/26/mdt-monitoring-dashboard-using-powerbi-part-12/">More <span class="screen-reader-text">MDT Monitoring Dashboard using PowerBI, Part&#160;1/2</span></a>]]></description>
										<content:encoded><![CDATA[<p style="text-align:justify;">Hello,</p>
<p style="text-align:justify;">Lately I&#8217;ve spent more time working on producing project management dashboards than deploying Windows or other Server products. Obviously I started doing that using Excel and Access but soon switched to PowerBI and its flexibility made me want to combine it with my all time favorite product: Microsoft Deployment Toolkit.<span id="more-480"></span></p>
<p style="text-align:justify;">For those of you who don&#8217;t remember, we used to have a Management Pack for SCOM back in the days of BDD Solution Accelerator. And that Management Pack allowed to track progress of the deployments etc. It was not very simple in my opinion and it required to have a SCOM infrastructure which is not always the case for customers. MDT introduced the monitoring feature a couple years ago (can&#8217;t remember exactly when) but it doesn&#8217;t come with a graphical dashboard that could be used out of the box. I decided to try building a PowerBI dashboard to graphically represent the data provided by the MDT monitoring component.</p>
<p style="text-align:justify;">To start working on that, I needed data, which meant I needed to deploy a significant amount of computers. this first article describes how I deployed 40+ VMs in less than 24h on my tiny lab (1 desktop computer with 8Gb RAM)</p>
<h1><strong>The Task Sequence</strong></h1>
<p style="text-align:justify;">That was the easy part, I just created a simple Windows 10 task sequence and needed it to last a random amount of time. Therefore, I added a simple application called &#8220;Random Wait&#8221;</p>
<p style="text-align:justify;"><img src="https://i0.wp.com/i.imgur.com/QyQ7M3m.png" /></p>
<p>this application just launches a two-liner VBS script that pauses for a random time between 5 and 20 minutes, here&#8217;s the code:</p>
<pre>waittime = Int( ( 20 - 5 + 1 ) * Rnd + 5 ) * 1000 * 60
wscript.sleep waittime</pre>
<p>I added this application to the task sequence in the State Restore phase</p>
<p style="text-align:justify;"><img src="https://i0.wp.com/i.imgur.com/VlTXkXm.png" /></p>
<p style="text-align:justify;">
<h1 style="text-align:justify;">Creating the VMs</h1>
<p style="text-align:justify;">Ok, I have the Task Sequence, now I need need to deal with the limited amount of resources in the lab and my laziness. Therefore I need something that will</p>
<ol>
<li style="text-align:justify;">Create one VM at a time, I didn&#8217;t want to create more than one since I was using that desktop for other things.</li>
<li style="text-align:justify;">Create a unique new VM each time, since the MDT monitoring feature would recognize if I used the same VM over and over again and wouldn&#8217;t generate new monitoring entries.</li>
<li style="text-align:justify;">Make sure that the VM deploys the task sequence in a fully automated fashion</li>
<li style="text-align:justify;">delete the VM and associated resources when done.</li>
</ol>
<p>I came up with a solution that uses a powershell script to</p>
<ol>
<li>Create the VM using an incremental name and share that name in a flat file accessible on the Deployment Share</li>
<li>Make sure the VM boots up using a LiteTouch WinPE ISO</li>
<li>A fully configured CustomSettings.ini with a user exit script that will get the Computer Name from the flat file mentioned in #1</li>
<li>Wait for the deployment to be finished by looking at the MDT monitoring data, once again, using the name generated in #1</li>
<li>Delete the VM resources</li>
<li>repeat</li>
</ol>
<p>Here&#8217;s the Powershell script</p>
<pre>$VMNameFile = "D:\DeploymentShare\vmname.txt"
cd DS001:
foreach($digit in 01..40){
    if(Test-Path $VMNameFile) {
        Remove-Item $VMNameFile
    }
    $VMNAME = "E6LABDS$digit"
    $VMNAME | Out-File -FilePath $VMNameFile -Encoding default -Force
    $VM = New-VM -NewVHDPath "D:\Hyper-V\Virtual Hard Disks\$VMNAME\$VMNAME.vhdx" 
        -NewVHDSizeBytes 127GB -BootDevice CD -Generation 1 
        -MemoryStartupBytes 1024MB -Name $VMNAME 
        -Path "D:\Hyper-V\Virtual Machines" -SwitchName External
    Set-VMDvdDrive -VMName $VMNAME 
        -Path D:\DeploymentShare\Boot\LiteTouchPE_x64.iso
    Set-VMMemory $VMNAME -DynamicMemoryEnabled $false
    Start-VM -VMName $VMNAME
    $status = 1
    while($status -eq 1){
         #Check Monitoring Status every 3 minutes
         Start-Sleep -Seconds 180
         $MonitoringData = Get-MDTMonitorData | ? {$_.Name -eq $VMNAME}
         $status = $MonitoringData.DeploymentStatus 
    }
    $VM = Get-VM -Name $VMNAME
    if($VM.State -ne "Off") {
         Stop-VM -Name $VMNAME -TurnOff -Force
    }
    Remove-VM -Name $VMNAME -Force
    Remove-Item "D:\Hyper-V\Virtual Hard Disks\$VMNAME" -Recurse -Force
    Remove-Item "D:\Hyper-V\Virtual Machines\$VMNAME" -Recurse -Force
}</pre>
<p>Here&#8217;s the CustomSetting.ini</p>
<pre>[Settings]
Priority=ReadName, Default

[ReadName]
<strong>UserExit=ReadVMName.vbs</strong>

[Default]
OSInstall=Y
SkipTaskSequence=YES
TaskSequenceID=1
SkipComputerName=YES
<strong>OSDComputerName=#GetName()#</strong>
SkipDomainMembership=YES
JoinWorkgroup=WORKGROUP
SkipUserData=YES
UserDataLocation=NONE
SkipCapture=YES
SkipAdminPassword=YES
AdminPassword=P@ssw0rd
SkipAdminAccounts=YES
SkipProductKey=YES
SkipComputerBackup=YES
ComputerBackupLocation=NONE
SkipBitLocker=YES
BDEInstallSuppress=YES
SkipLocaleSelection=YES
SkipTimeZone=YES
KeyboardLocale=en-us
UserLocale=en-us
UILanguage=en-us
TimeZoneName=Eastern Standard Time
SkipApplications=YES
SkipSummary=YES
<strong>SkipFinalSummary=YES</strong>
<strong>FinishAction=SHUTDOWN</strong>
EventService=http://MDTSERVER:9800
SLShare=\\MDTSERVER\SLShare$</pre>
<p>I highlighted the important settings, the UserExit of course but also the skipfinalsummary and finish action that will make sure that the TS will end automatically and monitoring service will notice that so that our powershell script can finally move on with the next VM.</p>
<p>And finally here&#8217;s the user Exit script</p>
<pre>Function UserExit(sType, sWhen, sDetail, bSkip) 
 UserExit = Success 
End Function 
Function GetName()
 Dim objFSO, objFile, strContents
 Set objFSO = CreateObject("Scripting.FileSystemObject")
 Set objFile = objFSO.OpenTextFile("\\MDTSERVER\DeploymentShare$\vmname.txt", 1)
 Do While objFile.AtEndOfStream = False
 GetName = objFile.ReadLine
 Loop
End Function</pre>
<p>Because the User Exit script is called from the VM, the file has to be accessible on the network.</p>
<p>On the next blog article, I&#8217;ll describe how I leveraged the data created</p>
]]></content:encoded>
					
					<wfw:commentRss>https://dsebban.wordpress.com/2016/09/26/mdt-monitoring-dashboard-using-powerbi-part-12/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">480</post-id>
		<media:content url="https://2.gravatar.com/avatar/eb44069fe9eb62302e2f487c54bee27944e613f9c96166009c46ef167c521dfb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sebbandavid</media:title>
		</media:content>

		<media:content url="http://i.imgur.com/QyQ7M3m.png" medium="image" />

		<media:content url="http://i.imgur.com/VlTXkXm.png" medium="image" />
	</item>
		<item>
		<title>[IT Pro Con NYC 2016] Minecraft Server 1.9 running on Nano Server 2016 TP4</title>
		<link>https://dsebban.wordpress.com/2016/03/29/it-pro-con-nyc-2016-minecraft-server-1-9-running-on-nano-server-2016-tp4/</link>
					<comments>https://dsebban.wordpress.com/2016/03/29/it-pro-con-nyc-2016-minecraft-server-1-9-running-on-nano-server-2016-tp4/#comments</comments>
		
		<dc:creator><![CDATA[David Sebban]]></dc:creator>
		<pubDate>Tue, 29 Mar 2016 13:55:46 +0000</pubDate>
				<category><![CDATA[Demos]]></category>
		<category><![CDATA[Minecraft]]></category>
		<category><![CDATA[Nano Server]]></category>
		<guid isPermaLink="false">http://dsebban.wordpress.com/?p=473</guid>

					<description><![CDATA[Hi Everyone, After having skipped 2015, the NY Techstravaganza team decided to revive the event and we gave it a new name: IT Pro Con NYC. As usual, we had different tracks: Powershell – organized by the Powershell User Group SharePoint – organized by the Sharepoint User Group Exchange – organized by the Exchange User &#8230; <a class="more-link" href="https://dsebban.wordpress.com/2016/03/29/it-pro-con-nyc-2016-minecraft-server-1-9-running-on-nano-server-2016-tp4/">More <span class="screen-reader-text">[IT Pro Con NYC 2016] Minecraft Server 1.9 running on Nano Server 2016&#160;TP4</span></a>]]></description>
										<content:encoded><![CDATA[<p><img class="aligncenter" src="https://i0.wp.com/www.itproconny.com/wp-content/uploads/2016/02/ITProConNY-160-120-white-1.jpg" alt="" width="480" height="120" /></p>
<p>Hi Everyone,</p>
<p>After having skipped 2015, the NY Techstravaganza team decided to revive the event and we gave it a new name: <a href="http://www.itproconny.com">IT Pro Con NYC</a>. As usual, we had different tracks:</p>
<ul>
<li>Powershell – organized by the <a href="http://powershellgroup.org/nyc">Powershell User Group</a></li>
<li>SharePoint – organized by the <a href="http://www.meetup.com/NYCSPUG/">Sharepoint User Group</a></li>
<li>Exchange – organized by the <a href="http://www.nyexug.com/">Exchange User Group</a></li>
<li>Windows – organized by the <a href="http://www.meetup.com/nyewin/">Enterprise Windows User Group</a></li>
<li>Azure Camp – organized by <a href="http://itproguru.com/">Microsoft DX team</a></li>
</ul>
<p>As a board member of the Enterprise Windows User Group, I worked on the <a href="http://www.itproconny.com/windows-track/">Windows Track</a> and managed to get great speakers to come to New York and speak about: Datacenters networking, Windows as a Service, OMS and EMS. And I couldn&#8217;t help it, I also decided to be part of the speakers line up and worked on a session about the upcoming windows 2016 feature: Nano Server.</p>
<p>All slide Decks will be available online but one of the biggest feedback we received from our attendees and speakers this year is that we should record the sessions and make them available online after the event. We&#8217;ll definitely evaluate the feasibility for the next events but in the meantime I wanted to write a blog post that summarizes what I presented in my session.</p>
<h1>Introduction to Nano Server</h1>
<p>The first part of my session covered general information about Nano Server and why Microsoft decided to follow that path. It was very short because I wanted to focus on demos, if you want more details, I recommend the following online resources.</p>
<ul>
<li>MS Ignite 2015 &#8211; Nano Server: <a href="https://channel9.msdn.com/Events/Ignite/2015/THR0480">https://channel9.msdn.com/Events/Ignite/2015/THR0480 </a></li>
<li>MS Ignite 2015 &#8211; Nano Server: The Future of Windows Server Starts Now: <a href="https://channel9.msdn.com/Events/Ignite/2015/BRK2461"><span style="font-family:Segoe UI;font-size:10pt;">https://channel9.msdn.com/Events/Ignite/2015/BRK2461</span></a><span style="color:black;font-family:Segoe UI;font-size:10pt;"><br />
</span></li>
</ul>
<h1>Demo 1: Creating a Nano Server VHD</h1>
<p>While working on my session, I couldn&#8217;t find one resource that showed everything about Nano Server. I did find several of them talking about one specific point at a time though. Therefore, I tried to build my session as a succession of demos with a final goal of having a Nano Server running a Minecraft 1.9 server. For those of you who don&#8217;t know, Minecraft Server runs on Java and I thought that it would be a good example of what is possible to do with Nano Server. The first step was of course to create a Nano Server VHD from scratch, the good point with Nano Server is that it is headless and therefore, all my demos were packed with PowerShell scripts that I can easily share on this blog. Here&#8217;s the first one:</p>
<p><a href="http://pastebin.com/VVkbkjWL" target="_blank" rel="noopener">Download Script</a></p>
<p style="background:white;"><span style="font-family:Lucida Console;font-size:9pt;"><img class="alignnone" src="https://i0.wp.com/i.imgur.com/ZoIHWip.png" alt="" width="626" height="489" /></span></p>
<p>NOTE: The New-NanoServerImage cmdlet sometimes fails with an error complaining about not being able to load the WIM2VHD.WimFile type. I still don&#8217;t understand why this happens but it seems like Powershell ISE on Windows 10 fails to execute the C# code in the Convert-WindowsImage.ps1 script provided in the Windows Server 2016 TP4 ISO. To bypass this issue, run the script in powershell console and not the ISE.</p>
<h1>Demo 2: Joining a Nano Server to a domain and customizing the Firewall Rules</h1>
<p>Once my Nano Server was created, I joined it to a domain and enabled the File and Printer Sharing Firewall rules in order to be able to easily copy files to and from my newly created VM. This script uses Powershell Direct therefore you will need a Windows 10 or Windows Server 2016 machine running Hyper-V to use it. Also, this script requires an AD Domain to be created beforehand, in my case, the domain name was NANO.LAB. here&#8217;s the script of the second demo:</p>
<p><a href="http://pastebin.com/5DUWkXi3" target="_blank" rel="noopener">Download script</a></p>
<p style="background:white;"><span style="color:darkgreen;font-family:Lucida Console;font-size:9pt;"><img class="alignnone" src="https://i0.wp.com/i.imgur.com/QBIvfiv.png" alt="" width="657" height="839" /></span></p>
<p>In this Demo, I also showed how to manage a Nano Server using Remote Server Management Tools. Unfortunately there was not script for that but you can refer to this blog article that I used to build my platform: <a href="http://blogs.technet.com/b/nanoserver/archive/2016/02/09/server-management-tools-is-now-live.aspx"><span style="font-family:Segoe UI;font-size:10pt;">http://blogs.technet.com/b/nanoserver/archive/2016/02/09/server-management-tools-is-now-live.aspx</span></a><span style="color:black;font-family:Segoe UI;font-size:10pt;"><br />
</span></p>
<h1>Demo 3: Customizing the Nano Server image</h1>
<p>At that point I had a running Nano Server joined to my domain but it had no additional feature and was not providing any services so I had to start customize it. Also, because I decided to run a Java Console application, I needed to add the Reverse Forwarders Package. Without this package, Java and other application making API calls that don&#8217;t exist anymore in Nano Server wouldn&#8217;t run properly. This script copies the CAB files from the Windows Server 2016 ISO to the Nano Server Drive and loads them using DISM.</p>
<p><a href="http://pastebin.com/yTgwkKZY" target="_blank" rel="noopener">Download Script</a></p>
<p style="background:white;"><span style="font-family:Lucida Console;font-size:9pt;"><img class="alignnone" src="https://i0.wp.com/i.imgur.com/CQszCAsg.png" alt="" width="680" height="418" /></span></p>
<h1>Demo 4: packaging a WSA based AppX and running Minecraft Server 1.9</h1>
<p>This part is the most frustrating one, I tried as hard as I could to package Minecraft server into a Windows Server Apps (WSA) Based AppX and have the server run inside a Windows Service but the service would never launch. Is it a bug? did I miss something? I cannot tell and couldn&#8217;t find enough details on WSA to troubleshoot my package. The first step here is to put all the files needed in a folder and to create an application manifest with WSA extensions (which are not yet documented on MSDN). to run Minecraft Server, you need Java 64bits, therefore you need to download and install it on a 64Bit OS, then you need to copy the content of C:\Program Files\Java into your package folder. Then you need to download the Minecraft Server JAR file from minecraft.net and put it in your package folder which should look like that:</p>
<p><img class="alignnone" src="https://i0.wp.com/i.imgur.com/VGkR9Td.png" alt="" width="604" height="133" /></p>
<p>Minecraft Server creates several files the first time it runs, so I recommend to open a command prompt and try to run Minecraft server, it will create the default files but will stop because the EULA was not accepted.</p>
<p><img class="alignnone" src="https://i0.wp.com/i.imgur.com/3mGBK9Y.png" alt="" width="978" height="211" /></p>
<p>Now, open the EULA.txt file and replace <strong>eula=false</strong> by <strong>eula=true</strong>, run the server again and wait for it to finish the world initialization as well as generation of working files which should look like this at the end.</p>
<p><img class="alignnone" src="https://i0.wp.com/i.imgur.com/YNJFXLH.png" alt="" width="865" height="778" /></p>
<p>Your package folder is now ready, you need to add a logo picture called logo.png and a manifest, this is the one I used (Please remember that this creates a service but the service won&#8217;t start)</p>
<p><a href="http://pastebin.com/0Aeheeyp" target="_blank" rel="noopener">Download Manifest File</a></p>
<p><img class="alignnone" src="https://i0.wp.com/i.imgur.com/uDVm4pb.png" alt="" width="782" height="981" /></p>
<p>You are now ready for the packaging, you will need Windows 10 SDK installed on your packaging machine in order to have access to the makeappx and other tools. The script below will</p>
<ol>
<li>create the appx package</li>
<li>create the certificate referenced in the manifest</li>
<li>export the certificate with Private key to a pfx file</li>
<li>use the pfx file to sign the appx package</li>
<li>copy the appx package to the nano server as well as the Minecraft server files (since the appx doesn&#8217;t work, we will run the Minecraft server from the command line directly)</li>
<li>Create the firewall rules needed to allow clients to connect to the Minecraft server</li>
<li>Launch the Minecraft server</li>
</ol>
<p>Please note that the paths have been changed, you might want to modify this script to make it work</p>
<p><a href="http://pastebin.com/B9izMTeF" target="_blank" rel="noopener">Download Script</a></p>
<p style="background:white;"><span style="font-family:Lucida Console;font-size:9pt;"><img class="alignnone" src="https://i0.wp.com/i.imgur.com/o3YYW3x.png" alt="" width="984" height="759" /></span></p>
<p>We&#8217;re now all set the Minecraft server was started with the last line, and if your VM has access to the internet and the Mojang authentication server you should be able to connect to it using the Minecraft client.</p>
<p><img class="alignnone" src="https://i0.wp.com/i.imgur.com/jndMpEA.jpg" alt="" width="859" height="755" /></p>
<p>Yes, yes &#8230; I was shot by a skeleton &#8230; I&#8217;m ashamed but to be very honest this was my reaction when I finally got in my Minecraft Server running on Nano Server and the sneaky skeleton took the opportunity to shoot me <img src="https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><img class="alignnone" src="https://i0.wp.com/i.imgur.com/XXGaPL9.gif" alt="" width="256" height="256" /></p>
]]></content:encoded>
					
					<wfw:commentRss>https://dsebban.wordpress.com/2016/03/29/it-pro-con-nyc-2016-minecraft-server-1-9-running-on-nano-server-2016-tp4/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">473</post-id>
		<media:content url="https://2.gravatar.com/avatar/eb44069fe9eb62302e2f487c54bee27944e613f9c96166009c46ef167c521dfb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sebbandavid</media:title>
		</media:content>

		<media:content url="http://www.itproconny.com/wp-content/uploads/2016/02/ITProConNY-160-120-white-1.jpg" medium="image" />

		<media:content url="http://i.imgur.com/ZoIHWip.png" medium="image" />

		<media:content url="http://i.imgur.com/QBIvfiv.png" medium="image" />

		<media:content url="http://i.imgur.com/CQszCAsg.png" medium="image" />

		<media:content url="http://i.imgur.com/VGkR9Td.png" medium="image" />

		<media:content url="http://i.imgur.com/3mGBK9Y.png" medium="image" />

		<media:content url="http://i.imgur.com/YNJFXLH.png" medium="image" />

		<media:content url="http://i.imgur.com/uDVm4pb.png" medium="image" />

		<media:content url="http://i.imgur.com/o3YYW3x.png" medium="image" />

		<media:content url="http://i.imgur.com/jndMpEA.jpg" medium="image" />

		<media:content url="http://i.imgur.com/XXGaPL9.gif" medium="image" />
	</item>
		<item>
		<title>IT Pro Con NY 2016 (formerly Techstravaganza)</title>
		<link>https://dsebban.wordpress.com/2016/03/17/it-pro-con-ny-2016-formerly-techstravaganza/</link>
					<comments>https://dsebban.wordpress.com/2016/03/17/it-pro-con-ny-2016-formerly-techstravaganza/#respond</comments>
		
		<dc:creator><![CDATA[David Sebban]]></dc:creator>
		<pubDate>Thu, 17 Mar 2016 13:00:45 +0000</pubDate>
				<category><![CDATA[Non classé]]></category>
		<guid isPermaLink="false">http://dsebban.wordpress.com/?p=449</guid>

					<description><![CDATA[Hi everyone, The registration for IT Pro Con NY is open, as the Windows track owner, I am super excited for this event, we have rock star speakers this year and you don&#8217;t want to miss it. Michael Niehaus (Microsoft) will speak about Windows 10 Alfred Ojukwu (Microsoft) will speak about EMS Bhargav Shukla (MVP &#8230; <a class="more-link" href="https://dsebban.wordpress.com/2016/03/17/it-pro-con-ny-2016-formerly-techstravaganza/">More <span class="screen-reader-text">IT Pro Con NY 2016 (formerly Techstravaganza)</span></a>]]></description>
										<content:encoded><![CDATA[<p><img class=" aligncenter" title="logo" src="https://i0.wp.com/www.itproconny.com/wp-content/uploads/2016/02/ITProConNY-160-120-white-1.jpg" alt="" align="center" /></p>
<p>Hi everyone,</p>
<p style="text-align:justify;">The registration for IT Pro Con NY is open, as the Windows track owner, I am super excited for this event, we have rock star speakers this year and you don&#8217;t want to miss it.</p>
<ul>
<li><a href="https://blogs.technet.microsoft.com/mniehaus/" target="_blank">Michael Niehaus</a> (Microsoft) will speak about Windows 10</li>
<li><a href="http://twitter.com/alojukwu" target="_blank">Alfred Ojukwu</a> (Microsoft) will speak about EMS</li>
<li><a href="http://twitter.com/bhargavs" target="_blank">Bhargav Shukla</a> (MVP from KEMP our track sponsor) will speak about networking in modern datacenters</li>
<li><a href="http://twitter.com/adnancartwright" target="_blank">Adnan Cartwright</a> (MVP) will speak about OMS</li>
<li>I will speak about Nano Server !</li>
</ul>
<p style="text-align:center;"><a href="https://www.eventbrite.com/e/it-pro-con-ny-2016-registration-21439494104" target="_blank">Register now !</a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://dsebban.wordpress.com/2016/03/17/it-pro-con-ny-2016-formerly-techstravaganza/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">449</post-id>
		<media:content url="https://2.gravatar.com/avatar/eb44069fe9eb62302e2f487c54bee27944e613f9c96166009c46ef167c521dfb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sebbandavid</media:title>
		</media:content>

		<media:content url="http://www.itproconny.com/wp-content/uploads/2016/02/ITProConNY-160-120-white-1.jpg" medium="image">
			<media:title type="html">logo</media:title>
		</media:content>
	</item>
		<item>
		<title>Windows 10 IT Pro Readiness</title>
		<link>https://dsebban.wordpress.com/2016/03/16/windows-10-it-pro-readiness/</link>
					<comments>https://dsebban.wordpress.com/2016/03/16/windows-10-it-pro-readiness/#respond</comments>
		
		<dc:creator><![CDATA[David Sebban]]></dc:creator>
		<pubDate>Wed, 16 Mar 2016 13:44:05 +0000</pubDate>
				<category><![CDATA[MVP]]></category>
		<guid isPermaLink="false">http://dsebban.wordpress.com/?p=436</guid>

					<description><![CDATA[Hi Everyone, As mentioned in my previous article, I spoke at the Windows 10 IT Pro readiness virtual event back in October. The recording is live on Channel 9 (HEY MOM, LOOK I&#8217;M ON TV CHANNEL 9!) Enjoy https://channel9.msdn.com/Events/MVP-Virtual-Conference/Windows-10-IT-Pro-Readiness/USACanada/player]]></description>
										<content:encoded><![CDATA[<p>Hi Everyone,</p>
<p>As mentioned in my previous article, I spoke at the Windows 10 IT Pro readiness virtual event back in October. The recording is live on Channel 9 (HEY MOM, LOOK I&#8217;M ON <span style="text-decoration:line-through;">TV</span> CHANNEL 9!)</p>
<p>Enjoy</p>
<p><a href="https://channel9.msdn.com/Events/MVP-Virtual-Conference/Windows-10-IT-Pro-Readiness/USACanada/player">https://channel9.msdn.com/Events/MVP-Virtual-Conference/Windows-10-IT-Pro-Readiness/USACanada/player</a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://dsebban.wordpress.com/2016/03/16/windows-10-it-pro-readiness/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">436</post-id>
		<media:content url="https://2.gravatar.com/avatar/eb44069fe9eb62302e2f487c54bee27944e613f9c96166009c46ef167c521dfb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sebbandavid</media:title>
		</media:content>
	</item>
		<item>
		<title>My blog is alive &#8230; ALIVE</title>
		<link>https://dsebban.wordpress.com/2015/09/22/my-blog-is-alive-alive/</link>
					<comments>https://dsebban.wordpress.com/2015/09/22/my-blog-is-alive-alive/#respond</comments>
		
		<dc:creator><![CDATA[David Sebban]]></dc:creator>
		<pubDate>Tue, 22 Sep 2015 20:47:23 +0000</pubDate>
				<category><![CDATA[Non classé]]></category>
		<guid isPermaLink="false">http://dsebban.wordpress.com/?p=430</guid>

					<description><![CDATA[Hello, After a long period of inactivity and after the migration of my company website to a new platform, which caused my blog to disappear, I decided to transfer whatever blog posts I could recover from my previous blog backup and revive this blog. I am currently working on a couple projects : Powered by &#8230; <a class="more-link" href="https://dsebban.wordpress.com/2015/09/22/my-blog-is-alive-alive/">More <span class="screen-reader-text">My blog is alive &#8230;&#160;ALIVE</span></a>]]></description>
										<content:encoded><![CDATA[<p>Hello,</p>
<p>After a long period of inactivity and after the migration of my company website to a new platform, which caused my blog to disappear, I decided to transfer whatever blog posts I could recover from my previous blog backup and revive this blog.</p>
<p>I am currently working on a couple projects :</p>
<ul>
<li><a href="https://mvpstaging.com/en-us/pages/win10" target="_blank">Powered by MVPs event </a>:  I will be speaking at that virtual online event, register now for free !</li>
<li><a href="http://www.meetup.com/NYeWin/" target="_blank">New York Enterprise Windows User Group </a>: after a year of silence, this group is also reviving like a Phoenix, join the meetup group and join us for the next meeting</li>
</ul>
<p>I also wanted to work on the upcoming AzureCon but was missing time, if you haven&#8217;t registered yet, <a href="https://azure.microsoft.com/en-us/azurecon/" target="_blank">here&#8217;s the link</a>, only one week left !</p>
<p>I am super happy about this and I invite you to join me in celebrating the revival of my blog, invite your friends, pump up the music volume, throw confetti in the air &#8230; YAY</p>
<p><img src="https://i0.wp.com/i.imgur.com/LdfdP.gif" alt="" /></p>
]]></content:encoded>
					
					<wfw:commentRss>https://dsebban.wordpress.com/2015/09/22/my-blog-is-alive-alive/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">430</post-id>
		<media:content url="https://2.gravatar.com/avatar/eb44069fe9eb62302e2f487c54bee27944e613f9c96166009c46ef167c521dfb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">sebbandavid</media:title>
		</media:content>

		<media:content url="http://i.imgur.com/LdfdP.gif" medium="image" />
	</item>
	</channel>
</rss>
