'apps > docker' 카테고리의 다른 글
쿠버네티스란 무엇인가? (0) | 2018.08.18 |
---|---|
도커란 무엇인가? (0) | 2018.08.04 |
flannel을 통한 pod간 통신 (2) | 2018.07.03 |
도커에서 nodejs+mongodb 테스트 (0) | 2018.07.01 |
kubernetes에서 gpu pod생성( nvidia-docker2 ) (2) | 2018.05.30 |
쿠버네티스란 무엇인가? (0) | 2018.08.18 |
---|---|
도커란 무엇인가? (0) | 2018.08.04 |
flannel을 통한 pod간 통신 (2) | 2018.07.03 |
도커에서 nodejs+mongodb 테스트 (0) | 2018.07.01 |
kubernetes에서 gpu pod생성( nvidia-docker2 ) (2) | 2018.05.30 |
DevOps가 떠오른 이유 (0) | 2018.11.25 |
---|---|
도커란 무엇인가? (0) | 2018.08.04 |
flannel을 통한 pod간 통신 (2) | 2018.07.03 |
도커에서 nodejs+mongodb 테스트 (0) | 2018.07.01 |
kubernetes에서 gpu pod생성( nvidia-docker2 ) (2) | 2018.05.30 |
이름공간 | 기능 |
Mount namespace | 파일 시스템 분리 |
UTS namespace | 호스트 네임 분리 |
IPC namespace | 프로세스간 통신 분리 |
User namespace | 유저(UID/GID) 분리 |
PID namespace | 프로세스 테이블 분리 |
Network namespace | 네트워크 설정 분리 |
yjhui-MacBook-Pro:elk yjh$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE nodejs-mongodb-test yang ffe8520fe8cd 4 weeks ago 664MB 172.30.1.19:5000/centos 7 e934aafc2206 3 months ago 199MB centos 7 e934aafc2206 3 months ago 199M mongo latest 9a63ed32fc2b 5 weeks ago 378MB |
DevOps가 떠오른 이유 (0) | 2018.11.25 |
---|---|
쿠버네티스란 무엇인가? (0) | 2018.08.18 |
flannel을 통한 pod간 통신 (2) | 2018.07.03 |
도커에서 nodejs+mongodb 테스트 (0) | 2018.07.01 |
kubernetes에서 gpu pod생성( nvidia-docker2 ) (2) | 2018.05.30 |
쿠버네티스란 무엇인가? (0) | 2018.08.18 |
---|---|
도커란 무엇인가? (0) | 2018.08.04 |
도커에서 nodejs+mongodb 테스트 (0) | 2018.07.01 |
kubernetes에서 gpu pod생성( nvidia-docker2 ) (2) | 2018.05.30 |
centos7에서 nvidia driver설치하기 (0) | 2018.05.28 |
최근 도커를 공부하다가 다른 컨테이너에 있는 프로세스끼리 어떤 식으로 통신하는지 궁금해져서 테스트를 해봤다.
움 완성하고 보니 대충 이런 그림?
코드는 아래와 같이 진행하면 된다.
완성하고 보니 link로 연결하면 컨테이너의 /etc/hosts 에 다른 컨테이너 아이디가 등록된 것을 확인할 수 있었다.
도커프록시를 통해 내부에서 할당받은 아이피대역대끼리는 통신이 되기 때문에 이런 식으로 가능한 듯 ..
문득 궁금한게 k8s에서는 pod간 통신이 궁금해진.. ( 다음 포스팅에 올려볼예정 )
** 이 포스팅에 잘못 된 내용이 있으면 지적해주세요
몽고디비 컨테이너에 생성
$ docker run --name mongo -p 27017:27017 -d mongo
도커 프로세스 확인
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b2482f6a58be mongo "docker-entrypoint.s…" 5 minutes ago Up 5 minutes 0.0.0.0:27017->27017/tcp mongo
컨테이너에 접속
$ docker exec -it mongo /bin/bash
mongo를 입력하여 제대로 동작하는지 확인
root@b2482f6a58be:/# mongo
MongoDB shell version v4.0.0
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 4.0.0
Server has startup warnings:
2018-06-30T04:51:49.681+0000 I STORAGE [initandlisten]
2018-06-30T04:51:49.681+0000 I STORAGE [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
2018-06-30T04:51:49.681+0000 I STORAGE [initandlisten] ** See http://dochub.mongodb.org/core/prodnotes-filesystem
2018-06-30T04:51:50.154+0000 I CONTROL [initandlisten]
2018-06-30T04:51:50.154+0000 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
2018-06-30T04:51:50.154+0000 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
2018-06-30T04:51:50.154+0000 I CONTROL [initandlisten]
---
Enable MongoDB's free cloud-based monitoring service to collect and display
metrics about your deployment (disk utilization, CPU, operation statistics,
etc).
The monitoring data will be available on a MongoDB website with a unique
URL created for you. Anyone you share the URL with will also be able to
view this page. MongoDB may use this information to make product
improvements and to suggest MongoDB products and deployment options to you.
To enable free monitoring, run the following command:
db.enableFreeMonitoring()
>
> db
test
우선 해당 git에 프로젝트 다운
$ git clone https://github.com/yangjeehan/nodejs-mongo-test.git
해당 도커파일을 통해 이미지를 만든다.
$ docker build -t nodejs-mongodb-test:yang
*만든 이미지를 실행한다. ( 전에 만든 mongo container을 link을 통해 연결 ) *
$ docker run -i --link mongo
--name test -t nodejs-mongodb-test:yang /bin/bash
만든 컨테이너에 접속하여 아래명령어 수행
$ docker exec -it test /bin/bash
root@ee137a79dd4e:/usr/src/app# node demo_mongo_insert.js
root@b2482f6a58be:/# mongo
> show databases;
admin 0.000GB
config 0.000GB
local 0.000GB
mydb 0.000GB
> use mydb
switched to db mydb
>
> show collections;
customers
> db.customers.find()
{ "_id" : ObjectId("5b371eb7d8daba00078e2fdf"), "name" : "Company Inc", "address" : "Highway 37" }
도커란 무엇인가? (0) | 2018.08.04 |
---|---|
flannel을 통한 pod간 통신 (2) | 2018.07.03 |
kubernetes에서 gpu pod생성( nvidia-docker2 ) (2) | 2018.05.30 |
centos7에서 nvidia driver설치하기 (0) | 2018.05.28 |
kubenetes설치 실패 시 초기화방법 (0) | 2018.05.28 |
The list of prerequisites for running the NVIDIA device plugin is described below:
DevicePlugins
feature gate enabled도커 실행
도커에서 제대로 실행이 된다면 이젠 k8s에서 pod으로 띄워본다.
k8s에서 띄우기 위해선 몇가지 작업을 더 해줘야한다.
아래 과정들은 모든 노드에서 진행한다.
데몬 설정에 아래와 같이 해준다 path엔 실제 돌아가는 nvidia-container-runtime을 추가해준다.
pod이 제대로 떠있는지 확인 ( nvidia-device-plugin-daemonset 이 올라왔다면 완료 !)
만들어둔 yaml을 통해 실행시켜봤다.
만들어둔 yaml을 통해 실행시켜봤다.
flannel을 통한 pod간 통신 (2) | 2018.07.03 |
---|---|
도커에서 nodejs+mongodb 테스트 (0) | 2018.07.01 |
centos7에서 nvidia driver설치하기 (0) | 2018.05.28 |
kubenetes설치 실패 시 초기화방법 (0) | 2018.05.28 |
Kubernetes + Docker 설치 ( CentOS ) (1) | 2018.05.28 |
k8s에서 gpu을 사용하는 pod을 만들일이 있어 관련 내용을 정리하였다.
gpu을 사용하기 위해서는 nvidia driver가 있어야한다.
이번 포스팅엔 먼저 nvidia 드라이버 설치 관련 내용을 정리하였다.
위 화면이 뜬다면 완료
flannel을 통한 pod간 통신 (2) | 2018.07.03 |
---|---|
도커에서 nodejs+mongodb 테스트 (0) | 2018.07.01 |
kubernetes에서 gpu pod생성( nvidia-docker2 ) (2) | 2018.05.30 |
kubenetes설치 실패 시 초기화방법 (0) | 2018.05.28 |
Kubernetes + Docker 설치 ( CentOS ) (1) | 2018.05.28 |
k8s을 설치하고 재 설치 시 전에 있던 데이터가 남아 있어서 문제가 생긴다.
$ kubeadm init
필자의 경우 위 명령어가 time out으로 계속 실패하여 원인을 찾는데 많은 시간을 소비했다.
아래 명령어를 통해 docker, k8s을 초기화하고 다시 설치하자 문제 없이 설치가 되었다.
# docker 초기화 $ docker rm -f `docker ps -aq` $ docker volume rm `docker volume ls -q`
$ umount /var/lib/docker/volumes $ rm -rf /var/lib/docker/
$ systemctl restart docker # k8s 초기화 $ kubeadm reset $ systemctl restart kublet # iptables에 있는 데이터를 청소하기 위해 $ reboot
|
flannel을 통한 pod간 통신 (2) | 2018.07.03 |
---|---|
도커에서 nodejs+mongodb 테스트 (0) | 2018.07.01 |
kubernetes에서 gpu pod생성( nvidia-docker2 ) (2) | 2018.05.30 |
centos7에서 nvidia driver설치하기 (0) | 2018.05.28 |
Kubernetes + Docker 설치 ( CentOS ) (1) | 2018.05.28 |
참고사이트 :
https://www.howtoforge.com/tutorial/centos-kubernetes-docker-cluster/
위에 modprobe을 하면 bridge관련 모듈이 추가된다.
k8S Cluster Initialization
슬레이브노드에서 진행 :
flannel을 통한 pod간 통신 (2) | 2018.07.03 |
---|---|
도커에서 nodejs+mongodb 테스트 (0) | 2018.07.01 |
kubernetes에서 gpu pod생성( nvidia-docker2 ) (2) | 2018.05.30 |
centos7에서 nvidia driver설치하기 (0) | 2018.05.28 |
kubenetes설치 실패 시 초기화방법 (0) | 2018.05.28 |