https://docs.microsoft.com/ja-jp/azure/application-gateway/tutorial-ssl-cli

オレオレ証明書作成

yuta@DESKTOP-V36210S:/mnt/c/Users/carlo$ openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout privateKey.key -out appgwcert.crt
Can't load /home/yuta/.rnd into RNG
139982984253888:error:2406F079:random number generator:RAND_load_file:Cannot open file:../crypto/rand/randfile.c:88:Filename=/home/yuta/.rnd
Generating a RSA private key
...............+++++
.......................................+++++
writing new private key to 'privateKey.key' 
-----
You are about to be asked to enter information that will be incorporated   
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:*.vamdemic.com    
Email Address []:
yuta@DESKTOP-V36210S:/mnt/c/Users/carlo$ 
yuta@DESKTOP-V36210S:/mnt/c/Users/carlo$ 
yuta@DESKTOP-V36210S:/mnt/c/Users/carlo$ openssl pkcs12 -export -out appgwcert.pfx -inkey privateKey.key -in appgwcert.crt
Enter Export Password:Azure123456!
Verifying - Enter Export Password:Azure123456!

アプリケーションゲートウェイを作る

# リソースグループ作成
az group create --name myResourceGroupAG-test --location eastus

# ネットワーク作成
az network vnet create \
  --name myVNet \
  --resource-group myResourceGroupAG-test \
  --location eastus \
  --address-prefix 10.0.0.0/16 \
  --subnet-name myAGSubnet \
  --subnet-prefix 10.0.1.0/24

az network vnet subnet create \
  --name myBackendSubnet \
  --resource-group myResourceGroupAG-test \
  --vnet-name myVNet \
  --address-prefix 10.0.2.0/24

az network public-ip create \
  --resource-group myResourceGroupAG-test \
  --name myAGPublicIPAddress \
  --allocation-method Static \
  --sku Standard
  
# アプリケーションゲートウェイ作成
az network application-gateway create \
  --name myAppGateway \
  --location eastus \
  --resource-group myResourceGroupAG-test \
  --vnet-name myVNet \
  --subnet myAGsubnet \
  --capacity 2 \
  --sku Standard_v2 \
  --http-settings-cookie-based-affinity Disabled \
  --frontend-port 443 \
  --http-settings-port 80 \
  --http-settings-protocol Http \
  --public-ip-address myAGPublicIPAddress \
  --cert-file appgwcert.pfx \
  --cert-password "Azure123456!"

# 仮想スケールセット作成
az vmss create \
  --name myvmss \
  --resource-group myResourceGroupAG-test \
  --image UbuntuLTS \
  --admin-username azureuser \
  --admin-password Azure123456! \
  --instance-count 2 \
  --vnet-name myVNet \
  --subnet myBackendSubnet \
  --vm-sku Standard_DS2 \
  --upgrade-policy-mode Automatic \
  --app-gateway myAppGateway \
  --backend-pool-name appGatewayBackendPool
  
# 拡張機能でのNginxをインストール
az vmss extension set \
  --publisher Microsoft.Azure.Extensions \
  --version 2.0 \
  --name CustomScript \
  --resource-group myResourceGroupAG-test \
  --vmss-name myvmss \
  --settings '{ "fileUris": ["https://raw.githubusercontent.com/Azure/azure-docs-powershell-samples/master/application-gateway/iis/install_nginx.sh"],"commandToExecute": "./install_nginx.sh" }'

拡張機能をインストールするとこんな感じになる

パブリックIPアドレスを取得する

az network public-ip show \
  --resource-group myResourceGroupAG-test \
  --name myAGPublicIPAddress \
  --query [ipAddress] \
  --output tsv

アクセスする

<スポンサーリンク>

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)