⇥ DevOps Tech 🙋🏻♀️
Ansible 변수 사용 , 우선순위 정리
Ansible 변수 사용 , 우선순위 정리
2023.11.27Playbook 을 작성한 상태 입력되는 값에 따라 동작을 변경하여 반복적인 사용이 가능하도록 설계하기 위해선 변수를 정의하고 사용할 수 있어야 한다. 변수를 어디에 정의하느냐에 따라서 그룹, 호스트, 플레이 변수가 되며 각 변수들이 적용되는 우선순위가 정해져 있다. 그 외에 플레이북이 실행되면서 결과 값을 저장하는 변수 등도 사용할 수 있다. 이러한 변수를 사용하면 플레이북을 재사용할 수 있고 사용자로부터 받은 값도 적용하기 쉬워진다. 이에 대한 내용을 정리하고자 한다. HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 그룹 변수는 인벤토리에 정의된 호스트 그룹에 적용하는 변수를 의미한다. 즉 인벤토리에 선언되었으며, 선언하고자 하는 그룹명과 함께 :vars 라는 문자열을 ..
아이폰 탈옥 (palera1n) ios 15+
아이폰 탈옥 (palera1n) ios 15+
2023.11.15이전 글에서 ios 11~14 버전의 os만 탈옥이 가능했었다. 그래서 좀 더 검색을 하여 찾아보니 palera1n 이라는 15+ 탈옥을 지원하는 툴을 확인했다. github 주소는 https://github.com/palera1n/palera1n/releases Releases · palera1n/palera1n Jailbreak for arm64 devices on iOS 15.0+. Contribute to palera1n/palera1n development by creating an account on GitHub. github.com https://cdn.nickchan.lol/palera1n/c-rewrite/releases/v2.0.0-beta.8/ Index of /palera1n/c-r..
아이폰 탈옥 (Altstore, unc0ver) ios 11.0 ~ 14.8
아이폰 탈옥 (Altstore, unc0ver) ios 11.0 ~ 14.8
2023.11.14아이폰 탈옥을 하는 이유는 여러가지가 있는데, 보안상으로 좋지 않고 애플에서 하지말라는 짓을 하려고 하는 것이기 때문에 실제 사용하는 아이폰으로 하는 것은 많이 위험하다. 집에서 놀고 있는 공기계를 사용하여 하는 것이 좋을 것 같다. 실제로 탈옥할 일이 생겨서 집에 있는 공기계로 테스트해보려고 한다. 탈옥은 unc0ver 라는 앱이 진행해주게 되는데 ipa 파일을 설치할 수 있어야 한다. 그러기 위해선 Altstore 설치 및 Apple ID 설정이 필요하여 아래와 같은 절차로 진행하게 된다. HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 Mac 에서는 Catalina OS 업데이트 이후는 Itunes 대신 Finder 가 그 역할을 대신하게 되었다. 그래서 윈도우일때는 ..
Failed to connect to repository : Error performing git command: git ls-remote -h url HEAD
Failed to connect to repository : Error performing git command: git ls-remote -h url HEAD
2023.10.23HTML 삽입 미리보기할 수 없는 소스 Failed to connect to repository : Error performing git command: git ls-remote -h url HEAD HTML 삽입 미리보기할 수 없는 소스 Jenkins 등 git 을 사용하려는 서버에 git 이 설치되어 있지 않아서 발생하는 오류 HTML 삽입 미리보기할 수 없는 소스 해당 서버에 git 설치 - 썸네일 정보 HTML 삽입 미리보기할 수 없는 소스
Ansible Role 을 이용한 노드 설치 자동화
Ansible Role 을 이용한 노드 설치 자동화
2023.10.20HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 2023.10.17 - [✏️ Ansible] - Ansible Tower (AWX) 설치 방법 2022.10.06 - [✏️ Ansible] - Ansible Playbook 2023.10.18 - [✏️ Ansible] - Ansible Role 작성 방법 이전에 Ansible Tower 설치방법과 Playbook , Role 작성 방법에 대해 포스팅 했었다. 그럼 실제로 이런 내용을 정리하여 Node 설치를 자동화 하는 방법에 대해 작성하려고 한다. 매우 간단한 내용이며 Node 뿐 아니라 Tomcat 혹은 반복해서 하던 모든 일들을 자동화 할 수 있기 때문에 매우 편리한 툴이라고 생각한다. HTML 삽입 미리보기할 수 ..
Ansible Role 작성 방법
Ansible Role 작성 방법
2023.10.18HTML 삽입 미리보기할 수 없는 소스 Ansible 의 role(롤) 은 Playbook을 여러 파일로 분할하는 개념이다. 즉 자주 재사용 되는 특정 동작을 role 로 작성 해놓으면 재사용을 통해 손쉽게 플레이북을 만들 수 있다. ansible 에서는 role 을 작성하기 위한 directory 구조와 동작을 지원하는 모듈 개념이 있다. 작성 관련은 공식 문서에 자세히 안내하고 있어서 사용을 원하는 동작이나 이해가 안되는 부분은 공식 문서에서 참고 할 수 있다. https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_reuse_roles.html Roles — Ansible Documentation The classic (original) ..
Ansible Tower (AWX) 설치 방법
Ansible Tower (AWX) 설치 방법
2023.10.17HTML 삽입 미리보기할 수 없는 소스 Ansible Tower 는 17.1.0 까지의 Docker Version 과 k3s 를 지원하는 이후의 버전으로 나뉜다. 실제 사용해본 바로 k3s 버전은 서비스 배포 시 pod 를 생성하여 각 job 을 진행하기 때문에 고사양 서버에서 운영할 것이 아니라면 docker Version 이 좀 더 좋은 선택이라고 생각한다. (실제 쿠버네티스에서 사용할거면 이거를 굳이..?) HTML 삽입 미리보기할 수 없는 소스 Ansible Tower 설치 시 필요로 하는 라이브러리 버전은 설치할 때 사용한 버전을 명시하였다. 내 기억으로 docker, ansible 은 패키지 관리자로 그냥 설치하면 되는데 Python은 버전이 낮으면 정상 동작되지 않았던 것으로 기억함. 3.8..
Rollback (Semver, Rolling, blue/green)
Rollback (Semver, Rolling, blue/green)
2023.10.16배포를 하다 보면 나가면 안 되는 사항이 배포되거나, 문제로 인해서 되돌려야 하는 상황이 있다. 이에 대한 정책을 롤백이라고 하며 각 배포 방식에서 롤백은 어떻게 진행되는지에 대해서 간단히 정리하고자 하는 문서이다. SemVer 란 ? 그렇다면 우리는 어디까지가 이전에 배포되었던 코드이며, 어디부터 되돌려야 하는지 같은 기준점이 필요하다. 기준점을 관리하기 위한 제안을 위해 도입된 정책이며 다양한 곳에서 사용 중인 Semantic Versioning 기법이다. SemVer -> Semantic versioning 체계적인 버전관리를 위한 제안, 배포 정책이나 시기에 따라서 버전이 매겨지거나, 의미 없는 버전 상승을 지양하여 버저닝에 대한 명확한 의미를 부여 버전의 형식 : Major.Minor.Patch..
Jenkins 에서 빌드한 artifact 를 Ansible 로 넘기는 방법 [nginx file hosting]
Jenkins 에서 빌드한 artifact 를 Ansible 로 넘기는 방법 [nginx file hosting]
2023.10.16이전에 젠킨스에서 git clone, build 를 하는 방법에 대해 포스팅했었다. 2023.10.11 - [✏️ Jenkins] - Jenkins Pipeline 으로 git clone , build 수행하기 Jenkins Pipeline 으로 git clone , build 수행하기 Jenkins Pipeline 으로 CI/CD 를 구축할 때 가장 기본적으로 repository 에서 git 을 clone 하여 build 하는 과정은 반드시 존재한다. 이 과정이 CI (Continuous Integration) 으로 지속적인 통합이라고 할 수 있다. 즉 jjoyling.tistory.com 여기서 빌드된 아티팩트는 젠킨스의 workspace 에 존재하게 될 뿐이고, 배포 시 어떻게 사용해야 할지 알아보..
Mac M1 Chip 에서 android emulator 실행 (nox, bluestack)
Mac M1 Chip 에서 android emulator 실행 (nox, bluestack)
2023.10.13M1 Chip Mac 에서는 녹스나 블루스택 등 실행이 잘 안된다. 그에 대한 우회방안으로 안드로이드 스튜디오에서 테스트를 위해 사용하는 AVD (Android Virtual Device) 기능을 이용하여 대체할 수 있다. 테스트를 위한 기능을 사용하여 안드로이드를 실행하는 개념이라고 생각하면 될 것 같다. 이전에는 Android Studio 에서 arm64 칩에 대한 지원을 안했던 것으로 보이는데 이제는 지원하고 있어서 그냥 VDM 에서 실행해도 상관은 없을 것 같다. 하지만 에뮬레이터로 설치하면 안드로이드 스튜디오는 독립적이기 때문에 개발자가 아닌 이상 그냥 에뮬레이터만 사용해도 되기 때문에 아래 방식으로 하는게 더 나은 것 같다는 생각이다. Android Emulator 를 설치한다. 아래 주소에서..
AWS CodeBuild Plugin 사용하여 AWS 연동하기
AWS CodeBuild Plugin 사용하여 AWS 연동하기
2023.10.12다양한 상황에 대응하기 위해 여러가지 복잡한 구조가 필요한 상황이 있을 수 있다. 예를 들어 젠킨스에서 빌드하고 Tag 값을 CodeBuild 에 전달하기 위한 상황에서 AWS 에 권한이 없다거나 하는 경우가 있다. 이러한 상황을 해결하기 위해 Jenkins 에서 CodeBuild 를 호출하는 방법을 정리했다. 또한 원하는 변수 값을 같이 전달한다. Jenkins 에서 AWS CodeBuild 를 호출하기 위해선 Access Key 와 Secret Key 가 필요하다. AWS 계정을 식별할 수 있어야 해당 계정 안에 있는 CodeBuild 를 접근할 수 있기 때문이다. 또한 외부에서 아무나 접근이 가능하면 비용적인 문제가 있을 수 있기 때문에 해당 key는 엄격히 관리 되어야 한다. https://do..
Jenkins Pipeline 으로 git clone , build 수행하기
Jenkins Pipeline 으로 git clone , build 수행하기
2023.10.11Jenkins Pipeline 으로 CI/CD 를 구축할 때 가장 기본적으로 repository 에서 git 을 clone 하여 build 하는 과정은 반드시 존재한다. 이 과정이 CI (Continuous Integration) 으로 지속적인 통합이라고 할 수 있다. 즉 개발자는 소스코드 개발에만 집중하며 변경사항이 공유 레파지토리에 지속적으로 통합하는 것을 의미한다. 공유 레파지토리에 수정사항이 발생하면 파이프라인은 자동으로 빌드 후 배포까지 수행할 수 있어 개발자는 온전히 소스 코드만 개발할 수 있다는 장점이 있다. 1. Git Clone 그럼 먼저 공유 레파지토리에서 소스를 가져오는 stage 가 필요하다. 공유 저장소가 PUBLIC 권한이라면 상관없겠지만 대부분은 PRIVATE 저장소로 구성되어..