すべてのプロダクト
Search
ドキュメントセンター

:PSec VPN および Express Connect を介した AWS S3 から Alibaba Cloud OSS へのデータ移行

最終更新日:Dec 22, 2023

本ドキュメントは、IPSec VPN トンネルと ExpressConnect を介して AWS S3 バケットのデータを Alibaba Cloud OSS バケットに移行する方法を説明します。

Backgroud情報

お客様が AWS S3 から Alibaba Cloud OSS、特に国を跨いでデータを移行する場合、通常、2 つのネットワークアーキテクチャを選択できます。

  • インターネットに基づくデータ転送
  • プライベートネットワークに基づいてデータを転送します。
本ドキュメントは、プライベートネットワークのアーキテクチャに焦点を合わせています。 IPSEC VPN トンネルと Alibaba Cloud ExpressConnect 製品ポートフォリオは、内部ネットワークを通じてデータを伝送し、データ伝送のセキュリティを強化するというお客様のニーズを満たすために組み合わされています。

次の図は、全体的なネットワークアーキテクチャを示しています。

このネットワークアーキテクチャの利点は、S3 バケット内のデータが、最初に S3 バケットと同じリージョン内の Alibaba Cloud Network VPC に移動され、次にデータが Alibaba Cloud ExpressConnnect リージョン間 ExpressConnnect により、宛先リージョンの OSS バケットに再送信されることです。 このネットワークアーキテクチャは、国を跨いだデータ移行の転送速度を加速させます。

準備

次の表に、移行プロセスに関与するネットワークエンティティに関する情報を示します。

プロバイダーネットワークエンティティ
AWSVPC in Tokyo172.16.0.0/16
S3 bucket Endpoints3.ap-northeast-1.amazonaws.com
S3 bucket nameeric-s3-tokyo
OssImport IP address in the EC2 instanceInternal IP address: 172.16.1.183 Public IP address: 3.112.29.59
Customer Gateway with StrongswanPublic IP address: 3.112.29.59
Alibaba CloudVPN GatewayPublic IP address: 47.74.46.62
VPC in Tokyo Japan172.24.0.0/16
Subnet in VPC@Tokyo Japan172.24.0.0/20
VPC in Shanghai China172.19.0.0/16
Subnet in VPC@Shanghai China172.19.48.0/20
OSS bucket Endpointhttp://oss-cn-shanghai-internal.aliyuncs.com
OSS bucket nameeric-oss-datastore-shanghai

ステップ1: Strongswanのインストールと設定

