본문 바로가기

INFRA/DevOps147

Github의 이해 3 안녕하세요. BTC_조롱이입니다! 오늘도 Github를 이해하는 시간을 가져보겠습니다! 이전까지 commit이 어떻게 동작하고 branch와 어떤 관계가 있는지 알아봤습니다. branch는 여러명의 개발자들이 하나의 commit을 기준으로 별도의 작업을 각각 진행 하기 위해서 만드는 것이고, 이때 어떤 commit으로 부터 작업할 것인지의 기준으로 branch 가 생성 됩니다. 그럼 이제 어떻게 각각의 작업된 branch를 하나로 잘 합칠 수 있는지 알아 보겠습니다. Merge 각각의 작업된 branch를 합치는 기능인 merge에 대해서 알아보겠습니다. git에서 할 수 있는 merge는 크게 두가지가 존재합니다. Fast-forward 이전 github 이해하기-2에서 실습했던 것에서 연속으로 진행해.. 2022. 7. 15.
Terraform으로 Aws Infra 구성하기 (기초) 여기서 다루는 Terraform은 기초로 폴더 및 파일을 나눠 구분하지 않으며 Backend로 Resource를 불러오지 않겠다. 이 글에서 Terraform으로 생성 할 아키텍처는 다음과 같다. (아키텍처 이미지) Terraform에 Aws 공급자를 등록하는 방법은 여러가지인데 이 방법으로 등록하도록 하겠다. 먼저 IAM 사용자를 생성 해 AceessKey와 SecretKey를 기입한다. provider "aws" { access_key = "access_key" secret_key = "secret_key" region = "ap-northeast-2" } Root 사용자를 사용해도 되나 Aws에서는 모든 권한을 IAM사용자에 할당하더라도 IAM을 생성하여 사용하는 것을 권장하고 있다. 계정탈취시에 .. 2022. 7. 13.
Github의 이해 2 안녕하세요! BTC_조롱이 입니다. 오늘도 깃허브에 대한 이해를 늘리기 위해 조롱조롱 포스팅을 해볼게요! 처음 github을 접하고 branch를 생성하고 작업을 하고 있을 때는 당연히 현재 작업하고 있는 공간을 복사해서 하나의 새로운 작업 공간으로 만드는 것이라고 생각했었습니다. 하지만 실제 github의 branch는 이렇게 동작하고 있지 않았습니다. 여기서 github branch가 어떻게 생성 되는지 그리고 어떻게 동작 하는지 알아보도록 하겠습니다. Commit을 조금 더 이해하기 이전의 github 이해하기-1에서 commit은 소스 코드의 변경사항을 포함한 전체를 하나의 snapshot으로 만든다는 것을 알았습니다. 우선 테스트 할 디렉토리를 하나 만들고 readme.md파일 하나를 추가해 봅.. 2022. 7. 12.
[Docker] Docker container storage container image는 read only container에 추가되는 data들은 별도의 rw layer에 저장 Union file system (Overlay) 기술로 가능 container가 만들어주는 data (rw layer)를 영구적으로 보존할 필요가 있음 Volume mount를 통해서 container끼리 data 공유 가능 Container vulume option -v : -v :: -v Docker volume과 관련된 command docker volume [command] [ Hands - on ] Mysql DB data 영구 보존 - Host path 설정한 경우 Mysql container 생성 docker run -d --name db -v /dbdata:/var/li.. 2022. 7. 11.
GitHub Script란 무엇일까요? 안녕하세요 진상팀 입니다. Dev/Ops를 하는 과정에서 GitHub는 많이 사용되고 있습니다. 그리고 만약 web을 사용한 프로젝트라면 javascript가 빠질순 없겠죠? 이번포스팅은 GitHub Script가 무엇인지 알려드릴겁니다. GitHub Script란 무엇일까요? GitHub Script는 인증된 octokit 클라이언트를 제공하고 워크플로 파일에서 JavaScript를 바로 쓸 수 있도록 하는 작업입니다. Node.js에서 실행되므로 스크립트를 작성할 때 플랫폼의 기능을 사용할 수 있습니다. Octokit란 무엇일까요? Octokit는 GitHub API용 클라이언트의 공식 컬렉션입니다. 이러한 클라이언트에 속하는 rest.js는 GitHub의 REST 인터페이스에 대한 JavaScrip.. 2022. 7. 6.
[Docker] Docker container resource 관리 기본적으로 container는 호스트 하드웨어 리소스의 사용 제한을 받지 않는다. 따라서 container가 필요로 하는 만큼의 리소스만 할당해야 한다 Docker command를 통해 제한할 수 있는 resource CPU Memory Disk I/O (Block I/O) docker run command로 실행 Memory 리소스 제한 --memory, -m : container가 사용할 최대 memory 양을 지정 --memory-swap : container가 사용할 swap memory 영역에 대한 설정 memory+swap 생략 시 memory의 2배가 설정됨 --memory-reservation : --memory값보다 적은 값으로 구성하는 소프트 제한 값 설정 --oom-kill-disab.. 2022. 7. 5.
Github의 이해 1 안녕하세요. BTC_조롱이 입니다! 이번에는 협업을 위해 빠질 수 없는 툴, Github에 대한 포스트입니다. 바로 시작할게요! Github에서 Commit 이란? 우리가 사용하는 Github-Repository에서 어떤 변경 사항을 만들었을 때 이것을 추가하는 것을 add라고 한다면, 이렇게 add된 부분을 하나의 버전으로 만드는 것을 commit 이라고 합니다. Github과 SVN의 차이 10년 전만 해도 개발 전반의 소스 버전 관리는 SVN(SubVersion)을 이용 했었을 것입니다. 하지만, Github이 나오고 요즘의 대부분 오프소스나 사내의 소스 버전 관리는 SVN을 잘 사용하지 않게 되었습니다. 이 두 버전 관리 시스템은 큰 차이가 있는데, 바로 바뀐 것만 저장(delta)하는 것이 아니.. 2022. 7. 1.
Ingress 란? - 1 반갑습니다! 💙베하💙 누구든 탑승할 수 있는 유임승차 팀의 BTC 룰루랄라 입니다!!💨😉 저번 포스팅은 쿠버네티스 기능 중 하나인 Service에 대해서 설명 드렸는데요~ 이번 포스팅에서는 Kubernetes의 Ingress에 대해서 추가적인 기능에 대해서 설명해 드리겠습니다. 이제 쿠버네티스 기능에 대해서 막바지로 달려가고 있네요~ 그럼 시작해 보겠습니다! 룰루랄라~♬ ⚡️ 목표 도메인을 이용하여 서로 다른 서비스에 접근하는 방법을 알아봅니다. 하나의 클러스터에서 여러 가지 서비스를 운영한다면 외부 연결을 어떻게 할까요? NodePort를 이용하면 서비스 개수만큼 포트를 오픈하고 사용자에게 어떤 포트인지 알려줘야 합니다. 그럴순 없죠! 위 샘플은 example.com, subicura.com/blog,.. 2022. 6. 27.