しみゆーメモ

仕事のこと、子育てのこと、家事のこと、ただの日記、何でもかんでも書いておく場所

ARP:Address Resolution Protocol

通信には4つのアドレスが必要

ARPとは

IPアドレス〇〇にデータを送信したいので、MACアドレスを教えて」

というプロトコル

ARPの動作の流れ

参考

www.amazon.co.jp

Azure App Service プランを作成すると、OSがWindowsになってしまう

概要

最近、Azure App Serviceを可用性ゾーンにデプロイすることができるようになった(ゾーン冗長)。これで、アプリケーションを別々のゾーンに分散できるようになり、リージョンを別にするよりも手軽に可用性向上ができるようになる。

このゾーン冗長を利用するべく、App Service Planを作成した。

docs.microsoft.com

App Serviceの可用性ゾーンを使用する際の制約など

このゾーン冗長の設定は、2022年1月の段階で

  • App Service プランを作成するときのみ設定できる
  • 既存のApp Service プランにゾーン冗長を追加することができない
  • Azure Portalから設定できない(ARMテンプレートを使用する必要あり)

などの制約がある。

ARM テンプレートでApp Service プランを作成する

テンプレートの内容

{
  "$schema": "http://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "hostingPlanName": {
      "type": "string"
    },
    "sku": {
      "type": "string"
    },
    "skuCode": {
      "type": "string"
    },
    "numberOfWorkers": {
      "type": "string"
    }
  },
  "resources": [
    {
      "apiVersion": "2020-12-01",
      "name": "[parameters('hostingPlanName')]",
      "type": "Microsoft.Web/serverfarms",
      "location": "[resourceGroup().location]",
      "kind": "linux",
      "properties": {
        "zoneRedundant": true,
        // これがtrueだとlinux / falseだとwindows
        "reserved": true,
      },
      "sku": {
        "tier": "[parameters('sku')]",
        "name": "[parameters('skuCode')]",
        "capacity": "[parameters('numberOfWorkers')]"
      }
    }
  ]
}

手順

  • Azure portalの[カスタム テンプレートからのデプロイ]
  • [作成]を選択
  • [エディターで独自のテンプレートを作成する]を選択
  • 表示されたエディタにARMテンプレートをコピぺ
  • [インスタンスの詳細]を埋める
    • ARMテンプレートのparametersの中で指定した項目が表示される(skuやskuCodeなど)
  • デプロイ

これで、このApp Service プランに登録するApp Serviceを複数のゾーンに分散することができる(Zone redundantがtrueになっているはず)。

なお、Linux App Service プランを使用したい場合は、

  • kindlinux
  • properties.reservedtrue

にする必要がある。

詰まったこと

"properties": {
  "reserved": true,
},

が抜けていた。

kindをlinuxにして、properties.reservedfalseにすると、Linuxプランなのに、OSがWindowsになるというなんとも気持ち悪い状態になってしまった。

パッと見で、reservedがLinuxかどうかを指定するプロパティに見えなかったので、悩んだ。

結局、答えはドキュメントに書いてあった。

properties.reserved boolean Linux app service プランの場合は true 、 false それ以外の場合はです。

docs.microsoft.com

参考にさせていただいたサイト

blog.shibayan.jp

docs.microsoft.com

【Azure】App Service プランについてのざっくりとした理解

App Service プランとは

ざっくりとした理解

  • マシンスペックを定義するもの
  • サーバーファームみたいなもの
  • アプリケーションを入れる箱

App Service プランを作成するのは、仮想サーバを1台作る(借りる)イメージ。

作成時には、サーバのスペック(CPUやメモリ)とインスタンス数を決める。

このサーバ上で、App ServiceやAzure Functionを動かすことができる。

App Service プランで実行できるもの

同じApp Service プランに紐づくApp ServiceやFunctionのスペックやインスタンス数は同じ

スペックやインスタンス数は、あくまでもApp Service プランに対して設定する。 同じApp Service プランに登録されたApp ServiceやFunctionは、同じスペック、同じインスタンス数となる。

スケールアップ

  • 1台のサーバのスペックを上げること。具体的にはCPUのコア数やメモリ
  • 必要な時に一時的に変更することはできない

スケールアウト

  • サーバ(インスタンス)の台数を増やすこと。複数のリクエストを同時に捌けるようになる。
  • 必要になったときだけ一時的に増やすことができる。
  • オートスケール機能がある()

リージョン

App Service プランのリージョンとそこで実行されるアプリのリージョンは、同一である必要がある

App Service プランの価格に影響するもの

CPUの利用状況では価格は変動しない。

docs.microsoft.com

App Service プランの価格プラン

  • Free、Sharedプランは複数ユーザーで仮想マシンを共有する。そのため、CPUやストレージのスケールアウトはできない
  • 最大インスタンス
    • Basic: 3
    • Standard: 10
    • Premium: 30
  • ディスク領域
    • Basic: 10GB
    • Standard: 50GB
    • Premium: 250GB

azure.microsoft.com

参考

docs.microsoft.com

qiita.com

マスターしたいショートカットキー一覧

Windows

デスクトップ画面を表示する

windowsキー + D

設定画面を表示する

windowsキー + I

エクスプローラを起動する

windowsキー + E

ウィンドウを大きく(小さく)する

windowsキー + 上下矢印キー

新しいフォルダを作成する

Ctrl + Shift + N

前(後ろ)のフォルダに戻る

Alt + 横矢印キー

親フォルダに移動する

Alt + 上矢印キー

プロパティを表示する

Alt + Enter

【ブラウザ(Chrome)】

タブを閉じる

Ctrl + W

タブを切り替える

Ctrl + Tab

一番左のタブに移動

Ctrl + 1

一番右のタブに移動

Ctrl + 9

アドレスバーを選択状態にする

Alt + D

戻る&進む

Alt + 横矢印キー

ブックマックバーの表示非表示を切り替える

Ctrl + Shift + B

閲覧履歴を削除する

Ctrl + Shift + Delete

ページの一番上(一番下)に移動する

Home(End)ボタン

【全般的に当てはまるもの】

起動しているアプリケーションを閉じる

Alt + F4

ファイルを開く

Ctrl + O

行頭(行末)に移動する

Home(End)ボタン