๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ „์ฒด ๊ธ€77

Linux์—์„œ AWS-CLI ์„ค์ •ํ•˜๊ธฐ AWS CLI ์„ค์น˜์„ค์น˜ ๋ช…๋ น์–ดcurl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"unzip awscliv2.zipsudo ./aws/install upzip์ด ์„ค์น˜๋ผ์žˆ์ง€ ์•Š์„ ๊ฒฝ์šฐ ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ์„ค์น˜ํ•ด์ค๋‹ˆ๋‹ค.sudo apt install unzip ์„ค์น˜ ํ™•์ธaws --version IAM ๊ณ„์ •๊ณผ ์•ก์„ธ์Šคํ‚ค ๋งŒ๋“ค๊ธฐaws-cli๋ฅผ ๊ตฌ์„ฑํ•˜๊ธฐ ์ „์—, IAM ๊ณ„์ •๊ณผ ์ด์— ์ ‘๊ทผํ•˜๋Š” ์•ก์„ธ์Šคํ‚ค๊ฐ€ ์—†๋‹ค๋ฉด ๋งŒ๋“ค์–ด์ฃผ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š” S3์— ์ ‘๊ทผํ•˜๋Š”๊ฒŒ ๋ชฉ์ ์ด๋ฏ€๋กœ S3FullAccess ๊ถŒํ•œ์„ ๊ฐ€์ง„ ๊ณ„์ •์„ ํ•˜๋‚˜ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.๊ทธ๋ฆฌ๊ณ  ์šฐ์ธก ์ƒ๋‹จ์— "์•ก์„ธ์Šค ํ‚ค ๋งŒ๋“ค๊ธฐ"๋ฅผ ๋ˆŒ๋Ÿฌ์„œ ์•ก์„ธ์Šค ํ‚ค๋ฅผ ํ•˜๋‚˜ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค.  CLI๋ฅผ ์œ„ํ•œ ๊ณ„์ •์„ ๋งŒ.. 2024. 12. 12.
Linux ํฌ๋ก (Cron)๊ณผ ํฌ๋ก ํƒญ(Crontab) ๋ฆฌ๋ˆ…์Šค(Linux) ๊ณ„์—ด์—์„œ ํŠน์ • ์‹œ๊ฐ„์— ํŠน์ • ์ž‘์—…์„ ํ•˜๋Š” ๋ฐ๋ชฌ์„ Cron(ํฌ๋ก )์ด๋ผ ํ•œ๋‹ค.ํฌ๋ก (Cron)์ด ์–ธ์ œ ๋ฌด์—‡์„ ํ•˜๋Š”์ง€ ํŠน์ • ํŒŒ์ผ์— ์ €์žฅํ•˜๋Š” ๊ฒƒ์„ ํฌ๋ก ํƒญ(Crontab)์ด๋ผ๊ณ  ํ•œ๋‹ค.ํฌ๋ก (Cron)์ด๋ผ๋Š” ๋ฐ๋ชฌ์ด ์›ํ•˜๋Š” ์‹œ๊ฐ„์— ์›ํ•˜๋Š” ๋ช…๋ น ๋˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ˆ˜ํ–‰ํ•˜๋„๋ก ๋ช…๋ น ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ํฌ๋ก ํƒญ์ด๋‹ค. ํฌ๋ก ํƒญ์˜ ์„ค์น˜sudo apt update -ysudo apt install -y cron ํฌ๋ก ํƒญ ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ•// ํฌ๋ก ํƒญ ํŽธ์ง‘crontab -e// ํฌ๋ก ํƒญ ์ž‘์—… ๋‚ด์šฉ ํ™•์ธcrontab -l// ํฌ๋ก ํƒญ ์‚ญ์ œ. ์‚ญ์ œ์‹œ ์ „์ฒด ์ž‘์—…์ด ์‚ญ์ œ๋œ๋‹ค.crontab -r crontab -e ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ํŒŒ์ผ์„ ์—ด์—ˆ๋‹ค๋ฉด, ์•„๋ž˜์ฒ˜๋Ÿผ ์„ ํ•œ์ค„์— ์ ์–ด์ฃผ๋ฉด ๋œ๋‹ค.ํฌ๋ก ํƒญ ์‹คํ–‰ ๋ช…๋ น// ํฌ๋ก ํƒญ ์‹œ์ž‘service cron st.. 2024. 12. 12.
[Redis] Redis ๋ฐ์ดํ„ฐ์˜ ์˜๊ตฌ ์ €์žฅ(RDB, AOF) Redis PersistencyRedis๋Š” ์ธ๋ฉ”๋ชจ๋ฆฌ DB์ด์ง€๋งŒ, ๋ฐ์ดํ„ฐ๋ฅผ ๋””์Šคํฌ์— ์˜๊ตฌ ์ €์žฅ ํ•  ์ˆ˜ ์žˆ๋Š” ํŠน์ง•์ด ์žˆ๋‹ค.๊ทธ๋ž˜์„œ Redis๊ฐ€ restart๋˜๋”๋ผ๋„ ๋””์Šคํฌ์— ์ €์žฅํ•ด๋†“์€ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค์‹œ ์ฝ์–ด์„œ ๋ฉ”๋ชจ๋ฆฌ์— ๋กœ๋”ฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์œ ์‹ค๋˜์ง€ ์•Š๋Š”๋‹ค. Redis์—๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•์ด RDB(snapshotting) ๋ฐฉ์‹๊ณผ AOF(Append only file) ๋‘๊ฐ€์ง€๊ฐ€ ์กด์žฌํ•œ๋‹ค. RDB(snapshotting)ํŠน์ • ์‹œ์ ์— ๋ฉ”๋ชจ๋ฆฌ์— ์žˆ๋Š” ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”์ด๋„ˆ๋ฆฌ ํŒŒ์ผ๋กœ ์ €์žฅํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.์ด๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ์„ธํŒ…ํ•˜์ง€ ์•Š์•„๋„ ์ž๋™์œผ๋กœ .rdb๋ผ๋Š” ํ™•์žฅ์ž์˜ ํŒŒ์ผ์— ์ธ๋ฉ”๋ชจ๋ฆฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋„๋ก ๊ธฐ๋ณธ์œผ๋กœ ์„ค์ •๋ผ์žˆ๋‹ค. ์ด ๋ฐฉ์‹์€ ํŠน์ • ์‹œ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณต๊ตฌํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ, ๋ ˆ๋””์Šค ๋ฐ์ดํ„ฐ์˜ ๋ฒ„์ €๋‹ ๋˜ํ•œ ๊ฐ€๋Šฅํ•˜.. 2024. 12. 10.
[Redis AOF] AOF ์„ค์ •ํ•œ Redis Docker Container ์‹คํ–‰ํ•˜๊ธฐ Redis๋Š” ์•„๋ฌด ์„ค์ •์„ ํ•˜์ง€ ์•Š์œผ๋ฉด RDB ๋ฐฉ์‹์„ ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ๊ฐ€ ๋””์Šคํฌ๋กœ ๋ฐฑ์—…๋œ๋‹ค. ๋ ˆ๋””์Šค์˜ ๋ฐ์ดํ„ฐ ๋ฐฑ์—… ๋ฐฉ์‹์— ๋Œ€ํ•œ ๋‚ด์šฉ์€ ์•„๋ž˜ ํฌ์ŠคํŒ…์„ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”.https://onfonf.tistory.com/108 [Redis] Redis ๋ฐ์ดํ„ฐ์˜ ์˜๊ตฌ ์ €์žฅ(RDB, AOF)Redis PersistencyRedis๋Š” ์ธ๋ฉ”๋ชจ๋ฆฌ DB์ด์ง€๋งŒ, ๋ฐ์ดํ„ฐ๋ฅผ ๋””์Šคํฌ์— ์˜๊ตฌ ์ €์žฅ ํ•  ์ˆ˜ ์žˆ๋Š” ํŠน์ง•์ด ์žˆ๋‹ค.๊ทธ๋ž˜์„œ Redis๊ฐ€ restart๋˜๋”๋ผ๋„ ๋””์Šคํฌ์— ์ €์žฅํ•ด๋†“์€ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค์‹œ ์ฝ์–ด์„œ ๋ฉ”๋ชจ๋ฆฌ์— ๋กœ๋”ฉํ•˜๊ธฐ ๋•Œ๋ฌธonfonf.tistory.com ๊ทธ๋Ÿฌ๋ฉด AOF(Append Only File) ๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐฑ์—…ํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ๊นŒ?์ด ๊ธ€์€ Dockerfile์„ ๋งŒ๋“ค์–ด์„œ AOF ๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐฑ์—…ํ•˜๋Š” redis ์ปจํ…Œ์ด๋„ˆ๋ฅผ .. 2024. 12. 10.
[AWS] Elastic IP(ํƒ„๋ ฅ์  ์ฃผ์†Œ)๋ž€? EIP(Elastic IP)EIP๋Š” ์ธํ„ฐ๋„ท์„ ํ†ตํ•ด ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋Š” ๊ณ ์ •์ ์ธ ๊ณต์ธ IP ์ฃผ์†Œ๋ฅผ ํ• ๋‹นํ•  ์ˆ˜ ์žˆ๊ณ , ์ธ์Šคํ„ด์Šค์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค์ด๋‹ค.๋ชจ๋“  ์ธ์Šคํ„ด์Šค ๋˜๋Š” ๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค์— ํƒ„๋ ฅ์  IP ์ฃผ์†Œ๋ฅผ ์—ฐ๊ฒฐ ๊ฐ€๋Šฅํ•˜๋ฉฐ, EIP ํ• ๋‹น๋ฐ›๊ณ  ์‚ญ์ œํ•˜๊ธฐ ์ „๊นŒ์ง€ ์ญ‰ ๊ฐ™์€ IP ์ฃผ์†Œ๋ฅผ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.DNS ์„œ๋ฒ„์—์„œ ๋„๋ฉ”์ธ๊ณผ IP ์ฃผ์†Œ๋ฅผ ์—ฐ๊ฒฐํ•  ๋•Œ, ๋˜๋Š” IP ์ฃผ์†Œ๊ฐ€ ๋ฐ”๋€Œ์ง€ ์•Š๊ณ  ๊ณ„์† ์œ ์ง€๋ผ์•ผํ•  ๋•Œ EIP๋ฅผ ํ• ๋‹น๋ฐ›์•„ ์—ฐ๊ฒฐํ•ด์ฃผ๋ฉด ๋œ๋‹ค. EIP๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ•˜๋Š” ์ด์œ EC2๋ฅผ ์˜ฌ๋ฆฌ๊ธฐ ๋˜๋ฉด ENI(Elastic Network Interface)๊ฐ€ ๋”ฐ๋ผ์˜ค๊ฒŒ ๋˜๋Š” ENI๋Š” ์ผ์ข…์˜ ๊ฐ€์ƒ์˜ ๋žœ์นด๋“œ๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด๋œ๋‹ค. ENI๋Š” ๊ฐ€์ƒ์ด๊ธด ํ•˜์ง€๋งŒ ๋žœ์นด๋“œ์ด๊ธฐ์— MAC ์ฃผ์†Œ์™€ ๋ณด์•ˆ ๊ทธ๋ฃน์— ์—ฐ๊ฒฐ๋ผ์žˆ๊ณ  IP๋„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.๊ทธ๋ฆฌ๊ณ  ์ด ENI๋ฅผ .. 2024. 12. 10.
[Spring Data JPA] MariaDB์—์„œ์˜ ๋™์‹œ์„ฑ ์ด์Šˆ๋กœ ์ธํ•œ ๊ฐฑ์‹  ์ด์ƒ ๋ฌธ์ œ์™€ ๊ทธ ํ•ด๊ฒฐ๋ฒ•(๋น„๊ด€์  ๋ฝ, ๋‚™๊ด€์  ๋ฝ) ๋™์‹œ์„ฑ ์ด์Šˆ๋ž€?๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ๋กœ ๋™์ž‘ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋™์‹œ์— 2๊ฐœ ์ด์ƒ์˜ ํŠธ๋žœ์žญ์…˜์ด ์‹คํ–‰๋ผ์„œ ๋ฐ์ดํ„ฐ์˜ ์ •ํ•ฉ์„ฑ์ด ๋งž์ง€ ์•Š๊ฒŒ ๋˜๋Š” ์ด์Šˆ๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๋™์‹œ์„ฑ ์ด์Šˆ๋ฅผ ํ™•์ธํ•ด๋ณด์žMariaDB์—์„œ ์ •๋ง ๋™์‹œ์„ฑ ์ด์Šˆ๊ฐ€ ์ƒ๊ธฐ๋Š”์ง€๋ฅผ ํ™•์ธํ•ด๋ณด๊ธฐ ์œ„ํ•ด Spring Boot ํ”„๋กœ์ ํŠธ ํ•˜๋‚˜๋ฅผ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ์šฐ์„  ์ด๋ ‡๊ฒŒ 2๊ฐœ์˜ ์—”ํ‹ฐํ‹ฐ๋ฅผ ๋งŒ๋“ค์–ด์ฃผ์—ˆ๋Š”๋ฐ, ๊ฐ๊ฐ์˜ ์šฉ๋„๋Š” ์ด๋ ‡์Šต๋‹ˆ๋‹ค.TestEntity: ์ดˆ๊ธฐ์— count๋ฅผ N๊ฐœ๋กœ ํ•˜๊ณ , ์ด count๋ฅผ ๊ฐ์†Œ์‹œํ‚ค๋ฉฐ ๊ฐฑ์‹ ์ด์ƒ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธฐ๋Š”์ง€ ํ™•์ธRequestRecord: ์š”์ฒญ์ด ๋“ค์–ด์˜ฌ ๋•Œ๋งˆ๋‹ค ํ•˜๋‚˜์”ฉ ์ƒ์„ฑํ•ด์„œ ํ•ด๋‹น ํŠธ๋žœ์žญ์…˜์ด ๋กค๋ฐฑ๋œ๊ฒŒ ์•„๋‹ˆ๋ผ๋Š” ๊ฒƒ์„ ์ฆ๋ช…ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ ๊ทธ๋ฆฌ๊ณ  count ๊ฐ์†Œ API๋ฅผ ์œ„ํ•œ TestController์™€ TestService๋„ ๋งŒ๋“ค์–ด์คฌ์Šต๋‹ˆ๋‹ค. ์š”์ฒญ์ด ๋“ค์–ด์˜ค๋ฉด,.. 2024. 11. 20.