Last Updated on 12월 17, 2020 by Jade(정현호)
안녕하세요
이번 포스팅에서는 고정 IP 변경, VM 인스턴스 간 SSH 인증 설정, 시간대 변경에 대해서 확인해 보겠습니다.
[참고] 해당 포스팅은 오라클 클라우드 프리티어, APM 스택구성, 도메인 설정, 워드프레스 구축까지 이어지는 연재 글의 중간 글 입니다
하단에 다음 글의 포스팅 링크가 있습니다.
이전글
• 오라클 클라우드 프리티어 1
• 오라클 클라우드 프리티어 2
일단 이전에 포스팅에서 VM 이미지 선택 시 선택한 CentOS 7 의 경우 7.8 로 확인되었음을 먼저 알려 드립니다.
$ cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)
OS 버전의 경우 오라클 클라우드 이외 다른 클라우드에서도 OS에 대한 베이스 이미지는 업데이트가 되기 때문에 컴퓨트 인스턴스를 생성하는 시점에 따라서 버전은 달라질 수 있습니다.
공용 IP 를 확정 IP로 변경
네트워킹 -> IP Management 로 이동합니다.
예약된 공용 IP 주소 를 클릭합니다. 예약된 공용 IP가 확정적인 고정적인 Public IP 를 의미합니다.
그전에 부여된 Public IP는 임시 IP 로 컴퓨트 인스턴스의 재부팅 등에 의해서 바뀔 수도 있는 임시 Public IP입니다.
"예약된 공용 IP 주소 이름" 을 입력 후 하단에 "예약된 공용 IP 주소 " 버튼을 클릭합니다.
2개의 예약된 공용 IP를 생성하였습니다 IP는 사용가능한 IP에서 랜덤하게 부여됩니다.
[내용 추가] 프리티어 예약된 공용 IP(고정적인) 는 2개 까지만 생성 가능 하고 추가로 더 생성하려고 하면 아래와 같이 에러 메세지가 확인됩니다.
또한 문서에도 예약된 공용 IP 2개에 대한 내용이 확인됩니다.
https://docs.oracle.com/en-us/iaas/Content/FreeTier/freetier_topic-Always_Free_Resources.htm
All tenancies get two public IPv4 addresses for Always Free compute instances. If you want to create more than two instances, you can either create the instances in public subnets without assigning public IP addresses, or create the instances in private subnets.
그 다음 Compute 정보에 들어간 다음 하단에 연결된 VNIC -> 점 3개 -> 세부정보 보기 순으로 들어 갑니다.
VNIC 세부 정보에서 아래 IP주소 를 클릭합니다.
점 3개 -> 편집을 누릅니다.
임시 공용 IP 에서 "공용 IP 없음" 으로 선택 후 업데이트 를 통해 설정을 변경합니다.
그 다음 다시 이번에는 예약된 공용 IP를 선택하여 위에서 생성한 예약된 공용 IP로 지정합니다.
Compute 노드 간 접속을 위한 키 설정
여기서는 test 라는 유저에서 다른 서버의 test 라는 유저로 접속하는 예시이며 SSH 키 생성 부터 진행하도록 하겠습니다.
SSH Key 생성
SSH key 를 생성 을 합니다.
명령어: ssh-keygen -t rsa -b 4096
[test]$ ssh-keygen -t rsa -b 4096
Generating public/private rsa key pair.
Enter file in which to save the key (/home/test/.ssh/id_rsa): [엔터]
Created directory '/home/test/.ssh'.
Enter passphrase (empty for no passphrase): [엔터]
Enter same passphrase again: [엔터]
Your identification has been saved in /home/test/.ssh/id_rsa.
Your public key has been saved in /home/test/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:xxxxxxxxxxxx test@instance-1
The key's randomart image is:
+---[RSA 4096]----+
| .+ |
| .OOOOOOOOO |
| . o* = o . .|
| oOOOOOOOO |
| OOOOOOOO. |
| OOOOOOOO..|
| = B.. +|
| = =.=.o.|
| .o*.o .o.|
+----[SHA256]-----+
생성된 다음 .ssh 디렉토리 에 들어가서 확인해 보면 id_rsa.pub 과 id_rsa 파일 2개가 생성되었음을 확인할 수 있습니다.
공개키 전송 및 키 추가
생성된 공개키를 2번 서버로 전송 해야 합니다.
1번 서버에서 2번 서버로 접속할 수 있는 키가 없기 때문에 가장 쉬운 방법으로 PC를 통해 키를 내려 받은 후 다시 2번 서버로 업로드 하는 것입니다.
공개키 파일을 2번 서버로 업로드 한 뒤 authorized_keys 에 입력하여 줍니다.
[test]$ cat id_rsa.pub >> .ssh/authorized_keys
authorized_keys 파일의 퍼미션은 600 이어야 정상 동작 합니다.
[test]$ chmod 600 .ssh/authorized_keys
1번 서버에서 2번 서버로 접속을 테스트해봅니다.
[test]$ ssh instance-2
Last login: Fri 15:13:21 2020 from instance-1
[test]$ hostname
instance-2 <-- 정상 접속 확인됨
위와 동일하게 2번 서버에서도 키를 생성 후에 id_rsa.pub 공개키를 1번 서버로 전송합니다.
1번으로 전송 후에 1번 서버에서 authorized_keys 파일에 추가를 해줍니다.
[test]$ cat id_rsa.pub >> .ssh/authorized_keys
* 값 입력의 리다이렉션은 2개를 ">>" 사용 해야 기존의 입력된 내용이 유지됩니다.
[참고] 리눅스 VM 컴퓨트 설치 후 SSH 보안 툴이나 설정을 하지 않았다면 아래 fail2ban 포스팅을 참조하시면 도움이 됩니다.
OS 시간대 변경
현재 날짜를 확인해보면 시간대역이 GMT 로 지정되어 날짜가 다르게 표시되는 걸 알 수 있습니다.
Sun Jul 26 16:06:23 GMT 2020
timedatectl 명령으로도 TimeZone을 확인해보면 아래와 같이 GMT 로 설정되어 있는 걸 확인할 수 있습니다.
[root]]# timedatectl
Local time: Sun 2020-07-26 16:07:16 GMT
Universal time: Sun 2020-07-26 16:07:16 UTC
RTC time: Sun 2020-07-26 16:07:16
Time zone: GMT (GMT, +0000)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: n/a
설정 가능한 타임존은 아래와 같이 확인할 수 있습니다.
[root]# timedatectl list-timezones | grep Seoul
Asia/Seoul
Asia/Seoul 로 변경은 아래와 같이 진행합니다.
[root]# timedatectl set-timezone Asia/Seoul
변경 확인
[root]# timedatectl
Local time: Mon 2020-07-27 01:09:03 KST
Universal time: Sun 2020-07-26 16:09:03 UTC
RTC time: Sun 2020-07-26 16:09:03
Time zone: Asia/Seoul (KST, +0900)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: n/a
date 명령어로 확인
$ date
Mon Jul 27 01:09:30 KST 2020
타임존이 변경되었다면 아래와 같이 crontab 데몬 과 sshd 을 재시작 합니다.
# CentOS or Oracle Linux [root]# systemctl restart crond [root]# systemctl restart sshd
OS 가 Ubuntu 일 경우 아래와 같이 수행합니다.
# Ubuntu sudo systemctl restart cron sudo systemctl restart sshd
부트 볼륨 성능 설정 변경
오라클 클라우드 프리티어에서는 무료 등급이라도 부트 볼륨의 성능을 변경할 수 있습니다.
기본 설정 및 생성은 "균형 조정" 으로 생성되게 됩니다. 기본 설정인 균형 조정에서 IOPS 및 처리량이 더 높은 설정으로 변경 진행하도록 하겠습니다.
메뉴 -> 스토리지 -> 블록 스토리지 로 이동합니다.
하단의 구획에서 별도로 생성한 구획을 선택합니다. 별도로 생성한 구획이 없다면 사용 중인 루트 구획을 선택하면 됩니다
다음의 이미지 처럼 블록 스토리지 메뉴에서 "부트 볼륨" 을 선택합니다.
변경하려는 볼륨에서 오른쪽 점3개 클릭 -> 편집 으로 이동합니다.
볼륨 편집에서는 성능 변경을 할 수 있으며 현재 설정은 균형 조정 상태로 화면 오른쪽에 볼륨의 성능을 확인할 수 있습니다.
대상 볼륨 성능을 UHP 로 변경하면 오른쪽 성능에서 개선된 IOPS 와 처리량을 확인할 수 있습니다.
성능을 변경하였다면 하단의 변경사항 저장 을 클릭합니다
볼륨을 변경하면 처음에는 프로비전 중 으로 하여 상태 값을 변경이 되게 됩니다
완료가 되면 다시 사용 가능 으로 상태가 됩니다. 그리고 성능을 변경해도 여전히 해당 볼륨은 계속적으로 항상 무료임을 확인할 수 있습니다.
프리티어 등급에서도 볼륨 성능 변경까지는 지원됨으로 더 상위 성능으로 설정하시는 것이 좋을 것으로 생각됩니다.
이번 포스팅은 여기에서 마무리하겠으며 다음 포스팅에서는 클라우드의 보안 룰셋 설정 과 OS 방화벽 오픈 등에 대해서 확인해보도록 하겠습니다.
이어지는 다음 글
연관된 다른 글
Principal DBA(MySQL, AWS Aurora, Oracle)
핀테크 서비스인 핀다에서 데이터베이스를 운영하고 있어요(at finda.co.kr)
Previous - 당근마켓, 위메프, Oracle Korea ACS / Fedora Kor UserGroup 운영중
Database 외에도 NoSQL , Linux , Python, Cloud, Http/PHP CGI 등에도 관심이 있습니다
purityboy83@gmail.com / admin@hoing.io
'임시 공용 IP 에서 "공용 IP 없음" 으로 선택 후 업데이트 를 통해 설정을 변경 합니다.'
를 설정했는데 그 후 '예약된 공용 IP' 설정은 따로 안해주시나요?
안녕하세요
코멘트 감사합니다
포스팅 편집과정에서 div 태그 부분이 날라가면서 그 내용도 날아간 것을 확인 하였습니다.
해당 내용 알려주셔서 감사합니다 내용 다시 업데이트 해두었습니다.
감사합니다
좋은 하루 되세요
아아 다행이네요 ㅎㅎ
태랑님 블로그 보면서 열심히 설정하고 있습니다.
정말 정말 감사합니다.
안녕하세요
제 포스팅이 도움이 되었다니 다행이네요
방문 및 코멘트 감사합니다.
메뉴가 변경이 된 건지, 블록 스트리지에서 부트 볼륨으로 한번 더 depth를 들어가야 부트볼륨이 보이네요.
매번 잘 보고 있습니다!
안녕하세요
댓글의 내용처럼 메뉴의 일부 변동이 있었던것 같습니다.
반영하여 해당 내용 업데이트 해두었습니다.
감사합니다.
좋은 하루되세요!