아카이브: 2017/3

ODL karaf 에서 impl 모듈만 빌드해서 다시 띄우는 방법

ODL 개발시 impl 쪽을 수정할때마다 매번 프로젝트 전체를 빌드하고 다시 karaf를 띄우는게 시간이 오래걸려 확인해보니 karaf 내에서 각 bundle별로 죽였다 다시 띄울때 jar 파일만 교체해주면 전체를 빌드하지 않아도 손쉽게 적용이 가능하다. ~/karaf/target/assembly/system/org/opendaylight/hello/he

ODL에서 외부 라이브러리 사용하기

ODL SB plugin을 만들면서 외부 라이브러리를 거의 필수적으로 사용하게 되는데 karaf상에서 외부라이브러리를 사용하는 방식이 다소 복잡하여 정리를 하였다. 내가 필요한 라이브라리는 아래와 같다. 123456789import org.springframework.http.HttpMethod;import org.springframework.http.Re

ODL(OpenDayLight) 기본 튜토리얼 #7_3 – clustering 설정

앞선 예제에서 사용했던 hello 프로젝트를 clustering을 이용하도록 구현해보자. 목표는 global-rpc,routed-rpc 구현과 datastore 공유이다. hello 프로젝트에 아무런 설정을 하지 않고 1ansible-playbook -i hosts playbook_hello.yaml 명령어를 이용하여 3개의 docker instance로

ODL(OpenDayLight) 기본 튜토리얼 #7_2 – ODL Clustering 소스 배포

이번에는 앞서 구축한 3개의 docker instance에 소스를 배포하고 기동하는 방법이다. 테스트 소스는 coretutorials/clustering 하위에 있는 singletonsimple 으로 하겠다. 먼저 singletonsimple 을 빌드를 해야 하는데 singletonsimple-impl 를 빌드하다 문제가 발생했었다. [ERROR] Fai

ODL 개발시 삽질 내역..

빌드를 하다 난 에러1234567[ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:1.4.1:enforce (enforce-banned-dependencies) on project singletonsimple-impl: Some Enforcer rules have fa

ODL(OpenDayLight) 기본 튜토리얼 #5 – DataStore 구현

이번에는 DataStore를 구현해보도록 하겠다. 아래와 같이 단순한 구조로 ODL의 dataStore를 사용하는 방법을 알아보자 역시 가장먼저 구현 해줘야 하는것은 Yang 파일이다. 기존에 만들어놓은 hello.yang 파일을 조금 수정하도록 한다. hello.yang 파일에 아래와 같이 container 를 하나 선언해준다. 123456789101

ODL(OpenDayLight) 기본 튜토리얼 #4 – Notification 구현

ODL에서 사용하는 Notification의 개념은 RPC와 비슷하다고 생각하면 되는데 차이점이 있다면 Notification은 return값이 없다는것이다. 새로운 impl module을 추가하고 폴더명을 notificationService로 변경하고 artifactId 는 notification 로 바꿔준다. 현재 프로젝트 구조는 아래와 같다.