LoginSignup
7
0

More than 1 year has passed since last update.

Oracle Cloud: 契約が異なるテナンシ、異なるリージョン間を Cross-Tenancy Remote Peeringしてみてみた

Last updated at Posted at 2021-06-25

Cross-Tenancy Peeringは、異なるRegion間も接続できます。
ということで、ABC社契約テナンシの Ashuburnリージョンと XYZ社契約テナンシの Phoenixリージョンどうしを Cross-Tenancy Remote Peering して On-PremisesからABC社へ VPN接続を行い、ABC社を中継してOn-Premisesから XYZ社へ疎通できるように設定します。

■ 構成

Cross-Tenancy Peering は、お互いの Tenancy 管理者が同意した場合にのみ可能になり、必要な Policyを付与して Peeringを有効化します。
それぞれのテナンシの管理者の内、ABC-Tenancy側を Requestor、もう一方の XYZ-Tenancy側を Acceptor として指定して必要な IAMポリシーを実装して Peeringします。
構成.jpg

■ 事前準備

各テナンシの Computeインスタンス、VCN、Route Table, Security List等や
On-Premisesと ABC-Tenancyテナンシへ、IPSec VPN接続はあらかじめ疎通できるよう設定しておきます。
・参考: NEC IXルーターを冗長構成でIKEv2 IPSec VPN接続してみてみた

今回は、IDCSユーザーで作業するため次の情報を使用して各テナンシへ IAM Policy と Group作成を行い Cross-Tenancy Peering VCNsします
IAMユーザーで作業する場合は、IDCSグループ作成は不要です。

Tenancy Name ABC-Tenancy XYZ-Tenancy
Region Ashburn Phoenix
Tenancy OCID ocid1.tenancy.oc1..aaaaaaaa4rljlv6dfuvi2qc6 ocid1.tenancy.oc1..aaaaaaaai4sy6qyo2aa6
IDCS Group Name OCI_Requestor-RPC-Admin OCI_Acceptor-RPC-Admin
IAM Group Name Requestor-RPC-Admin Acceptor-RPC-Admin
IAM Group OCID ocid1.group.oc1..aaaaaaaaxqjcqrglcqtfumqny4nto7 -
Policy Name Requestor-RPC-Policy Acceptor-RPC-Policy
Policy Statements ・Define tenancy <Acceptor Tenancy Name> as <Acceptor-Tenancy-OCID>
・Allow group <Requestor-Group-Name> to manage remote-peering-from in compartment <Requestor-Compartment-Name>
・Endorse group <Requestor-Group-Name> to manage remote-peering-to in tenancy <Acceptor-Tenancy-Name>
・Define tenancy <Requestor-Tenancy-Name> as <Requestor-Tenancy-OCID>
・Define group <Requestor-Group-Name> as <Requestor-Group-OCID>
・Admit group <Requestor-Group-Name> of tenancy Requestor to manage remote-peering-to in compartment <Acceptor-Compartment-Name>

■ ABC-Tenancy (Requestor)作業

● IAMグループ: Requestor-RPC-Admin作成

  1. OCI コンソール画面
    [Identity & Security] > Identity項目 の [Groups] をクリック
    01_Group作成00.jpg

  2. Create Group画面
    [Create Group] をクリックし、以下項目を入力して [Create Group] をクリック

    ・Name: 任意の名前を設定
    ・Description: 任意の説明を記載

01_IAMグループ- Requestor-RPC作成02.jpg

  1. 作成完了
    01_IAMグループ- Requestor-RPC作成04.jpg

● IDCSグループ: OCI_Requestor-RPC-Admin作成

  1. Federation画面
    Identity > Federation画面にある、OracleIdentityCloudService をクリック
    02_Federation画面01.jpg

  2. OracleIdentityCloudService画面
    [Resources] > [Groups] 画面にある、[Create IDCS Group]をクリック
    02_IDCSグループ作成01.jpg

  3. Create IDCS Group画面
    以下項目をクリックし、[Create]をクリック

    ・Name: 任意の名前を設定
    ・Description: 任意の説明を記載
    ・Users: 付与するIAMユーザーを選択

