はじめに
このドキュメントでは、Google Cloud Platform(GCP)でCisco CSR1000v(C1000v)とCatalyst 8000v(C800v)を導入して設定する手順について説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
- 仮想化テクノロジー/仮想マシン(VM)
- クラウドプラットフォーム
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
- プロジェクトが作成されたGoogle Cloud Platformのアクティブなサブスクリプション
-
GCPコンソール
-
GCP市場
- Bash端末、Putty、またはSecureCRT
- パブリックおよびプライベートセキュアシェル(SSH)キー
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
背景説明
17.4.1以降では、CSR1000vは同じ機能を持つC8000vになりますが、SD-WANやCisco DNAライセンスなどの新機能が追加されています。 詳細については、公式製品データシートを確認してください。
Cisco Cloud Services Router 1000vデータシート
Cisco Catalyst 8000Vエッジソフトウェアデータシート
したがって、このガイドはCSR1000vルータとC8000vルータの両方のインストールに適用されます。
プロジェクト設定
注:このドキュメントが作成された時点で、新規ユーザはGCPを1年間の無料利用枠として完全に検討するための300米ドルの無料クレジットを取得できます。これはGoogleによって定義され、シスコの管理下にありません。
注:このドキュメントでは、公開SSHキーと秘密SSHキーの作成が必要です。詳細については、「Google Cloud PlatformでCSR1000vを導入するためのインスタンスSSHキーの生成」を参照してください。
ステップ 1:アカウントの有効でアクティブなプロジェクトを確認します。
アカウントに有効でアクティブなプロジェクトがあることを確認してください。プロジェクトは、コンピューティングエンジンの権限を持つグループに関連付けられている必要があります。
この導入例では、GCPで作成されたプロジェクトが使用されます。
注:新しいプロジェクトを作成するには、「プロジェクトの作成と管理」を参照してください。
ステップ 2:新しいVPCとサブネットを作成します。
新しい仮想プライベートクラウド(VPC)と、CSR1000vインスタンスに関連付ける必要があるサブネットを作成します。
デフォルトのVPC、または以前に作成したVPCとサブネットを使用できます。
コンソールダッシュボードで、図のようにVPCネットワーク> VPCネットワークを選択します。
図に示すように、Create VPC Networkを選択します。
注:現在、CSR1000vはGCPの米国中央地域にのみ導入されています。
図に示すようにVPC名を設定します。
VPCに関連付けられたサブネット名を設定し、リージョンus-central1を選択します。
図に示すように、us-central1 CIDR内の有効なIPアドレス範囲10.128.0.0/20を割り当てます。
その他の設定はデフォルトのままにして、createボタンを選択します。
注:「automatic」が選択されている場合、GCPはリージョンCIDR内の有効な自動範囲を割り当てます。
作成プロセスが完了すると、図のように、新しいVPCがVPCネットワークセクションに表示されます。
ステップ 3:仮想インスタンスの導入。
Compute Engineセクションで、図のようにCompute Engine > VMインスタンスを選択します。
VMダッシュボードが表示されたら、図のようにCreate Instanceタブを選択します。
シスコ製品を表示するには、図に示すようにGCP Marketplaceを使用します。
検索バーでCisco CSR またはCatalyst C8000vと入力し、要件に適合するモデルとバージョンを選択して、Launchを選択します。
この導入例では、図に示すように最初のオプションが選択されています。
注:BYOLは「Bring Your Own License(個人所有ライセンスの持ち込み)」の略です。
注:現在、GCPはPay As You Go(PAYG)モデルをサポートしていません。
図に示すように、GCPでは、VMに関連付ける必要がある設定値を入力する必要があります。
図に示すように、GCPでCSR1000v/C8000vを導入するには、ユーザ名とSSH公開キーが必要です。SSHキーを作成していない場合は、『Google Cloud PlatformでCSR1000vを導入するためのインスタンスSSHキーの生成』を参照してください。
前に作成したVPCとサブネットを選択し、図のようにインスタンスにパブリックIPが関連付けられるように、外部IPでEphemeralを選択します。
設定が完了したら、起動ボタンを選択します。
注:SSH経由でCSRインスタンスに接続するには、ポート22が必要です。HTTPポートはオプションです。
導入が完了したら、図に示すように、新しいCSR1000vが正常に導入されたことを確認するために、Compute Engine > VM instancesの順に選択します。
導入の検証
新しいインスタンスへのリモート接続
GCPでCSR1000v/C8000Vにログインする最も一般的な方法は、Bash端末、Putty、およびSecureCRTのコマンドラインです。このセクションでは、以前の方法で接続するために必要な設定について説明します。
BashターミナルでCSR1000v/C8000vにログインします。
新しいCSRにリモートで接続するために必要な構文は次のとおりです。
ssh -i private-key-path username@publicIPaddress
以下に例を挙げます。
$ ssh -i CSR-sshkey <snip>@X.X.X.X
The authenticity of host 'X.X.X.X (X.X.X.X)' can't be established.
RSA key fingerprint is SHA256:c3JsVDEt68CeUFGhp9lrYz7tU07htbsPhAwanh3feC4.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'X.X.X.X' (RSA) to the list of known hosts.
接続が成功すると、CSR1000vプロンプトが表示されます
$ ssh -i CSR-sshkey <snip>@X.X.X.X
csr-cisco# show version
Cisco IOS XE Software, Version 16.09.01
Cisco IOS Software [Fuji], Virtual XE Software (X86_64_LINUX_IOSD-UNIVERSALK9-M), Version 16.9.1, RELEASE SOFTWARE (fc2)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2018 by Cisco Systems, Inc.
Compiled Tue 17-Jul-18 16:57 by mcpre
CSR1000v/C8000vにPuTTYでログインします。
Puttyで接続するには、PuTTYgenアプリケーションを使用して秘密キーをPEMからPPK形式に変換します。
詳細については、『PuTTYgenを使用したPemからPpkファイルへの変換』を参照してください。
秘密鍵が適切な形式で生成されたら、Puttyでパスを指定する必要があります。
SSH connectionメニューのauthオプションで、Private key file for authenticationセクションを選択します。
キーが保存されているフォルダを参照し、作成したキーを選択します。次の例では、Puttyメニューのグラフィック表示と目的の状態を示す画像を示します。
適切なキーを選択したら、メインメニューに戻り、図に示すようにCSR1000vインスタンスの外部IPアドレスを使用してSSH経由で接続します。
注:生成されたSSHキーで定義されたユーザ名/パスワードは、ログインするよう要求されます。
log in as: cisco
Authenticating with public key "imported-openssh-key"
Passphrase for key "imported-openssh-key":
csr-cisco#
CSR1000v/C8000VにSecureCRTでログインします。
Secure CRTでは、秘密キーのデフォルトの形式であるPEM形式の秘密キーが必要です。
Secure CRTでは、メニューで秘密キーへのパスを指定します。
File > Quick Connect > Authentication > Uncheck Password > PublicKey > Propertiesの順に選択します。
次の図は、予想されるウィンドウを示しています。
図に示すように、Use session public key string > Select Use identity or certificate file > Select ... buttonの順に選択し、ディレクトリに移動して目的のキーを選択し、OKを選択します。
最後に、図に示すように、SSH経由でインスタンスアドレスの外部IPに接続します。
注:生成されたSSHキーで定義されたユーザ名/パスワードは、ログインするよう要求されます。
csr-cisco# show logging
Syslog logging: enabled (0 messages dropped, 3 messages rate-limited, 0 flushes, 0 overruns, xml disabled, filtering disabled)
No Active Message Discriminator.
<snip>
*Jan 7 23:16:13.315: %SEC_log in-5-log in_SUCCESS: log in Success [user: cisco] [Source: X.X.X.X] [localport: 22] at 23:16:13 UTC Thu Jan 7 2021
csr-cisco#
その他のVMログイン方法
注:ドキュメント『高度な方法を使用したLinux VMへの接続』を参照してください。
追加ユーザがGCPでCSR1000v/C8000vにログインすることを許可
CSR1000vインスタンスへのログインが成功すると、次の方法で追加ユーザを設定できます。
新しいユーザ名/パスワードの設定
新しいユーザとパスワードを設定するには、次のコマンドを使用します。
enable
configure terminal
username <username> privilege <privilege level> secret <password>
end
以下に例を挙げます。
csr-cisco# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
csr-cisco(config)#
csr-cisco(config)# username cisco privilege 15 secret cisco
csr-cisco(config)# end
csr-cisco#
新しいユーザがCSR1000v/C8000vインスタンスにログインできるようになりました。
SSHキーを使用した新規ユーザの設定
CSR1000vインスタンスにアクセスするには、公開キーを設定します。インスタンスメタデータのSSHキーは、CSR1000vへのアクセスを提供しません。
新しいユーザにSSHキーを設定するには、次のコマンドを使用します。
configure terminal
ip ssh pubkey-chain
username <username>
key-string
<public ssh key>
exit
end
注:Cisco CLIの行の最大長は254文字であるため、キー文字列はこの制限に適合しません。キー文字列は端末行に適合するように囲んでおくと便利です。この制限を克服する方法の詳細については、「Google Cloud PlatformでCSR1000vを導入するためのインスタンスSSHキーの生成」を参照してください。
$ fold -b -w 72 /mnt/c/Users/ricneri/.ssh/key2.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDldzZ/iJi3VeHs4qDoxOP67jebaGwC6vkC
n29bwSQ4CPJGVRLcVSNPcPPqVydiXVEOG8e9gFszkpk6c2meO+TRsSLiwHigv28lyw5xhn1U
ck/AYpy9E6TyEEu9w6Fz0xTG2Qhe1n9b5Les6K9PFP/mR6WUMbfmaFredV/sADnODPO+OfTK
/OZPg34DNfcFhglja5GzudRb3S4nBBhDzuVrVC9RbA4PHVMXrLbIfqlks3PCVGOtW1HxxTU4
FCkmEAg4NEqMVLSm26nLvrNK6z7lRMcIKZZcST+SL6lQv33gkUKIoGB9qx/+DlRvurVXfCdq
3Cmxm2swHmb6MlrEtqIv cisco
$
csr-cisco# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
csr-cisco(config)#
csr-cisco(config)# ip ssh pubkey-chain
csr-cisco(conf-ssh-pubkey)# username cisco
csr-cisco(conf-ssh-pubkey-user)# key-string
csr-cisco(conf-ssh-pubkey-data)#ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDldzZ/iJi3VeHs4qDoxOP67jebaGwC
csr-cisco(conf-ssh-pubkey-data)#6vkCn29bwSQ4CPJGVRLcVSNPcPPqVydiXVEOG8e9gFszkpk6c2meO+TRsSLiwHigv28l
csr-cisco(conf-ssh-pubkey-data)#yw5xhn1Uck/AYpy9E6TyEEu9w6Fz0xTG2Qhe1n9b5Les6K9PFP/mR6WUMbfmaFredV/s
csr-cisco(conf-ssh-pubkey-data)#ADnODPO+OfTK/OZPg34DNfcFhglja5GzudRb3S4nBBhDzuVrVC9RbA4PHVMXrLbIfqlk
csr-cisco(conf-ssh-pubkey-data)#s3PCVGOtW1HxxTU4FCkmEAg4NEqMVLSm26nLvrNK6z7lRMcIKZZcST+SL6lQv33gkUKI
csr-cisco(conf-ssh-pubkey-data)#oGB9qx/+DlRvurVXfCdq3Cmxm2swHmb6MlrEtqIv cisco
csr-cisco(conf-ssh-pubkey-data)# exit
csr-cisco(conf-ssh-pubkey-user)# end
csr-cisco#
CSR1000v/C8000vへのログイン時の設定ユーザの確認
設定が正しく行われていることを確認するには、作成したクレデンシャルを使用するか、追加のクレデンシャルを使用して公開キーの秘密キーペアでログインします。
ルータ側から、端末のIPアドレスを使用してログイン成功ログを確認します。
csr-cisco# show clock
*00:21:56.975 UTC Fri Jan 8 2021
csr-cisco#
csr-cisco# show logging
Syslog logging: enabled (0 messages dropped, 3 messages rate-limited, 0 flushes, 0 overruns, xml disabled, filtering disabled)
<snip>
*Jan 8 00:22:24.907: %SEC_log in-5-log in_SUCCESS: log in Success [user: <snip>] [Source: <snip>] [localport: 22] at 00:22:24 UTC Fri Jan 8 2021
csr-cisco#
トラブルシュート
「Operation Timed Out」エラーメッセージが表示される場合
$ ssh -i CSR-sshkey <snip>@X.X.X.X
ssh: connect to host <snip> port 22: Operation timed out
考えられる原因
- インスタンスの展開が完了していません。
- パブリックアドレスは、VMのnic0に割り当てられているものではありません。
解決方法
VMの導入が完了するのを待ちます。通常、CSR1000vの導入が完了するまでに最大5分かかります。
パスワードが必要な場合
パスワードが必要な場合:
$ ssh -i CSR-sshkey <snip>@X.X.X.X
Password:
Password:
考えられる原因
- ユーザー名または秘密キーが正しくありません。
- MacOSやLinuxなどの新しいバージョンのOperative Systemでは、OpenSSHユーティリティのデフォルトでRSAは有効になっていません。
解決方法
- ユーザ名が、CSR1000v/C8000vの導入時に指定したユーザ名と同じであることを確認します。
- 秘密キーが導入時に指定したものと同じであることを確認します。
- sshコマンドで受け付けるキーのタイプを指定します。
ssh -o PubkeyAcceptedKeyTypes=ssh-rsa -i <private_key> <user>@<host_ip>
関連情報