Datagrip๊ณผ SSH Tunneling์ ํตํด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ํธํ๊ณ ์์ ํ๊ฒ ๊ด๋ฆฌํ๊ธฐ
์๋ง ๋ฉํ ๋๊ณผ ๋ฐฐํฌ DB์ ๋ฐ์ดํฐ๋ฅผ ์ง์ ์์ ํ๋ ์ผ์ ๋ํด ์ด์ผ๊ธฐํ๋ ๋์ค์ ํฐ๋ฏธ๋์ ์ผ๋ ๋๋ฅผ ๋ณด๊ณ ๊น์ง ๋๋ผ๋ฉฐ ํฐ๋ฏธ๋๋ก ๊ด๋ฆฌ๋ฅผ ํ๊ณ ์๋๊ณ ๋ฌผ์๋ ๊ฒ์ด ์์ง๋ ๊ธฐ์ต๋๋ค. ์ปฌ๋ผ๋ช ์กฐ์ฐจ๋ ์ ๋๋ก ๋ณด์ด์ง ์๋ mysql cli๋ฅผ ์ผ๋ ์ด์ ๋ฅผ ์๊ฐํด๋ดค๋๋, ๋ฐฑ์๋ ๊ฐ๋ฐ์ ์ฌ๊ธฐ์ ๊ธฐ์ ๋ฐฐ์ธ ๋ ์ด๋ ๊ฒ ํ๋ ๊ฒ๋ง ๋ด์๊ณ ํ๋ก์ ํธ ๊ฐ๋ฐ๊น์ง๋ง ํ๊ณ ์ ์ง๋ณด์ ๋จ๊ณ๊น์ง ๊ฐ๋ณด์ง ์์ ๋ถํธํจ์ ํฌ๊ฒ ๋๊ปด๋ณด์ง ๋ชปํด์ ์๋ ๊ฒ ๊ฐ๋ค.
Datagrip์ ๋ฐฐ์ฐ๋ฉด์ ์ ์ธ๊ณ๋ฅผ ๋ง๋ณด๊ณ ์ฌ๊ธฐ์ ๊ธฐ์ ์ธ๋ผ์ดํด์๋๋ฐ, ๋ถํธํ๋ ์ฌ๋์ ๋ชป๋ณธ ๊ฒ ๊ฐ๋ค. ํ๋ ์์ฌ์ด ์ ์ public subnet์ ์์ด์ผ๋ง ๊ฐ๋ฅํด์ ๋ณด์์ ์ผ๋ก ์์ฝ๋ค๋ ๊ฒ์ด์๋๋ฐ, ๋ด๊ฐ ๋ชจ๋ฅด๋ ๊ฒ์ด์๋ค.... SSH Tunneling์ ํตํด ์์ ํ๋ฉด์๋ ํธํ๊ฒ DB๋ฅผ ๋ค๋ฃฐ ์ ์๊ฒ ๋์ด ๋ธ๋ก๊น ํด๋ณด๊ฒ ๋์๋ค!
๊ธฐ์กด ๋ฐฉ์์ ๋ฌธ์
์ผ๋ฐ์ ์ผ๋ก ๋ง์ด ์ฐ๋ ๊ตฌ์กฐ๋ DB๋ public subnet์ ๋๊ณ ๊ฐ๋ฐฉํ ํฌํธ๋ก ์ง์ ์ ์ํ๋ ๊ฒ์ด๋ค. ํ์ง๋ง ์๋ฐํ๋ private subnet์ ๋๊ณ WAS์์๋ง ํฌํธ๋ฅผ ํตํด ์ ๊ทผ๊ฐ๋ฅํ๊ฒ ํด์ผํ์ง๋ง, ๋งค๋ฒ EC2 ํฐ๋ฏธ๋์ ์ ์ํ๊ณ mysql client์ ์ฌ์ฉํ๋๊ฒ ์ฌ๊ฐ ๊ท์ฐฎ์๊ฒ ์๋๋ค. ํนํ, Datagrip์ ์ธ๋ถ ๋คํธ์ํฌ์ธ ๋ก์ปฌ์ด๊ธฐ ๋๋ฌธ์ DB๊ฐ privat subnet์ ์๋ค๋ฉด, ์ฌ์ฉํ ์ ์์๋ค.
ํด๊ฒฐ ๋ฐฉ๋ฒ
ํ์ง๋ง SSH Tunneling ๊ธฐ๋ฅ์ ์ด์ฉํ๋ฉด DB๋ฅผ private subnet์ ๋ถ๋ฆฌํ๋ฉด์๋ Datagrip์ผ๋ก ์์ฝ๊ฒ DB์ ์ ์ํ ์ ์๋ค. SSH Tunneling์ ๋ง ๊ทธ๋๋ก SSH ์ ์์ด ๊ฐ๋ฅํ ๋ด๋ถ ์๋ฒ๋ฅผ ์ด์ฉํด(ํ ๋ฒ ๊ฑฐ์ณ์) ๋ด๋ถ ๋คํธ์ํฌ์์๋ง ์ ์๊ฐ๋ฅํ DB์ ์ ์ํ๋ ๊ฒ์ด๋ค.
Datagrip SSH Tunneling
Datagrip์ ํตํด SSH Tunneling ํ๋ ๋ฐฉ๋ฒ์ ๊ฐ๋จํ๋ค. Data Source๋ฅผ ์ถ๊ฐํ์ฌ DB ์ ์ ์ ๋ณด๋ฅผ ์ ๋ ฅํ๋๋ฐ, Host๋ ๋ด๋ถ IP๋ฅผ ์ ๋ ฅํด์ผ ํ๋ค. ๋ด๋ถ ์๋ฒ๋ฅผ ํตํด ์ ์ํ๋ ๊ฒ์ด๋ฏ๋ก, ๋ด๋ถ ๋คํธ์ํฌ๋ฅผ ๊ธฐ์ค์ผ๋ก ์์ฑํด์ผ ํ๋ค.
Use SSH tunnel
์ ํ์ฑํ ์ํค๊ณ SSH configuration์ ์ถ๊ฐํ๋ค.
์ด์ฉํ ์๋ฒ์ SSH ์ ์ ์ ๋ณด๋ฅผ ์ ๋ ฅํ๋ค. ๋์ ๊ฒฝ์ฐ ๋ pem key๋ฅผ ์ด์ฉํ๋๋ฐ, key ์ธ์ฆ๋ ๊ฐ๋ฅํ๋ค.
์ดํ Test Connection
์ด ๋ค์๊ณผ ๊ฐ์ด ์ฑ๊ณต๋๋ฉด, ์ธํ
์ฑ๊ณต์ด๋ค!