Strongswan をインストールするには、AWS で次の操作を実行します。

  1. VPC と関連リソースの準備
    1. 次の設定でVPCを作成します。
    2. 次の設定でサブネットを作成します。
    3. 次の設定でインターネットゲートウェイを作成します。
      説明 SSH クライアントなどのインターネット経由で EC2 にアクセスする場合は、このゲートウェイが必要です。このインターネットゲートウェイを、今作成した VPC に接続します。
    4. セキュリティグループを作成し、トラフィックを許可します。
  2. Strongswan と OssImport の EC2 インスタンスを作成します。
    1. VPC、サブネット、セキュリティグループでEC2インスタンスを起動します。
      説明 SSH クライアントで EC2 インスタンスにアクセスしたい場合は、*.pem ファイルをローカルコンピュータに保存する必要があります。
    2. SSH クライアントで EC2 にアクセスしてみます。

      SSH経由で EC2 インスタンスにログインするには、次のコマンドを実行します。

      ssh -i 3k3j *** M.pem ec2-user@ec2-3-112-29-59.ap-northeast-1.compute.amazonaws.com

      SSH クライアント経由で EC2 インスタンスにアクセスできない場合は、ルートエントリを追加する必要がある可能性があります。

  3. strongSwan をインストールします。

    次のコードを実行してStrongswanをインストールし、Strongswanのバージョンを検証します。

    $ wget http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/s/strongswan-5.7.1-1.el7.x86_64.rpm
    $sudo yumインストールgcc
    $sudo yumズボンをインストール
    $sudo rpm -ivh strongswan-5.7.1-1.el7.x86_64.rpm
    $strongswanバージョン
    Linux strongSwan U5.7.1/K3.10.0-957.el7.x86_64
    スイス、ラッパースヴィル応用科学大学
    著作権情報については、「strongswan -- copyright」を参照してください。
  4. Strongswan を設定します。

    次のコードを実行して Strongswan を設定します。

    $ sudo vi /etc/strongswan/ipsec.conf
    次の設定をファイルに貼り付けます。conn % default
    authby=psk
    type=トンネル
    keyexchange=ikev2
    auto=start
    ike=aes-sha1-modp1024
    ikelifetime=86400秒
    esp=aes-sha1-modp1024
    lifetime=86400s
    conn abc_shanghai_oss
    left=172.16.1.183-// EC2のローカルIPアドレス (Strongswanインストール済み)
    leftsubnet=172.16.1.0/24 .net // AWS東京VPC CIDR。
    leftid=3.112.29.59 //// Public IP address as ID.
    right=47.74.46.62 .pdf // Alibaba Cloud VPN GatewayのパブリックIPアドレス
    rightid=47.74.46.62 .net // IDとしてのパブリックIPアドレス。
    rightsubnet=100.118.102.0/24 //// Note(1)
                            
    説明 Alibaba Cloud Shanghai VPC の一部の ECS インスタンスで OSS バケットのイントラネットエンドポイントを ping すると、この CIDR ブロックに属する IP アドレスを取得できます。 したがって、この CIDR ブロックは正しいサブネットとして使用されます。
  5. Strongswan を起動します。
    1. 次のコマンドを実行します。
      $ sudo su - root
      # echo 1 > /proc/sys/net/ipv4/ip_forward
                                  
      説明 次に、net.ipv4.ip_forward=1/etc/sysctl.confに追加する必要があります。
    2. 次のコマンドを実行してStrongswanを起動します。
      # systemctl enable strongswan
      # systemctl start strongswan
      # systemctl status strongswan
                                  

ステップ2: VPNゲートウェイとIPSec接続の作成

VPN ゲートウェイと IPSec 接続を作成するには、次の手順に従います。

  1. VPN ゲートウェイとカスタマーゲートウェイを作成します。
    1. VPNゲートウェイを作成します。
    2. カスタマーゲートウェイを作成します。
      説明 この場合、Strongswan@AWS EC2 をカスタマーゲートウェイとして使用します。
  2. IPsec 接続を作成します。
    1. 基本的な設定をします。
    2. 詳細設定を行います。
  3. IPSec 接続のステータスを確認します。
    1. Alibaba CloudコンソールでIPSec接続ステータスを確認します。
    2. 次のコマンドを実行して、StrongswanのIPSec接続ステータスを確認します。
      # systemctl status strongswan

ステップ3: VPCピアリング接続の作成

  1. Alibaba Cloud Express ConnectコンソールでVPCピアリング接続を作成するには、「同じAlibaba Cloudアカウントで2つのVPCを接続する」の手順に従います。
  2. AWS VPC と Alibaba Cloud VPC の両方のルート設定に次のルーティングエントリを追加します。
    • 東京ジャパンのAWS VPC
    • Alibaba Cloud VPC in Tokyo Japan
      上の図のサブネットに関する説明は、次の通りです:
      • 100.118.102.0/24: VPC endpoint of OSS bucket in the China Shanghai region

      • 119 172.16.1.0/24: AWS VPC in Tokyo Japan

      • 172.19.48.0/20: Alibaba Cloud VPC in Shanghai China

    • 中国上海のAlibaba Cloud VPC
      上の図のサブネットに関する説明は、次の通りです:
      • 119 172.16.1.0/24: AWS VPC in Tokyo Japan

      • 172.24.0.0/20: Alibaba Cloud VPC in Tokyo Japan

  3. 東京のAWS VPCと上海のAlibaba Cloud OSSバケット間の接続をテストします。

    上の図のテスト結果は、AWS EC2インスタンスとAlibaba Cloud OSSバケット間の接続が接続されていることを示しています。 OssImport をデプロイし、AWS S3 バケットから Alibaba Cloud OSS バケットにオブジェクトを移行できます。