02_IDCSグループ作成02.jpg

  1. 作成完了
    02_IDCSグループ作成03.jpg

● IAMグループとIDCSグループマッピング

  1. Group Mappings画面
    [Resources] > [Group Mappings] 画面にある、[Add Mappings]をクリック
    03_IDCSグループマッピング01.jpg

  2. Add Mappings画面
    以下項目をクリックし、[Create]をクリック

    ・Identity Provider Group: 作成した IDCSグループを選択
    ・OCI Group: 作成した IAMグループを選択

03_IDCSグループマッピング02.jpg

  1. Mapping完了
    03_IDCSグループマッピング03.jpg

● IDCSユーザーへIDCSグループ追加

  1. OracleIdentityCloudService: Users画面
    [Resources] > [Users] 画面にある、権限を付与するユーザーを選択
    02_IDCSグループ作成00.jpg

  2. ユーザー名: Groups画面
    [Add to IDCS Group]をクリック
    05_IDCSユーザーへIDCSグループ追加01.jpg

  3. Add User to IDCS Group画面
    以下項目をクリックし、[Add]をクリック

    ・Groups: 作成したIDCSグループを選択

05_IDCSユーザーへIDCSグループ追加02.jpg

  1. Add完了
    05_IDCSユーザーへIDCSグループ追加03.jpg

● ポリシー:Requestor-RPC-Policy作成

  1. OCI コンソール画面
    Identity & Security > Policies をクリック
    04_Policy作成00.jpg

  2. Policies画面
    [Create Plolicy]をクリック
    04_Policy作成01.jpg

  3. Create Policy画面
    以下項目をクリックし、[Create]をクリック

    ・Name: 任意の名前を設定
    ・Compartment: rootコンパートメントを選択
    ・Policy Builder: [Show manual editor]をONにして、以下入力
    Define tenancy XYZ-Tenancy as ocid1.tenancy.oc1..aaaaaaaai4sy6qyo2aa6
    Allow group Requestor-RPC-Admin to manage remote-peering-from in compartment POC
    Endorse group Requestor-RPC-Admin to manage remote-peering-to in tenancy XYZ-Tenancy

04_Policy作成02.jpg

  1. Create完了
    04_Policy作成04.jpg

■ XYZ-Tenancy (Acceptor)作業

● IAMグループ: Acceptor-RPC-Admin作成

  1. OCI コンソール画面
    [Identity & Security] > Identity の [Groups] をクリック
    01_Group作成00.jpg

  2. Group画面
    [Create Group] をクリックし、以下項目をクリックして [Create Group] をクリック

    ・Name: 任意の名前を設定
    ・Description: 任意の説明を記載

01_IAMグループ作成02.jpg

  1. 作成完了
    01_IAMグループ作成03.jpg

● IDCSグループ: OCI_Acceptor-RPC-Admin作成

  1. Federation画面
    Identity > Federation画面にある、OracleIdentityCloudService をクリック
    02_Federation画面01.jpg

  2. OracleIdentityCloudService画面
    [Resources] > [Groups] 画面にある、[Create IDCS Group]をクリック
    02_IDCSグループ作成01.jpg

  3. Create IDCS Group画面
    以下項目をクリックし、[Create]をクリック

    ・Name: 任意のIDCS Group名を入力
    ・Description: 任意の説明を記載
    ・Users: 付与するユーザーを選択

02_IDCSグループ作成02.jpg

  1. 作成完了
    02_IDCSグループ作成03.jpg

● IAMグループとIDCSグループマッピング

  1. Group Mappings画面
    [Resources] > [Group Mappings] 画面にある、[Add Mappings]をクリック
    03_IDCSグループマッピング01.jpg

  2. Add Mappings画面
    以下項目をクリックし、[Create]をクリック

・Identity Provider Group: 作成した IDCSグループを選択
・OCI Group: 作成した IAMグループを選択

