MECを疑似的なハンズオン形式で紹介（AWS Wavelength）

### はじめに

実際にMECを触ってみるという観点で学習するべく、AWSのWavelengthを実際に利用することとしました。

※KDDIのAWS Wavelengthとは
![Wavelength.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/3f445244-dddf-046a-deee-27083c45f92b.png)


それでは実際に触ってみます。

## AWSでの構築

KDDIのAWS Wavelengthを用いた構成図は以下のものとなります。
![スクリーンショット 2023-03-27 044126.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/fa97b1f3-1f7a-c8af-7a07-b1ee5696ce00.png)

引用元
https://developers.kddi.com/blog/5CamLwJtvfgyQQkW2BZ1CQ

### 下準備~Wavelengthの有効化~

デフォルトだとWavelengthの利用は無効になっているため、まずはここを有効化します！

![スクリーンショット 2023-03-27 013522.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/6e7ce7b2-1767-7a6e-047c-2aaec1cf70d6.png)

![スクリーンショット 2023-03-27 013935.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/79d492ae-fd65-b55f-8e07-3f32d2a6944f.png)

これで下準備は完了です！（数分待つと有効化されます）
![スクリーンショット 2023-03-27 015426.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/56b3e231-d999-95c3-b726-1dda6fa7bf19.png)

## VPCの作成

それでは、中身であるVPC,サブネットを作っていきます。
既存のAWSでVPCやサブネットを使う時と大きな変化はないです。
（従来通りの設計でMECを利用できることこそがAWS Wavelengthのメリット）

![スクリーンショット 2023-03-27 044734.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/9c3181c6-e54b-8b9f-cd0a-27777848b8ae.png)

まずはこのようにしてVPCを作成します。

VPCを作成し終えると次にサブネットを作るのですがその際1点注意点があります。
![スクリーンショット 2023-03-27 045121.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/65c7b8b3-1dea-1a5d-e085-041d3ee075c4.png)

アベイラビリティーゾーンの設定を通常の東京リージョンではなく、
"アジアパシフィック（KDDI）-東京"
を選択します。（これがWavelength Zoneになります。）

## Carrier Gatewayの作成
これはWavelengthを利用するとき特有なのですが、Carrier Gatewayを
作成する必要があります。

通常のVPCだとインターネットと接続するにはインターネットゲートウェイが必要になりますが、Wavelengthの場合はCarrier Gatewayを用いて、KDDIのキャリア網と通信をします。

では、こちらでキャリアゲートウェイを作成していきます。
![スクリーンショット 2023-03-27 050812.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/bc7e678f-cc07-07ce-aedd-fde180d173eb.png)

作成したVPCに紐づけます。
![スクリーンショット 2023-03-27 050949.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/79751ab8-87db-11a7-93f0-aa379051525f.png)

紐づけて、「キャリアゲートウェイを作成」を押下すると、キャリアゲートウェイができます。

次にこの作成したキャリアゲートウェイとサブネットを紐づけます。

キャリアゲートウェイを作成すると、自動的に1つルートテーブルが作成されます。
![スクリーンショット 2023-03-27 051901.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/e422b599-cb86-62a9-5d3b-bb86fc8f663b.png)

このルートテーブルに、Wavelength Zoneに紐づくサブネットを関連付けます。
![スクリーンショット 2023-03-27 053436.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/786002e1-b2ec-c32c-5e6d-a709b3bc26d7.png)

## EC2インスタンスの作成

Wavelength ZoneにEC2を作成します。
普通のAZでEC2を作る時と、操作は同様です。
![スクリーンショット 2023-03-27 054233.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/ae1a607d-3f6f-5ed4-9844-fda57b1eb000.png)

ただし、1個注意する必要があり、インスタンスタイプを選択するのですが、
Wavelength Zoneでは使うことのできるインスタンスが以下の4つに制限されています。

t3.medium、t3.xlarge、g4dn.2xlarge、r5.2xlarge

なので、そこに注意してインスタンスタイプを選択します。
![スクリーンショット 2023-03-27 054531.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/4f7e1447-8967-33e6-2ff4-ca1bae18b07d.png)
![スクリーンショット 2023-03-27 054613.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/85f1f2df-7dde-7948-bc19-bd91bc0b091f.png)

セキュリティグループはVPC内部に限定した通信を許可し、インスタンスを作成します。

#### ここで問題が、、、
Wavelength Zoneにインスタンスを作成したが、いつまで経っても状態が保留中のままで、利用可能な状態になりませんでした。
![スクリーンショット 2023-03-27 061811.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/5e778c4c-75c9-2fe7-1097-cc3c19f1fe2d.png)
Wavelength zoneではなく通常の東京AZにインスタンスを作成してみると、問題なく実行中になりました。。
![スクリーンショット 2023-03-27 061836.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/360bf59b-5276-2baf-15d5-901df2bd3c5c.png)

原因が特定できず（リソース不足？セキュリティグループの設定？）、現時点で解決出来なかったためハンズオンはここまでとし、以下では僕がやりたかったことを紹介します。

#### やりたかったこと
##### 踏み台サーバー経由でのWavelength zoneへのアクセス
![スクリーンショット 2023-03-27 044126.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/eef448ad-653a-7e9a-0d86-021cbbbd4c44.png)
インターネットからだと直接Wavelength Zoneにアクセスできないため、踏み台サーバー経由でアクセスすることになります。
（Elastic IPをWavelength内のEC2に付与すると、KDDI網から直接アクセスできるようになる）

そのため、自分の端末-踏み台サーバー（東京AZ内のEC2）-Wavelength Zone内のEC2
という経路で通信ができるか確認したかったです。




##### 通信速度の比較
端末(galaxy note ultra)-サーバー（wavelength zone内サーバー,通常リージョンのサーバー）
背景赤色、水色部分（networkがmili,sub6）が5G
その中でもlocationにWLがついているもの（背景赤色）がWavelength Zone内のものです
![スクリーンショット 2023-03-27 062534.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3291849/532ccedb-db54-bde6-ccc4-5c4f55b638a5.png)
Wavelengthの方が、1.3倍ほど通信速度が速かったです。


### 終わりに
最後まで自身のハンズオンでできなかったのは不完全燃焼でありました。（後学のために調査は引き続き続けます）
ただ、実際に触ってみて通常のAWSの操作感でMECサービスを利用する感覚は学ぶことができ、すぐさま利用できる点や手軽さがメリットであると感じました。