ステップ4: AWS S3バケットのVPCエンドポイントを作成する

このプラクティスでは、VPCのEC2インスタンスにデプロイされたOssImportを使用して、AWS S3バケットからOSSバケットにデータを移動します。 AWS S3 バケット用の VPC エンドポイントを作成し、ルートテーブルに関連付けることで、OssImport が AWS S3 バケットのインターネット IP アドレスにアクセスする代わりに VPC 内の AWS S3 バケットにアクセスできるようにすることをお勧めします。

  1. AWS S3バケットのVPCエンドポイントを作成します。
  2. VPCルーティングテーブルを確認します。
  3. AWS S3 VPCエンドポイントとEC2インスタンス間の接続を確認します。

ステップ5: OssImportを使用してAWS S3バケットからOSSバケットにデータを移行する

ossimportを使用したデータの移行」の手順に従って、OssImportのデプロイと設定を行います。

  1. local_job.cfgファイルを次のように設定します。
    srcType=s3
    srcAccessKey=AK *********** A
    srcSecretKey=+ RW *********** iM3
    srcDomai n=s3.ap-northeast-1.amazonaws.com
    srcBucket=eric-s3-tokyo
    srcPrefix=source_folder /
    destAccessKey=L ************ ic
    destSecretKey=nEtM *********** iDx
    destDomain=http://oss-cn-shanghai-internal.aliyuncs.com
    destBucket=eric-oss-datastore-shanghai
    destPrefix=destination_folder /
                        
  2. import.shを実行し、移行ステータスを確認します。
    [root @ ip-172-16-1-183 ~]# cd /home/ec2-user/ossimport
    [root @ ip-172-16-1-183 ossimport]# 。/import.sh
    前のジョブをきれいにする、はいまたはいいえ: はい
    インポートサービスの完了を停止します。
    ジョブの削除dir:./master/jobs/local_test /
    クリーンジョブ: local_test完了。
    ジョブを送信:/home/ec2-user/ossimport/conf/local_job.cfg
    ジョブを送信: local_test success!
    Start import service completed.
    ……
    ------------- 仕事の統計 -----------------
    ---------------- ジョブstat ------------------
    JobName:local_test
    JobState: ランニング
    PendingTasks:0
    DispatchedTasks:1
    RunningTasks:1
    成功タスク: 0
    FailedTasks:0
    ScanFinished:true
    RunningTasksの進捗状況:
    8528637A126676A4FD0D2F981ED5E0EF_1544176618182:0/191048 1/42
    ----------------------------------------
    ------------- 仕事の統計 -----------------
    ---------------- ジョブstat ------------------
    JobName:local_test
    JobState: ランニング
    PendingTasks:0
    DispatchedTasks:1
    RunningTasks:1
    成功タスク: 0
    FailedTasks:0
    ScanFinished:true
    RunningTasksの進捗状況:
    8528637A126676A4FD0D2F981ED5E0EF_1544176618182:191048/191048 42/42
    [root @ ip-172-16-1-183 ossimport]#
                        
    説明 ログの詳細は、ossimport/logs フォルダーにあります。
  3. AWS S3バケット内のファイルとOSSバケット内のファイルを比較します。

    上記の場合から、ossimportを使用して、IPSec VPNトンネルおよびExpressConnectionクロスカントリー経由でS3データをAlibaba Cloud OSSバケットに確実に移行します。

参考資料