03_IDCSグループマッピング02.jpg

  1. Mapping完了
    03_IDCSグループマッピング03.jpg

● IDCSユーザーへIDCSグループ追加

  1. OracleIdentityCloudService: Users画面
    [Resources] > [Users] 画面にある、権限を付与するユーザーを選択
    05_ユーザーへIDCSグループ追加00.jpg

  2. ユーザー名: Groups画面
    05_IDCSユーザーへIDCSグループ追加02.jpg

  3. CAdd User to IDCS Group画面
    以下項目をクリックし、[Add]をクリック

・Groups: 作成した IDCS Groupを選択

05_IDCSユーザーへIDCSグループ追加03.jpg

  1. Add完了
    05_IDCSユーザーへIDCSグループ追加04.jpg

● ポリシー:Acceptor-RPC-Policy作成

  1. OCI コンソール画面
    Identity & Security > Policies をクリック
    06_ポリシー追加00.jpg

  2. Policies画面
    [Create Policy]をクリック
    04_Policy作成01.jpg

  3. Create Policy画面
    以下項目をクリックし、[Create]をクリック

    ・Name: 任意の名前を設定
    ・Compartment: rootコンパートメント を選択
    ・Policy Builder: [Show manual editor]をONにして、以下入力
    Define tenancy ABC-Tenancy as ocid1.tenancy.oc1..aaaaaaaa4rljlv6dfuvi2qc6
    Define group Requestor-RPC-Admin as ocid1.group.oc1..aaaaaaaaxqjcqrglcqtfumqny4nto7
    Admit group Requestor-RPC-Admin of tenancy ABC-Tenancy to manage remote-peering-to in compartment POC

04_Policy作成02.jpg

  1. Create完了
    04_Policy作成03.jpg

■ Remote Peerin Connection (RPC)作成

各Tenancyにある DRG上のリモート・ピアリング接続(RPC)を作成

● ABC-Tenancy側作業

  1. DRG画面
    左ペインの Resources > [Remote Peerin Connection Attachments]をクリックし、
    [Create Remote Peering Connection]をクリック
    06_RPC作成01.jpg

  2. リモート・ピアリング接続の作成画面
    以下項目を入力し、[Create Remote Peerin Connection]をクリック

    ・Name: 任意の名前を設定
    ・Create in compertment: RPCを作成するコンパートメントを設定

06_RPC作成02.jpg

  1. RPC作成完了
    06_RPC作成03.jpg

● XYZ-Tenancy側作業

  1. DRG画面
    左ペインの Resources > [Remote Peerin Connection Attachments]をクリックし、
    [Create Remote Peerin Connection]をクリック
    06_RPC作成01.jpg

  2. リモート・ピアリング接続の作成画面
    以下項目を入力し、[Create Remote Peering Connection]をクリック

    ・Name: 任意の名前を設定
    ・Create in compartment: RPCを作成するコンパートメントを設定

06_RPC作成03.jpg

  1. RPC作成完了
    06_RPC作成04.jpg

■ Cross-Tenancy Remote Peering

● ABC-Tenancy側作業

  1. Osaka Region の RPC OCID取得
    ABC-Tenancyで作成したRPCのOCIDを取得
    07_RPC-Peering06.jpg

● XYZ-Tenancy作業

  1. DRG画面
    左ペインにある Resources > Remote Peering Connections Attachments をクリックし、
    作成した Remote Peering Connectionsをクリック
    07_RPC-Peering.jpg

  2. RPC画面
    [Establish Connection]をクリック
    07_RPC-Peering02.jpg

3) Establish Connection画面
以下項目を入力し、[Establish Connection]をクリック

・Region: 接続する対抗リージョンを選択
・Remote Peering Connection OCID: 接続するABC-Tenancy側RPCのOCIDを設定

07_RPC-Peering03.jpg

  1. Peering 完了
    Peering Status が「Peered」になればPeering完了
    07_RPC-Peering04.jpg

■ DRG Route Table設定

DRGにアタッチされた RPC、IPSec-VPN Attachment間でトラフィックをルーティングするルート情報を設定

