Confd, systemd, fleet을 이용한 어플리케이션 배포 in CoreOS충섭 김
Confd, systemd, fleet을 이용한 어플리케이션 배포 in CoreOS
Docker Seoul Meetup #2에서 발표한 자료입니다.
CoreOS에서 confd와 sidekick service를 이용한 서비스 배포에 대한 내용입니다.
http://www.youtube.com/watch?v=5ixJCM6pAcg
영상과 함께 보시면 더 좋습니다 :)
Confd, systemd, fleet을 이용한 어플리케이션 배포 in CoreOS충섭 김
Confd, systemd, fleet을 이용한 어플리케이션 배포 in CoreOS
Docker Seoul Meetup #2에서 발표한 자료입니다.
CoreOS에서 confd와 sidekick service를 이용한 서비스 배포에 대한 내용입니다.
http://www.youtube.com/watch?v=5ixJCM6pAcg
영상과 함께 보시면 더 좋습니다 :)
2016 아이펀팩토리 Dev Day 발표 자료
강연 제목 : Docker 로 Linux 없이 Linux 환경에서 개발하기
발표자 : 김진욱 CTO
<2016>
- 일시 : 2016년 9월 28 수요일 12:00~14:20
- 장소 : 넥슨 판교 사옥 지하 1층 교육실
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!pyrasis
도커 무작정 따라하기
- 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커의 기본 개념부터 설치와 사용 방법까지 설명합니다.
더 자세한 내용은 가장 빨리 만나는 도커(Docker)를 참조해주세요~
http://www.pyrasis.com/private/2014/11/30/publish-docker-for-the-really-impatient-book
2016 아이펀팩토리 Dev Day 발표 자료
강연 제목 : Docker 로 Linux 없이 Linux 환경에서 개발하기
발표자 : 김진욱 CTO
<2016>
- 일시 : 2016년 9월 28 수요일 12:00~14:20
- 장소 : 넥슨 판교 사옥 지하 1층 교육실
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!pyrasis
도커 무작정 따라하기
- 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커의 기본 개념부터 설치와 사용 방법까지 설명합니다.
더 자세한 내용은 가장 빨리 만나는 도커(Docker)를 참조해주세요~
http://www.pyrasis.com/private/2014/11/30/publish-docker-for-the-really-impatient-book
[17.01.19] docker introduction (Korean Version)Ildoo Kim
Docker(도커) 소개를 위해 사용했던 자료입니다.
제가 속한 개발팀에서는 도커 컨테이너를 기반으로 개발부터 배포까지 가능한 환경 및 인프라를 구축하여 개발팀에서 대다수의 오퍼레이션까지 관여하면서 Devops 형태로 운영합니다.
Docker(도커)를 처음 사용하거나 개념적으로 익숙하지 않은 초보를 위해 만든 자료입니다.
슬라이드에서 사용된 스크립트/코드는 아래에 있습니다.
https://github.com/ildoonet/docker_introduction
----
김일두, Software Engineer @ Kakao
Github : https://github.com/ildoonet
Linkedin : https://www.linkedin.com/in/ildoo-kim-56962034/
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기Nanha Park
# Part 1
개발자의 주위환경에 대해 살펴보고 Cloud Foundry overview, Cloud Foundry 를 구성하는 components 마지막으로 Deploy 환경에 대해 알아보겠습니다.
# Part 2
설치부터 코드까지, 데모찍은 동영상은 추후 제공예정
부족한 부분은 nanhap@gmail.com 으로 문의메일 주시면 성심성의껏 답변 드리겠습니다. 감사합니다.
어떻게 하면 배포 프로세스를 빠르게 개선할 수 있을까요?
git branch를 푸시하고 개별 테스트 서버를 만드려면 어떻게 해야 할까요?
쿠버네티스와 GitOps, Argo CD를 이용한 배포 방법을 소개 합니다.
Open Infrastructure & Cloud Native Days Korea 2019 발표자료
원본 슬라이드 다운로드 - http://bit.ly/subicura-gitops
3. minimal
all in one, but minimal!
䡬 설치용량 - coreos_production_iso_image.iso (142.6Mb)
䡬 메모리사용량 - 40% less RAM than average Linux
䡬 필요한 프로그램만 설치
䡬 apt-get/yum등 설치 안됨
䡬 docker/etcd/fleet/git/curl등 설치됨
䡬 readonly files
䡬 /usr 디렉토리와 .bashrc등이 readonly
4. update
자동 업데이트
䡬 자동 업데이트
䡬 2중화는 필수!
䡬 필요하면 no reboot option 설정
䡬 minimal하기때문에 서버의 업데이트가 부담이 없음
䡬 평생 무료 업데이트 (아마도)
䡬 security
䡬 Shellshork?? => auto update!
5. clustering
클러스터링 기본구성
䡬 etcd
䡬 쉽고 간단한 key-value manager
䡬 consul/zookeeper.. 등이 필요없음
䡬 systemd
䡬 사용하기 쉽고 간편
䡬 fleet = etcd + systemd
䡬 puppet/chef/ansible/salt.. 등이 필요없음
6. fleet
쉽고 간단한 배포
for i in $(seq 1 ${SERVICE_NUM}); do
fleetctl start ${SERVICE_NAME}-${BUILD_NUMBER}@${i}.service
done
# cleanup
for i in $(seq 1 ${SERVICE_NUM}); do
for check in $(seq 1 ${CHECK_NUM}); do
if [ $(fleetctl list-units --no-legend --fields unit,active | grep ${SERVICE_NAME}-$
{BUILD_NUMBER}@${i}.service | awk '{print $2}') = 'active' ]; then
fleetctl destroy $(fleetctl list-units --no-legend --fields unit | grep ${SERVICE_NAME}- | grep
@${i} | grep -v ${BUILD_NUMBER})
break
fi
sleep 5
done
done
*무중단 배포를 추가 프로그램 설치 없이 쉘 스크립트로 간단하게
7. cloud-config
기본 필수파일 설치도 쉽게
write_files:
- path: /etc/fstab
permissions: 0644
content: |
192.168.0.2:/nfs /mnt/nfs nfs rw,hard,intr,nolock,rsize=8192,wsize=8192,timeo=14 0 0
- path: /etc/systemd/journald.conf
permissions: 0644
content: |
[Journal]
SystemMaxUse=50M
*바이너리를 포함해 어떤 파일도 설치시 설정 가능
10. 관리툴의 조건
䡬 GUI - 쉬운 컨테이너 설치 및 상태 확인
䡬 Detail - native의 기능을 모두 사용 가능
䡬 Cluster - 확장을 쉽게
䡬 Easy Install - 설치를 쉽게
䡬 Service Template - 컨테이너 구성을 하나의 서비스로
䡬 More - CI, Auto Scale…