PreChecklist (์ค์น ๋ฐ ์์ ์ ์ฌ์ ํ๊ฒฝ ์๊ตฌ ์ฌํญ)
ย
RoRo ์๋ฒ ์ค๋น ๋ฐ ์ฌ์ ์๊ตฌ์ฌํญ ์ค์
๋์ ์๋ฒ(Inventory Server) ์ค๋น ๋ฐ ์ฌ์ ์๊ตฌ์ฌํญ ์ค์ - ์ ๊ทผ๊ถํ ๋ฐ ๋คํธ์ํฌ ์ค์
* Discovered Server ๋ฐ๊ฒฌ์ ์ถ๊ฐ ๋ถ์์ ์ํ ์ ์๊ถํ ํ๋ (์ด๊ธฐ ์ธ๋ฒคํ ๋ฆฌ ๋์์์ ๋๋ฝ๋ ์๋ฒ๋ก RoRo์์ ๋ฐ๊ฒฌํ๋ค๋ ์๋ฏธ๋ก Discovered Server๋ผ๊ณ ํจ)์์ ์ PC ์ค๋น ๋ฐ ์ฌ์ ์๊ตฌ์ฌํญ ์ค์
๋ฐฉํ๋ฒฝ ํด์ List
RoRo์์ ์ ๊ณตํ๋ inventory template (RoRo-Inventory-Template.xls) ์์ฑ
Template์ ์ด์ฉํ์ฌ bulk upload ์งํํจ. (์๋์ผ๋ก 1๊ฐ ์๋ฒ ๋จ์๋ก ๋ฑ๋กํ ์ ์์.)
Service sheet (ํ์ ์ ๋ ฅ) : Service Code, Service Name, Business Category Code, Business Category, Migration Y/N
์ ๋ฌด์๋น์ค๋ช ์ ๋งํ๋ฉฐ, ์๋ ๊ฒฝ์ฐ์๋ default service (service code = SERV-001)๋ก ๋ฑ๋ก๋จ.
Server sheet (ํ์ ์ ๋ ฅ) : Inventory Code, Server_Name, IP Address, Port(SSH/Winrm), Username, Password, Windows Y/N, su Y/N, Monitoring Y/N
Database assessment ์งํ์ ๊ฒฝ์ฐ database sheet ์ถ๊ฐ ์์ฑ
Database sheet (ํ์ ์ ๋ ฅ) : Server Inventory Code, Inventory Code(of Database), Database Name, Database Service Name, Port, Username, Password, JDBC URL, Engine Name
#1. RoRo ์๋ฒ ์ค๋น ๋ฐ ์ฌ์ ์๊ตฌ์ฌํญ ์ค์
์์ | RoRo Server | ์๋ฃ (Y/N) |
|---|---|---|
๊ถ์ฅ์ฌ์ ๋ฐ ์ด์ํ๊ฒฝ | CPU - 4 Core | ย |
Memory - 8GB | ย | |
HDD - 30GB + a (Assessment ๋ฐ์ดํฐ ๋ฐ Migration ์ด๋ฏธ์ง ์ ์ฅ์) ์.
Assessment ์ ๊ฒฝ์ฐ : ์ ํ๋ฆฌ์ผ์ด์
์ ์ฒด ์ฉ๋ ๋ณด๋ค ํฐ ์ฌ์ด์ฆ ํ์ (์ฌ๋ก. 500GB ~ 1TB)
Migration ์ ๊ฒฝ์ฐ : as-is ์๋ฒ์ ์ฉ๋ ๋ณด๋ค ํฐ ์ฌ์ด์ฆ ํ์
| ย | |
OS - CentOS 7 + | ย | |
JDK 11 + java -version ๋ช
๋ น์ ์คํํ์ฌ java ๋ช
๋ น์ ์ฐพ์ ์ ์๊ฑฐ๋ ๋ฒ์ ์ด ๋ฎ์ ๊ฒฝ์ฐ ๋ค์๊ณผ ๊ฐ์ด java ํจํค์ง๋ฅผ ์ค์นํ๊ณ ์ค์ ํฉ๋๋ค.
(JRE ์ค์น ์ ์ผ๋ถ ๊ธฐ๋ฅ์ ์ ํ์ด ์๊ธธ ์ ์์ด JDK ์ค์น๋ฅผ ์ถ์ฒํฉ๋๋ค.)
]$ sudo yum install -y java-11-openjdk-devel
| ย | |
system package | Python 2.7 | ย |
ssh | ย | |
rsync | ย | |
epel | ย | |
sshpass | ย | |
RoRo repository - DBMS | Maria DB 10.6 ์ด์ ๋ฒ์ ์ผ๋ก ์ฌ์ฉํ๋ ๊ฒ์ ๊ถ์ฅํฉ๋๋ค.
#
# This group is read both both by the client and the server
# use it for options that affect everything
#
[client-server]
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
[mariadb]
lower_case_table_names = 1
default_time_zone = '+9:00'
]$ mysqladmin variables -uroot -p | grep -i lower_case_table_names
Enter password:
| lower_case_table_names | 1 | ย |
Network | Unix/Linux : SSH (์ฐธ๊ณ - default 22) | ย |
| ย | |
| ย | |
| ย | |
| ย | |
]$ ssh rorouser@Bserver_ip -p ssh_port
Bserver_ip]$ sudo vi /etc/sudoers -- ์ ์์ฌ๋ถ ํ์ธ
| ย | |
| ย | |
Windows : Winrm (์ฐธ๊ณ - default 5985) | ย | |
| ย | |
Rehost migration | RoRo Server์ /etc/mke2fs.conf ํ์ผ์ ์ค์ ์ ๋ฐ๋ผ Rehost Migration์ด ์คํจํ ์ ์์ผ๋ฏ๋ก ์๋ ์ค์ ๊ณผ ๊ฐ์ด [fs_types] ๋ด ext4์ features ์ธ์ ์ค 64bit๋ฅผ ์ญ์ ํ๊ณ , auto_64-bit_support = 1 ๋ฅผ ์ถ๊ฐํด์ผ ํฉ๋๋ค. [defaults]
... skip ...
[fs_types]
... skip ...
ext4 = {
features = has_journal,extent,huge_file,flex_bg,metadata_csum,dir_nlink,extra_isize
auto_64-bit_support = 1
inode_size = 256
}
... skip ...
| ย |
Subscription Key | Trial, Enterprise๋ก ๊ตฌ๋ถํ์ฌ Subscription Key ๋ฐ๊ธ
| ย |
๊ธฐํ | ์ฐธ๊ณ , tar ๋๋ unzip ํจํค์ง๊ฐ ์ค์น๋์ง ์์ ๊ฒฝ์ฐ ๋ค์ ๋ช ๋ น์ ์คํํ์ฌ ํจํค์ง๋ฅผ ์ค์นํฉ๋๋ค. ]$ sudo yum install -y tar
]$ sudo yum install -y unzip | ย |
ย
#2. ๋์ ์๋ฒ(Inventory Server) ์ค๋น ๋ฐ ์ฌ์ ์๊ตฌ์ฌํญ ์ค์ - ์ ๊ทผ๊ถํ ๋ฐ ๋คํธ์ํฌ ์ค์
์์ | Inventory Server (Unix/Linux Server) | ์๋ฃ (Y/N) |
|---|---|---|
ํ์ ์ค์น ํญ๋ชฉ | ssh | ย |
sudo (unix) | ย | |
rsync **** ๋ง์ด๊ทธ๋ ์ด์ ์ ์ํด ํ์ํจ | ย | |
roro ์์
๊ณ์ ์์ฑ ๋ฐ ๊ถํ ์ค์ (sudo ๋ช ๋ น์ด ์คํ ๊ฐ๋ฅํ๋๋ก ์ค์ - ๋ฑ๋ก๋ ์ฌ์ฉ์ ๊ณ์ ์ด root๊ฐ ์๋ ๊ฒฝ์ฐ) | 3๊ฐ์ง ๋ฐฉ๋ฒ ์ค ์ ํํ์ฌ ์งํํฉ๋๋ค.
| ย |
Middleware/java-application ๋ถ์์ ์ํด์๋ root ๊ถํ ๋๋ ํด๋น application ์ํ ๊ถํ์ user ์ ์ ์ ๋ณด๊ฐ ํ์ํ ์ ์์ต๋๋ค. | ย | |
Database Assessment๋ฅผ ์ํด์๋ RoRo DB User Name์ด ๋ฐ๋์ DBA๊ถํ ์ด์์ผ๋ก ์ค์ ๋์ด ์์ด์ผ ํฉ๋๋ค. ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ๋ DBA User ์ ๋ณด๋ฅผ ์ ๋ ฅํด์ผ ํฉ๋๋ค. | ย | |
์๊ธฐ ์์ #1์ ๊ฒฝ์ฐ์ ๋ํ ์ค๋ช ์ ๋๋ค. ๋ฑ๋ก๋ ์ฌ์ฉ์ ๊ณ์ ์ด root๊ฐ ์๋ ๊ฒฝ์ฐ /etc/sudoers ํ์ผ์ ์์ ํด์ผ ํฉ๋๋ค.
vim /etc/sudoers
# Disable "ssh hostname sudo <cmd>", because it will show the password in clear.
# You have to run "ssh -t hostname sudo <cmd>".
#
#Defaults requiretty
......
## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
roro ALL=(ALL) NOPASSWD: ALL | ย | |
Network | Unix/Linux : SSH (์ฐธ๊ณ - default 22) | ย |
| ||
| ||
| ||
# CentOS/Rhel
yum -y install net-tools
# Debian
sudo apt install net-tools |
ย
์์ | Inventory Server (Windows Server) | ์๋ฃ (Y/N) |
|---|---|---|
ํ์์ค์น ํญ๋ชฉ | PowerShell Version 1.0 ~ 5.1
| ย |
pscp (SFTP Client) ์ค์น
| ย | |
roro ์์ ๊ณ์ ์์ฑ ๋ฐ ๊ถํ ์ค์ | (Local) Administrators ๊ถํ ๋ถ์ฌ ํ์ | ย |
Network (Firewall) | WinRM์์ ๊ธฐ๋ณธ์ผ๋ก ์ฐ๋ Port๋ 5985์ด๋ค.
| ย |
WinRM ์ค์ (Power Shell : ๊ด๋ฆฌ์ ๋ชจ๋) | Basic ์ธ์ฆ ๋ฐฉ๋ฒ ์ถ๊ฐ ๋ฐ ์ค์ . # WinRM ์๋น์ค ํ์ฑํ
winrm qc
# Basic ์ธ์ฆ ๋ฐฉ๋ฒ ์ถ๊ฐ. (RoRo์์ Basic ์ธ์ฆ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ค.)
winrm set winrm/config/service/Auth '@{Basic="true"}'
# AllowUnencrypted ์ค์ (์ํธํ ๋์ง์๋ ๋ฐ์ดํฐ์ ์ ์ก์ ํ์ฉ).
winrm set winrm/config/service '@{AllowUnencrypted="true"}'
# Shell์ ์์ ํ๋ก์ธ์ค๋ฅผ ํฌํจํ์ฌ ํ ๋น๋ ์ต๋ ๋ฉ๋ชจ๋ฆฌ ์ ์ค์ (๊ธฐ๋ณธ๊ฐ : 1024)
# ๊ธฐ๋ณธ๊ฐ ๋ณด๋ค ์์ ๊ฐ์ผ๋ก ์ค์ ๋ ๊ฒฝ์ฐ ์ ๋๋ก ๋์ํ์ง ์์ ์ ์์.
winrm set winrm/config/winrs '@{MaxMemoryPerShellMB="1024"}'
| ย |
Trust Host์ถ๊ฐ # TrustedHosts ์ RoRo ์๋ฒ ๋ฑ๋ก.
# ๋ฐฉํ๋ฒฝ๊ณผ ๊ด๊ณ์์ด RoRo ์๋ฒ์์ ํต์ ์ ์ํด ์ ๋ขฐํ ์ ์๋ ํธ์คํธ๋ก ๋ฑ๋ก์ ํ๋ค.
# ๊ธฐ์กด์ ์ค์ ๋์ด ์๋ Host๊ฐ ์๋ค๋ฉด Overwrite๋ฅผ ํ๋ค.
Set-Item wsman:\localhost\Client\TrustedHosts RoRo์๋ฒIP
# TrustedHosts ๋ชฉ๋ก ๋ณด๊ธฐ
Get-Item wsman:\localhost\Client\TrustedHosts
----------------------------------------------------------
์์)
# TrustedHosts์ ๋ชจ๋ ์ปดํจํฐ๋ฅผ ์ถ๊ฐ๋ฐฉ๋ฒ
Set-Item wsman:\localhost\Client\TrustedHosts -value *
์์)
# TrustedHosts์ ํน์ ๋๋ฉ์ธ/IP ์ปดํจํฐ๋ฅผ ์ถ๊ฐ๋ฐฉ๋ฒ
Set-Item wsman:\localhost\Client\TrustedHosts test.domain.com
Set-Item wsman:\localhost\Client\TrustedHosts *.domain.com
Set-Item wsman:\localhost\Client\TrustedHosts 192.168.5.111
*** ์ด๋ฏธ ๋ฑ๋กํ ํธ์คํธ๊ฐ ์๋ค๋ฉด ๊ธฐ์กด ์ ์๋ ํธ์คํธ์ Add ํด์ ๋ฑ๋ก์ ํ๋ค. ***
์์)
PS> Get-Item wsman:\localhost\Client\TrustedHosts
WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Client
Type Name SourceOfValue Value
---- ---- ------------- -----
System.String TrustedHosts test.domain.com
PS> Set-Item wsman:\localhost\Client\TrustedHosts 'test.domain.com,RoRo์๋ฒIP'
| ย | |
winrm set winrm/config/winrs '@{MaxConcurrentUsers="20"}'
winrm set winrm/config/winrs '@{MaxShellsPerUser="20"}' | ย | |
WinRM์ ์ค์ ํ๊ฒฝ ๋ณด๊ธฐ winrm get winrm/configย WinRM ์๋น์ค Restart (ํ์ ์) restart-service winrmย | ย |
ย
** Windows 2008 (Powershell 1.0์ ์ฌ์ฉํ ๊ฒฝ์ฐ.)ย
์์ | Inventory Server | ย |
|---|---|---|
PowerShell ์ค์น. | ๊ธฐ๋ณธ์ ์ผ๋ก ์ค์น๋์ด ์์ง๋ ์์ง๋ง Windows Server 2008์ ํ์ค ๊ธฐ๋ฅ์ผ๋ก ํฌํจ. (Version :1.0) C:\> servermanagercmd -install powershellย | ย |
WinRM ์ค์ Session | Basic ์ธ์ฆ ๋ฐฉ๋ฒ ์ถ๊ฐ ๋ฐ ์ค์ . # WinRM ์๋น์ค ํ์ฑํ
winrm quickconfig
# Basic ์ธ์ฆ ๋ฐฉ๋ฒ ์ถ๊ฐ. (RoRo์์ Basic ์ธ์ฆ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ค.)
winrm set winrm/config/service/Auth '@{Basic="true"}'
# AllowUnencrypted ์ค์ (์ํธํ ๋์ง์๋ ๋ฐ์ดํฐ์ ์ ์ก์ ํ์ฉ).
winrm set winrm/config/service '@{AllowUnencrypted="true"}'
# Shell์ ์์ ํ๋ก์ธ์ค๋ฅผ ํฌํจํ์ฌ ํ ๋น๋ ์ต๋ ๋ฉ๋ชจ๋ฆฌ ์ ์ค์ (๊ธฐ๋ณธ๊ฐ : 1024)
# ๊ธฐ๋ณธ๊ฐ ๋ณด๋ค ์์ ๊ฐ์ผ๋ก ์ค์ ๋ ๊ฒฝ์ฐ ์ ๋๋ก ๋์ํ์ง ์์ ์ ์์.
winrm set winrm/config/winrs '@{MaxMemoryPerShellMB="1024"}'
ย | ย |
WinRM Default Listener Port ํ์ธ # Port ํ์ธ.
# ๊ธฐ๋ณธ Port๊ฐ 80์ผ๋ก ์ค์ ๋์ด ์๋๊ฑธ ์ ์์๋ค.
winrm enumerate winrm/config/listener WinRM Port ๋ณ๊ฒฝ. # Port ๋ณ๊ฒฝ.
winrm set winrm/config/listener?Address=*+Transport=HTTP '@{Port="5985"}' ย | ย | |
winrm set winrm/config/winrs '@{MaxConcurrentUsers="20"}'
winrm set winrm/config/winrs '@{MaxShellsPerUser="20"}'ย | ย | |
| ย |
ย
WinRM ์ธ์ฆ ๋นํ์ฑํ, TrustedHosts ๋ฑ๋กํด์ , ์๋น์ค ์ข ๋ฃ ๋ฐ ๋นํ์ฑํ, ๋ฐฉํ๋ฒฝ ์์
์์ | Inventory Server | ย |
|---|---|---|
Basic ์ธ์ฆ ์ ๊ฑฐ | ๊ธฐ์กด Basic Auth ์ ํ์ ์ฌ์ฉํ๊ณ ์๋ค๋ฉด ์คํํ ํ์๊ฐ ์๋ค. winrm set winrm/config/service/Auth '@{Basic="false"}'ย ย | ย |
TrustedHosts ์ ๊ฑฐ. | ย 1. ๋จผ์ ๊ธฐ์กด์ TrustedHosts๋ฅผ ํ์ธ์ ํด์ ๋ชฉ๋ก์ ํ์ธํ๋ค.
- winrm get winrm/config/client
2. ๊ทธ๋ฆฌ๊ณ ๋ค์ ์ฌ ์ ์๋ฅผ ํ๋ค. (์ ๋ขฐํ๊ณ ์ ํ๋ ์๋ฒ IP๋ง ๋ฑ๋ก)
winrm set winrm/config/client '@{TrustedHosts="ServerIP ๋ชฉ๋ก"}'
Example)
PS> winrm set winrm/config/client '@{TrustedHosts="server1,127.0.0.1"}'
3. ๋ชจ๋ Hosts๋ฅผ ์ญ์ ํ ๋ ค๋ฉด ๋ค์ ๋ช
๋ น์ด๋ฅผ ์คํํ๋ค.
winrm set winrm/config/client '@{TrustedHosts=""}'ย Example) ย ย ย | ย |
์๋น์ค ์ค์ง ๋ฐ Disabled |
| ย |
Firewall |
| ย |
ย
#3. ์์ ์ PC ์ค๋น ๋ฐ ์ฌ์ ์๊ตฌ์ฌํญ ์ค์
์์ | Windows PC | ์๋ฃ (Y/N) |
|---|---|---|
ํ์ ์ํํธ์จ์ด | Chrome ์ต์ ๋ฒ์ , (IE 11๋ฒ์ ์ง์ ์์ ) | ย |
Export/Import Data File์ ์ํด Microsoft Excel 2013 ์ด์ | ย | |
| ย | |
Network | HTTP - 8080 ๋ธ๋ผ์ฐ์ ์์ http://$ROROSERVER_IP:8080 ๋ฅผ ์ ์ํ์ฌ ์์ํฉ๋๋ค. | ย |
์์คํ ์ firewall๊ฐ active ์ํ๋ก ๋ธ๋ผ์ฐ์ ์ ์์ด ๋ถ๊ฐ๋ฅํ ๊ฒฝ์ฐ, ๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ 8080 ํฌํธ์ ์ ์์ ํ์ฉํ๋ค. ]$ sudo firewall-cmd --add-port=8080/tcp --permanent
]$ sudo systemctl reload firewalld
| ย | |
(Optional) | DBํด๋ผ์ด์ธํธ ํด ์ค์น & ์ ๊ทผ ๊ถํ ํ์
| ย |
ย
๋ฐฉํ๋ฒฝ ํด์ List
์ถ๋ฐ์ง | ๋ชฉ์ ์ง | ํฌํธ | ๋ฐฉํฅ | ์ฉ๋ | ํ์/์ต์ |
|---|---|---|---|---|---|
Windows PC | RoRo ์๋ฒ | 8080 (HTTP) | ๋จ๋ฐฉํฅ | ์น๋ธ๋ผ์ฐ์ (Chrome)์ผ๋ก RoRo ๊ด๋ฆฌํ๋ฉด ์ ์, Assessment ๋ฐ Migration ์งํ | ํ์ |
RoRo ์๋ฒ | 22 (SSH) | ๋จ๋ฐฉํฅ | Putty, SecureCRT, Xshell ๋ฑ์ผ๋ก RoRo ์๋ฒ๋ก ์ ์, ์ค์น ๋ฐ ๋ชจ๋ํฐ๋ง ์งํ | ํ์ | |
๋์์๋ฒ (Inventory - Unix/Linux Server) | 22 (SSH) | ๋จ๋ฐฉํฅ | ๋คํธ์ํฌ ๋ฐ ์ ๊ทผ๊ถํ ๋ฑ ์ค์ ๋ฐ ํ์ธ | - | |
๋์์๋ฒ (Inventory - Windows Server) | 3389 (RDP) | ๋จ๋ฐฉํฅ | Powershell(๊ด๋ฆฌ์๋ชจ๋)์ ์ด์ฉํ Winrm ์ค์ ๋ฐ ํ์ธ | - | |
RoRo ์๋ฒ | ๋์์๋ฒ (Inventory - Unix/Linux Server) | 22 (SSH) | ๋จ๋ฐฉํฅ | ๋์์๋ฒ์ ๋ํ Assessment ์ํ (Agentless) | ํ์ |
๋์์๋ฒ (Inventory - Windows Server) | 5985(WINRM) | ๋จ๋ฐฉํฅ | ๋์์๋ฒ์ ๋ํ Assessment ์ํ (Agentless) | ํ์ | |
๋์์๋ฒ (Inventory - Windows Server) | RoRo ์๋ฒ | 22 (SSH) | ๋จ๋ฐฉํฅ | Windows ์๋ฒ ๋ด์ Application Assessment | ํ์ |