본문 바로가기

전체 글

(23)
애자일 스크럼 - 서브 태스크 템플릿 만들기 스크럼 내 업무는 비슷한 유형이 반복적으로 발생할 가능성이 높다. 예를들어 마이그레이션, 새 API 릴리스, 기존 API 수정 이러한 반복적인 업무에 대해서는 해당 태스크의 서브 태스크의 템플릿을 만들어서 팀 내 공유하는 편이 스프린트 플래닝 시 도움이 된다. 예전 경험을 비추어 보면 스프린트 플래닝 시 매번 새롭게 서브 태스크(스토리)를 생각해내느라 가끔 누락되는 태스크가 있어 스프린트 도중에 추가해야하는 일이 종종 있곤 했다. 누락 방지를 위해 서브 태스크 템플릿을 준비해보자. 태스크 서브 태스크 예 태스크 : 서버 이전 서브 태스크 0. AWS 리소스 생성 1. 이전 작업 2. 동작 확인 3. 모니터링 확인 4. 로그 확인 5. 트래픽 전환 각 팀이 위와 같이 팀의 서브태스크 템플릿을 갖게 되면 똑..
맛있는 코코아 제조 도전기(1) 재료 우유 : 150ml 코코아 : 10g 소금 : 1g 설탕 : 12g 얼음 : 4개(조금 큰편) 위 재료를 넣고 믹서기를 사용해서 섞었다. 그리고 마지막에 휘핑크림을 얹어 준다. 소감 조금 짜긴한데... 먹을만하긴 하다. 입에 닿았을 때 짠 맛이 먼저 느껴짐. 설탕량이 보통 코코아 보다는 적었기 때문이면서도 소금량이 좀 과했다. 다음 계획 다음엔 소금을 줄이고, 얼음 5개 넣고 좀 오래동안 갈아서 만들기 그리고 설탕 8g, 소금 아주 조금 휘핑크림 안넣기 우리 국민의 가공 식품을 통한 당류 섭취량 (1일 열량의 8.1%)은 WHO 섭취 권고 기준 (1일 열량의 10%) 이내이나 매년 증가해 주의를 기울을 필요가 있다. https://www.mfds.go.kr/webzine/201508/01.jsp
AWS Lambda IP 확인하는 방법 - 외부 서비스 ACL 관련 시나리오 새 서비스(이하 AddressAPI)가 새롭게 만들어지는 상황, 이 서비스는 ACL(Access Control List)을 사용하여 접속을 관리함. 우리 팀의 Lambda가 AddressAP를 사용하기 위해 해당 팀에 소통에 필요한 IP를 전달해야 한다. 해결 방안 1. Lambda 실행 중에 자신의 IP를 확보하기. import urllib.request def lambda_handler(event, context): data = urllib.request.urlopen("https://checkip.amazonaws.com") # 현재 Instance의 IP를 반환 ip = data.read() print(ip) return ip 이렇게 해보면 어떨까? 아래 사진에서 확인할 수 있듯이 해당 ..
파이썬 코딩의 기술 - (22) 변수 위치 인자를 사용해 시각적인 잡음을 줄여라 보호되어 있는 글입니다.
파이썬 코딩의 기술 - (21) 변수 영역과 클로저의 상호작용 방식을 이해하라 보호되어 있는 글입니다.
파이썬 코딩의 기술 - (8) 여러 이터레이터에 대해 나란히 루프를 수행하려면 zip을 사용하라 zip() Iterate over several iterables in parallel, producing tuples with an item from each one. zip() returns an iterator of tuples https://docs.python.org/3/library/functions.html#zip Built-in Functions The Python interpreter has a number of functions and types built into it that are always available. They are listed here in alphabetical order.,,,, Built-in Functions,,, A, abs(), aiter(), all(),..
파이썬 코딩의 기술 - (7) range보다는 enumerate를 사용하라 관련 PEP https://docs.python.org/3/whatsnew/2.3.html#pep-279-enumerate range The range type represents an immutable sequence of numbers and is commonly used for looping a specific number of times in for loops. https://docs.python.org/3/library/stdtypes.html#range enumerate Return an enumerate object. iterable must be a sequence, an iterator, or some other object which supports iteration. The __nex..
Kubernetes Namespace 설계에 관해 클러스터 구성 후 실제 사용에 들어가기 전 네임스페이스를 설계해야 하는데 어떠한 점을 고려해야 할지 적어본다. 네임스페이스 이름에 환경을 넣어야하는가? 네임스페이스는 어떠한 단위로 나눠야 좋을까? 네임스페이스 이름에 환경을 넣어야하는가? Yes, 실수 방지를 위해 넣는편이 좋다고 생각함. 클러스터를 구분한다고 하더라도 네임스페이스 이름에 환경을 넣어 다시 한 번 주의를 환기시킬 필요가 있다. 쿠버네티스 사용 시 자신도 모르는 사이 혹은 알면서도 프로덕션 환경에서 작업 혹은 테스트를 하게 되는 경우가 종종 있는데 네임스페이스에 환경을 넣어 모르고 실수 하는 것은 방지할 수 있다. 굳이 단점을 뽑자면 Manifest 파일 내에 각 환경을 변수처리하여 네임스페이스 뒤에 붙여주는 수고로움이 있다는 점. 네임스페..
Splunk(스플렁크) - eval 설명, 사용법 eval이란? 표현식을 계산해서 나온 값을 필드에 넣어 주는 커맨드. 관련 명령어로는 where가 있습니다. 문법(Syntax) eval =["," =]... Reference - http://docs.splunk.com/Documentation/Splunk/8.2.5/SearchReference/Eval
Helm(헬름) - 배포판, 로컬 비교하기, diff, values, manifest 환경(자주 배포 안하는)에 따라 최신 차트와 현재 배포된 차트의 버전이 차이가 많이 나버리는 경우가 종종 있다. 그런 경우 코드만 비교해 보는 것 만으로는 어떤 변화가 일어날지 가늠이 잘 안가서 Manifest를 가져와서 확인하는 편이 안심이 되기에 다음과 같은 방법을 사용해 보았다. 시나리오 0. 헬름 리비전 간 비교 시 helm diff : Preview helm upgrade as a coloured diff https://github.com/databus23/helm-diff - 최신 REVISION과 특정 REVISION 비교 $ helm diff revision [flags] RELEASE REVISION1 Example: $ helm diff revision my-release 2 - REV..