Among Us - Yellow Crewmate '분류 전체보기' 카테고리의 글 목록 (3 Page)

전체 게시글 121

[Ansible] Ansible 개념 정리 및 설치

1. Ansible ? 서버를 효율적으로 관리할 수 있게 해 주는 오픈 소스 IT 자동화 도구이다. 간혹 Ansible과 Terraform을 동일선상에서 보는 분들이 계시는데, Terraform과는 엄연히 다른 툴이고, 사용 목적이 다르다. 2. Ansible 특징 yaml 파일 형식으로 playbook 작성 Agentless - 별도의 Agent가 필요하지 않다 멱등성을 가지고 있어서 여러번 수행하더라도 결과가 바뀌지 않는다. 3. Ansible 구성요소 1. Inventory (인벤토리) Inventory 는 일반적으로 호스트를 정의한 파일을 의미한다. 호스트는 단독으로도 정의 할 수 있으며 그룹으로도 정의 가능하다. # 인벤토리 작성 예제 [webservers] localhost web1.examp..

DevOps/Ansible 2021.04.24

[kubenetes] Kubeadm 사용하여 K8s 클러스터 구성하기

Kubeadm ? kubeadm은 kubenetes Cluster를 빠르게 구성하도록 만들어진 도구이다. 이번 글에서는 Kubeadm을 사용하여 k8s 클러스터를 구성하는 과정에 대해서 알아보도록 할 예정이다. kubernetes.io/ko/docs/setup/production-environment/tools/kubeadm/_print/#pg-4c656c5eda3e1c06ad1aedebdc04a211 kubeadm으로 클러스터 구성하기 운영 수준의 컨테이너 오케스트레이션 kubernetes.io 위의 링크는 Kubeadm 설치하는 공식 문서이다. 1. 시작하기전 구성... * 권장 사양 : CPU 2코어 , RAM 2GB 이상 * kubenetes 구성 요소가 사용하는 포트에 대해 방화벽 오픈 -마스터..

DevOps/Kubernetes 2021.04.24

[k8s] The connection to the server localhost:8080 was refused

kubernetes 에서 kubectl을 설치하는 과정에서 아래와 같은 오류를 한번씩 경험했을 것이다. The connection to the server localhost:8080 was refused - did you specify the right host or port? 이러한 증상이 나타나는 이유는 보통 다음과 같다 1. Config 파일이 $HOME/.kube 디렉토리에 존재하지 않을 경우 2. Config 파일에 현재 유저정보가 반영되지 않았을 경우 Kubeadm 으로 클러스터를 구축한 경우와, EKS로 클러스터를 구축한 경우의 해결방법을 알아보자 1. Kubeadm에서 Error 발생 kube init 명령어 실행시 출력되는 명령어를 순서대로 따라해준다. $ mkdir -p $HOME/.k..

Trouble Shooting 2021.04.24

DevOps 와 SRE 비교

어느 날 지인을 만났는데, 본인을 SRE팀이라고 소개하였다. SRE라는 단어를 처음 들었던 나는 도대체 SRE가 뭐하는 팀인가 궁금해졌다. 검색 결과 SRE와 DevOps의 차이를 비교하는 글들을 여럿 찾아볼 수 있었다. 하지만, 여러 글들을 찾아보면서도... 차이가 잘 이해가 가지 않는 것 같아서 직접 정리하면서 이해해보려고 한다.. 1. DevOps (Development + Operations) DevOps란 말 그대로 Development와 Operations의 합성어이다. 개발팀과 운영팀을 나누지 않고 병합하여, 엔지니어가 개발에서 테스트, 배포, 운영까지 모두 수행하는 것을 말한다. 개발팀은 개발에 치중하고, 운영팀은 운영에 치중하기 때문에 때로는 이해 관계가 불일치해서 트러블이 생기는 경우가..

DevOps 2021.04.22

[AWS] Lambda 생성 안됨 (Access Key 유출 관련)

어느날 Lambda를 통한 실습을 진행하려고 했는데 아래와 같이 "Request failed with status code 403" 에러가 뜨면서생성이 되지않았다. 처음 만져보는 람다여서... 나는 내가 무언가를 놓치고 있다고 생각하고 한참을 헤맸다.. 나는 이러한 원인을 AWS의 Personal Health Dashboard에서 확인할 수 있었다.aws.amazon.com/premiumsupport/technology/personal-health-dashboard/AWS Personal Health DashboardAWS Personal Health Dashboard는 AWS에 고객에게 영향을 미칠 수 있는 이벤트가 발생할 때 알림 및 해결 지침을 제공합니다. Service Health Dashboar..

Trouble Shooting 2021.04.21

[kubernetes] 쿠버네티스의 구성요소 ! (Controller)

