From f8116e2b7178fab4d51438b0a5e69197bf6ba695 Mon Sep 17 00:00:00 2001
From: Pavel Khakhulin
Date: Mon, 5 Jun 2017 16:29:56 +0300
Subject: [PATCH] node-to-enode sample
---
README.md | 6 +-
node-to-enode.json | 187 +++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 190 insertions(+), 3 deletions(-)
create mode 100644 node-to-enode.json
diff --git a/README.md b/README.md
index 1a634b5..4027c63 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@ This repository is used to learn how arm templates work.
[![Visualize](http://armviz.io/visualizebutton.png)](http://armviz.io/#/?load=https%3a%2f%2fraw.githubusercontent.com%2foraclesorg%2fazure-templates%2fmaster%2fmain.json)
-## Two nodes
-[![Deploy to Azure](http://azuredeploy.net/deploybutton.png)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3a%2f%2fraw.githubusercontent.com%2foraclesorg%2ftest-templates%2fmaster%2ftwo-nodes.json)
+## Node-to-enode
+[![Deploy to Azure](http://azuredeploy.net/deploybutton.png)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3a%2f%2fraw.githubusercontent.com%2foraclesorg%2ftest-templates%2fmaster%2fnode-to-enode.json)
-[![Visualize](http://armviz.io/visualizebutton.png)](http://armviz.io/#/?load=https%3a%2f%2fraw.githubusercontent.com%2foraclesorg%2fazure-templates%2fmaster%2ftwo-nodes.json)
+[![Visualize](http://armviz.io/visualizebutton.png)](http://armviz.io/#/?load=https%3a%2f%2fraw.githubusercontent.com%2foraclesorg%2fazure-templates%2fmaster%2fnode-to-enode.json)
diff --git a/node-to-enode.json b/node-to-enode.json
new file mode 100644
index 0000000..7a28205
--- /dev/null
+++ b/node-to-enode.json
@@ -0,0 +1,187 @@
+{
+ "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
+ "contentVersion": "1.0.0.0",
+ "parameters": {
+ "adminUsername": {
+ "type": "string",
+ "metadata": {
+ "description": "User name for the Virtual Machine."
+ }
+ },
+ "adminPassword": {
+ "type": "securestring",
+ "metadata": {
+ "description": "Password for the Virtual Machine."
+ }
+ },
+ "dnsLabelPrefix": {
+ "type": "string",
+ "metadata": {
+ "description": "Unique DNS Name for the Public IP used to access the Virtual Machine."
+ }
+ },
+ "ubuntuOSVersion": {
+ "type": "string",
+ "defaultValue": "16.04.0-LTS",
+ "allowedValues": [
+ "12.04.5-LTS",
+ "14.04.5-LTS",
+ "15.10",
+ "16.04.0-LTS"
+ ],
+ "metadata": {
+ "description": "The Ubuntu version for the VM. This will pick a fully patched image of this given Ubuntu version."
+ }
+ }
+ },
+ "variables": {
+ "storageAccountName": "[concat(uniquestring(resourceGroup().id), 'salinuxvm')]",
+ "imagePublisher": "Canonical",
+ "imageOffer": "UbuntuServer",
+ "nicName": "myVMNic",
+ "addressPrefix": "10.0.0.0/16",
+ "subnetName": "Subnet",
+ "subnetPrefix": "10.0.0.0/24",
+ "storageAccountType": "Standard_LRS",
+ "publicIPAddressName": "myPublicIP",
+ "publicIPAddressType": "Dynamic",
+ "vmName": "MyUbuntuVM",
+ "vmSize": "Standard_A1",
+ "virtualNetworkName": "MyVNET",
+ "vnetID": "[resourceId('Microsoft.Network/virtualNetworks',variables('virtualNetworkName'))]",
+ "subnetRef": "[concat(variables('vnetID'),'/subnets/',variables('subnetName'))]"
+ },
+ "resources": [
+ {
+ "type": "Microsoft.Storage/storageAccounts",
+ "name": "[variables('storageAccountName')]",
+ "apiVersion": "2017-06-01",
+ "location": "[resourceGroup().location]",
+ "sku": {
+ "name": "[variables('storageAccountType')]"
+ },
+ "kind": "Storage",
+ "properties": {}
+ },
+ {
+ "apiVersion": "2017-04-01",
+ "type": "Microsoft.Network/publicIPAddresses",
+ "name": "[variables('publicIPAddressName')]",
+ "location": "[resourceGroup().location]",
+ "properties": {
+ "publicIPAllocationMethod": "[variables('publicIPAddressType')]",
+ "dnsSettings": {
+ "domainNameLabel": "[parameters('dnsLabelPrefix')]"
+ }
+ }
+ },
+ {
+ "apiVersion": "2017-04-01",
+ "type": "Microsoft.Network/virtualNetworks",
+ "name": "[variables('virtualNetworkName')]",
+ "location": "[resourceGroup().location]",
+ "properties": {
+ "addressSpace": {
+ "addressPrefixes": [
+ "[variables('addressPrefix')]"
+ ]
+ },
+ "subnets": [
+ {
+ "name": "[variables('subnetName')]",
+ "properties": {
+ "addressPrefix": "[variables('subnetPrefix')]"
+ }
+ }
+ ]
+ }
+ },
+ {
+ "apiVersion": "2017-04-01",
+ "type": "Microsoft.Network/networkInterfaces",
+ "name": "[variables('nicName')]",
+ "location": "[resourceGroup().location]",
+ "dependsOn": [
+ "[resourceId('Microsoft.Network/publicIPAddresses/', variables('publicIPAddressName'))]",
+ "[resourceId('Microsoft.Network/virtualNetworks/', variables('virtualNetworkName'))]"
+ ],
+ "properties": {
+ "ipConfigurations": [
+ {
+ "name": "ipconfig1",
+ "properties": {
+ "privateIPAllocationMethod": "Dynamic",
+ "publicIPAddress": {
+ "id": "[resourceId('Microsoft.Network/publicIPAddresses',variables('publicIPAddressName'))]"
+ },
+ "subnet": {
+ "id": "[variables('subnetRef')]"
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "apiVersion": "2017-03-30",
+ "type": "Microsoft.Compute/virtualMachines",
+ "name": "[variables('vmName')]",
+ "location": "[resourceGroup().location]",
+ "dependsOn": [
+ "[resourceId('Microsoft.Storage/storageAccounts/', variables('storageAccountName'))]",
+ "[resourceId('Microsoft.Network/networkInterfaces/', variables('nicName'))]"
+ ],
+ "properties": {
+ "hardwareProfile": {
+ "vmSize": "[variables('vmSize')]"
+ },
+ "osProfile": {
+ "computerName": "[variables('vmName')]",
+ "adminUsername": "[parameters('adminUsername')]",
+ "adminPassword": "[parameters('adminPassword')]"
+ },
+ "storageProfile": {
+ "imageReference": {
+ "publisher": "[variables('imagePublisher')]",
+ "offer": "[variables('imageOffer')]",
+ "sku": "[parameters('ubuntuOSVersion')]",
+ "version": "latest"
+ },
+ "osDisk": {
+ "createOption": "FromImage"
+ },
+ "dataDisks": [
+ {
+ "diskSizeGB": "128",
+ "lun": 0,
+ "createOption": "Empty"
+ }
+ ]
+ },
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "[resourceId('Microsoft.Network/networkInterfaces',variables('nicName'))]"
+ }
+ ]
+ },
+ "diagnosticsProfile": {
+ "bootDiagnostics": {
+ "enabled": "true",
+ "storageUri": "[concat(reference(concat('Microsoft.Storage/storageAccounts/', variables('storageAccountName')), '2016-01-01').primaryEndpoints.blob)]"
+ }
+ }
+ }
+ }
+ ],
+ "outputs": {
+ "hostname": {
+ "type": "string",
+ "value": "[reference(variables('publicIPAddressName')).dnsSettings.fqdn]"
+ },
+ "sshCommand": {
+ "type": "string",
+ "value": "[concat('ssh ', parameters('adminUsername'), '@', reference(variables('publicIPAddressName')).dnsSettings.fqdn)]"
+ }
+ }
+}