소개
이 문서에서는 GCP(Google Cloud Platform)에 Cisco CSR1000v 및 Catalyst 8000v(C800v)를 구축하고 구성하는 절차에 대해 설명합니다.
사전 요구 사항
요구 사항
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
- 가상화 기술/VM(Virtual Machine)
- 클라우드 플랫폼
사용되는 구성 요소
이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.
- 프로젝트가 생성된 Google Cloud Platform에 대한 활성 서브스크립션
-
GCP 콘솔
-
GCP 시장
- Bash 터미널, Putty 또는 SecureCRT
- 공용 및 사설 SSH(Secure Shell) 키
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.
배경 정보
17.4.1 이후부터는 CSR1000v가 C8000v로 바뀌며, 동일한 기능을 제공하지만 SD-WAN 및 Cisco DNA 라이센싱과 같은 새로운 기능이 추가됩니다. 자세한 내용은 공식 제품 데이터시트를 참조하십시오.
Cisco Cloud Services Router 1000v 데이터 시트
Cisco Catalyst 8000V Edge Software 데이터 시트
따라서 이 설명서는 CSR1000v 및 C8000v 라우터 설치에 모두 적용됩니다.
프로젝트 설정
참고: 이 문서를 작성하는 순간, 새 사용자는 1년 동안 GCP를 프리 티어로 완전히 탐색할 수 있는 300USD의 무료 크레딧을 보유하게 됩니다. 이는 Google에 의해 정의되며 Cisco의 통제를 받지 않습니다.
참고: 이 문서에서는 공용 및 개인 SSH 키를 생성해야 합니다. 자세한 내용은 인스턴스 SSH 키 생성을 참조하여 Google 클라우드 플랫폼에 CSR1000v를 구축하십시오
1단계. 어카운트에 대해 유효하고 활성 상태인 프로젝트를 확인하십시오.
계정에 유효한 활성 프로젝트가 있는지 확인합니다. 이 프로젝트는 컴퓨팅 엔진에 대한 권한이 있는 그룹과 연결되어야 합니다.
이 예제 구축에서는 GCP에서 만든 프로젝트가 사용됩니다.
참고: 새 프로젝트를 만들려면 프로젝트 만들기 및 관리를 참조하십시오.
2단계. 새 VPC 및 서브넷을 생성합니다.
CSR1000v 인스턴스와 연결해야 하는 새 VPC(Virtual Private Cloud) 및 서브넷을 생성합니다.
기본 VPC 또는 이전에 생성한 VPC 및 서브넷을 사용할 수 있습니다.
콘솔 대시보드에서 이미지에 표시된 대로 VPC network > VPC networks를 선택합니다.
이미지에 표시된 대로 Create VPC Network(VPC 네트워크 생성)를 선택합니다.
참고: 현재 CSR1000v는 GCP의 미국 중앙 영역에만 구축되어 있습니다.
이미지에 표시된 대로 VPC 이름을 구성합니다.
VPC와 연결된 서브넷 이름을 구성하고 region us-central1을 선택합니다.
이미지에 표시된 대로 us-central1 CIDR 내에서 유효한 IP 주소 범위 10.128.0.0/20을 할당합니다.
다른 설정을 기본값으로 유지하고 만들기 단추를 선택합니다.
참고: "automatic(자동)"을 선택하면 GCP는 CIDR 영역 내에 자동으로 유효 범위를 지정합니다.
생성 프로세스가 완료되면 새 VPC가 이미지에 표시된 것처럼 VPC 네트워크 섹션에 나타납니다.
3단계. 가상 인스턴스 구축.
Compute Engine(컴퓨팅 엔진) 섹션에서 이미지에 표시된 대로 Compute Engine(컴퓨팅 엔진) > VM instances(VM 인스턴스)를 선택합니다.
VM 대시보드에서 이미지에 표시된 대로 Create Instance(인스턴스 생성) 탭을 선택합니다.
Cisco 제품을 표시하기 위해 이미지에 표시된 대로 GCP marketplace를 사용합니다.
검색 표시줄에서 Cisco CSR 또는 Catalyst C8000v를 입력하고 요구 사항에 맞는 모델 및 버전을 선택한 다음 Launch(실행)를 선택합니다.
이 예제 구축에서는 첫 번째 옵션이 이미지에 표시된 대로 선택되었습니다.
참고: BYOL은 "Bring Your Own License"의 약자입니다.
참고: 현재 GCP는 PAYG(Pay As You Go) 모델을 지원하지 않습니다.
그림과 같이 GCP는 VM과 연결해야 하는 컨피그레이션 값을 입력해야 합니다.
그림과 같이 GCP에서 CSR1000v/C8000v를 구축하려면 사용자 이름 및 SSH 공개 키가 필요합니다. SSH 키가 생성되지 않은 경우 Google Cloud Platform에 CSR1000v를 구축하려면 인스턴스 SSH 키 생성을 참조하십시오.
이미지에 표시된 것처럼 퍼블릭 IP를 인스턴스와 연결하려면 먼저 생성한 VPC 및 서브넷을 선택하고 외부 IP에서 Ephemeral을 선택합니다.
이 를 구성한 후 시작 버튼을 선택합니다.
참고: SSH를 통해 CSR 인스턴스에 연결하려면 포트 22가 필요합니다. HTTP 포트는 선택 사항입니다.
구축이 완료되면 그림과 같이 새 CSR1000v가 성공적으로 구축되었는지 확인하려면 Compute Engine(컴퓨팅 엔진) > VM instances(VM 인스턴스)를 선택합니다.
배포 확인
새 인스턴스에 원격으로 연결
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
PuTTY를 사용하여 CSR1000v/C8000v에 로그인합니다.
Putty와 연결하려면 PuTTYgen 애플리케이션을 사용하여 개인 키를 PEM에서 PPK 형식으로 변환합니다.
자세한 내용은 PuTTYgen을 사용하여 Pem을 Ppk 파일로 변환을 참조하십시오.
개인 키가 적절한 형식으로 생성되면 Putty에서 경로를 지정해야 합니다.
SSH 연결 메뉴의 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#
SecureCRT를 사용하여 CSR1000v/C8000V에 로그인
보안 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 > 디렉토리로 이동하여 원하는 키를 선택하고 > Select 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#
문제 해결
"작업 시간 초과" 오류 메시지가 표시되는 경우
$ 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와 같은 운영 체제의 최신 버전에서는 OpenSSH 유틸리티에 기본적으로 RSA가 활성화되어 있지 않습니다.
솔루션
- 사용자 이름이 CSR1000v/C8000v가 구축되었을 때 지정된 것과 동일한지 확인합니다.
- 개인 키가 구축 시 포함했던 것과 동일한지 확인합니다.
- ssh 명령에서 허용되는 키의 유형을 지정합니다.
ssh -o PubkeyAcceptedKeyTypes=ssh-rsa -i <private_key> <user>@<host_ip>
관련 정보