・手順参考: DRGで東京リージョンを経由して、オンプレミスと 大阪リージョンを接続してみてみた

■ On-Premises CPE BGP接続確認

・ BGP接続確認

Router(config)# show ip bgp summary
	BGP router ID 192.168.254.13, local AS number 65001
	2 BGP AS-PATH entries

	Neighbor         V    AS    MsgRcvd MsgSent Up/DownTime   State
	192.168.254.14  4    31898 967     961     2:39:26       ESTABLISHED
	192.168.254.18  4    31898 966     960     2:39:17       ESTABLISHED

	Total number of neighbors 2

・ Neighbors(OCI) Received-Routes確認

Router(config)# sho ip bgp neighbors 192.168.254.14 received-routes
	BGP table version is 403, local router ID is 192.168.254.13
	Local AS number 65001
	Status codes: s - suppressed, * - valid, h - history
				> - best, i - internal
	Origin codes: i - IGP, e - EGP, ? - incomplete

	Network            Next Hop            Metric     LocPrf  Path
	*> 10.10.0.0/24       192.168.254.14                         31898 i
	*> 10.20.0.0/24       192.168.254.14                         31898 i

	Total number of prefixes 2

・ Neighbors(OCI) Advertised-Routes確認

Router(config)# sho ip bgp neighbors 192.168.254.14 advertised-routes
	BGP table version is 403, local router ID is 192.168.254.13
	Local AS number 65001
	Status codes: s - suppressed, * - valid, h - history
				> - best, i - internal
	Origin codes: i - IGP, e - EGP, ? - incomplete

	Network            Next Hop            Metric     LocPrf  Path
	*> 192.168.0.0/25 192.168.254.41           1             i

	Total number of prefixes 1

・ BGP 確認

Router(config)# show ip bgp
	BGP table version is 403, local router ID is 192.168.254.13
	Local AS number 65001
	Status codes: s - suppressed, * - valid, h - history
				> - best, i - internal
	Origin codes: i - IGP, e - EGP, ? - incomplete

	Network            Next Hop            Metric     LocPrf  Path
	*  10.10.0.0/24       192.168.254.18                         31898 i
	*>                    192.168.254.14                         31898 i
	*  10.20.0.0/24       192.168.254.18                         31898 i
	*>                    192.168.254.14                         31898 i
	192.168.0.0/24   0.0.0.0                  1             i
	*> 192.168.0.0/25 0.0.0.0                  1             i

	Total number of prefixes 6

■ On-Premise と XYZ-Tenancy接続確認

● On-Premise --> XYZ-Tenancy接続確認

・ taraceroute確認

on-premises:~ user$ traceroute -I 10.20.0.2
	traceroute to 10.20.0.2 (10.20.0.2), 64 hops max, 72 byte packets
		1  * * *
		2  * * *
		3  * * *
		4  * * *
		5  10.20.0.2 (10.20.0.2)  303.541 ms  238.850 ms  203.140 ms

・ ping疎通確認

on-premises:~ user$ ping 10.20.0.2 -c 3
	PING 10.20.0.2 (10.20.0.2): 56 data bytes
	64 bytes from 10.20.0.2: icmp_seq=0 ttl=60 time=222.416 ms
	64 bytes from 10.20.0.2: icmp_seq=1 ttl=60 time=234.596 ms
	64 bytes from 10.20.0.2: icmp_seq=2 ttl=60 time=206.904 ms

	--- 10.20.0.2 ping statistics ---
	3 packets transmitted, 3 packets received, 0.0% packet loss
	round-trip min/avg/max/stddev = 206.904/221.305/234.596/11.332 ms

・ ssh接続確認

on-premises:~ user$ ssh -i id_rsa opc@10.20.0.2 hostname
	xyz-inst

■ 参考

Peering VCNs in different regions through a DRG
・[IAM policies related to DRG peering](https://docs.oracle.com/en-us/iaas/Content/Network/Tasks/drg-iam.htm#scenario_m

7
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
0