쿠버네티스를 구성하는 요소에는 객체와 컨트롤러가 있다. 지난 게시물에서 객체에 대해서 간단히 알아보았고, 이번에는 컨트롤러에 대해서 알아보도록 하자. 컨트롤러란? Pod를 관리하는 역할을 한다. Pod를 어떻게 관리하느냐에 따라서 쿠버네티스에서 제공하는 컨트롤러를 사용한다. 2. 컨트롤로의 종류는? ReplicaSet, Deployment, DaemonSet, StatefulSets, Job이 있다. 3. 각 컨트롤러를 관리 목적에 맞게 분류 3-1. 상태를 유지하지 않아도 되는 파드를 관리 (Stateless) - ReplicaSet, Deployment 3-2. 상태를 유지해야 하는 파드를 관리 (Stateful) - StatefulSet 3-3. 클러스터 전체에 배포가 필요한 파드를 관리 - Dae..

DevOps/Kubernetes 2021.04.20

[Python] 파이썬 기초 공부하기 - (문자열)

파이썬에서 사용하는 문자열 타입 String에 대해서 알아보자 문자열은 따옴표로 둘러쌓여 있는 단어나, 숫자들을 말한다. 1000 으로 되어있으면 숫자 1000을 뜻하지만 '1000' 으로 되어있으면 1000이라는 하나의 문자가 되는것이다. 1. 문자열 만들기 작은 따옴표(') 또는 큰 따옴표(")를 이용하여 문자열로 만들 수 있다. 'String' "String" 또는, 다음과 같이 3개의 작은 따옴표나, 큰 따옴표를 이용해 여러 줄에 걸쳐서 문자열을 만들 수도 있다. >>> my_str = ''' ... aa ... bb ... cc ... ''' >>> print(my_str) aa bb cc >>> my_str = """ ... 11 ... 22 ... 33 ... """ >>> print(my_..

Python 2021.04.18

[Jenkins] AWS EC2에 Jenkins를 설치해보자

Jenkins란 무엇일까? 젠킨스는 소프트웨어 개발 시 지속적으로 통합 서비스를 제공하는 CI (Continuous Integration) 툴이다. 개발자가 개발을 하면서 소스 코드를 서버에 올릴 수 있는 상태로 만드는 것을 '빌드' 라고 하고, 서버에 올린 뒤 사용자가 사용할 수 있게 하는 것은 '배포'라고 한다. 개발자는 코드를 계속 업데이트 해나가면서 여러번의 빌드를 거쳐나가게 되는데, 시간이 지날수록 굉장히 번거롭게 되고 빌드하는 시간 또한 오래걸린다. 이러한 이유로 빌드를 자동화 시키는 작업을 할 필요가 있게 된다. 젠킨스는 이러한 빌드를 자동화 시켜주는 도구이다. Jenkins 설치하기 AWS EC2에서 Amazon linux2를 띄우고 젠킨스를 설치해보자 1. sudo yum -y updat..

DevOps/CI CD 2021.04.13

[Python] 파이썬 기초 공부하기 - (입,출력)

1. 출력 (Print) 파이썬에서 문자열을 출력하는 함수는 print 함수이다. print 함수는 특정 파일에 출력하도록 지정할 수도 있지만, 기본 설정은 터미널 혹은 파워셀에 출력된다. >>>print('hello world') hello world >>>print(1,2,3) 1 2 3 >>>print([1,2,3]) [1, 2, 3] 2. 입력 (input) 파이썬에서 문자열을 입력받는 함수는 Input 이다. >>> input() potato 'potato' >>> input() abc123 'abc123' 입력받은 문자열을 변수에 지정하여 사용할 수도 있다. name = input("이름을 입력해주세요.") age = input("나이를 입력해주세요") print("{age}세 {name}님 ..

Python 2021.04.12

[Terraform] 테라폼 모듈

Terraform을 사용하면 인프라를 코드로 만들어서 관리할 수 있다. 인프라를 코드로 만들어 관리하는 것은 매우 효율적인데, 운영적인 측면에서는 빠르게 인프라를 배포하고 한번 작성한 코드를 통해서 이후에 발생하는 반복적인 작업을 줄일 수 있다. 개발적인 측면에서 개발자는 인프라를 코드로 관리하며 개발에 좀 더 집중할 수 있게 된다. 실제 운영 환경에서는 [ 개발 - 테스트 - 운영 ] 의 단계를 거치게 된다. Devlopment (dev) : 개발자들이 테스트하는 단계 Staging (stg) : 개발 테스트 이후 통합 테스트 단계 Production (prd) : 실제 사용자들이 사용하는 운영 단계 각 단계마다 소스 코드가 다르지만 참조를 하거나 재사용하는 경우가 많다. 재사용하는 방법으로는 소스 코..

DevOps/Terraform 2021.04.06