퓨즈 란?

JBoss Fuse는 Redhat의 오픈 소스 ESB 솔루션입니다. 커뮤니티 프로젝트 인 Apache Servicemix를 기반으로하는 엔터프라이즈 솔루션입니다.

퓨즈에 통합

JBoss Fuse는 엔터프라이즈 애플리케이션을 신속하게 통합 할 수있는 가볍고 유연한 통합 플랫폼입니다.

Fuse는 처음에 2012 년 Redhat에 인수 된 Progressive software Inc.에서 개발했습니다. JBoss Fuse 6.1.0.redhat-379 GA는 공식 웹 사이트에서 다운로드 할 수있는 안정적인 버전의 Fuse입니다.

건축물

Fuse는 다양한 기술을 단일 제품으로 결합합니다.

구성품

Apache CXF

Apache CXF는 SOAP 및 Rest 웹 서비스 개발도 지원하는 오픈 소스 웹 서비스 개발 프레임 워크입니다.

Apache Camel

Apache Camel은 EIP 기반 통합 프레임 워크입니다. EIP 또는 엔터프라이즈 통합 패턴은 엔터프라이즈 통합에서 반복되는 문제에 대한 식별 된 솔루션입니다. 이러한 사전 정의 된 즉시 사용 가능한 패턴의 조합을 통해 완벽한 통합 솔루션을 실현할 수 있습니다.

Java, Spring DSL 및 Scala 등과 같은 여러 도메인 특정 언어로 라우팅 논리를 작성할 수 있습니다.

Apache AMQ

Apache AMQ는 JMS 표준에 따라 안정적인 메시징 시스템을 제공하는 JMS입니다. JMS 사양을 지원할뿐만 아니라 JMS 사양에 포함되지 않은 흥미롭고 유용한 기능도 제공합니다.

Apache Karaf

Apache Karaf는 아티팩트의 런타임 역할을하는 경량 OSGi 컨테이너입니다. Apache Karaf는 JVM에 비해 본질적으로 더 동적입니다. 런타임에 모듈을 설치하거나 제거 할 수 있습니다. Fuse의 모든 아티팩트는 Karaf에 배포됩니다.

구조

Fabric은 대규모 분산 환경에서 아티팩트 배포를 쉽게 관리 할 수있는 방법을 제공합니다. 모든 다중 퓨즈 인스턴스에 대한 중앙 집중식 관리를 제공합니다.

퓨즈 설치

퓨즈 설치는 아주 간단합니다. 다른 JBoss 제품과 마찬가지로 Fuse는 압축을 풀 수있는 zip 파일로 제공되며 일부 사소한 구성 변경 후 직접 시작할 수 있습니다.

퓨즈 설치는 4 단계 과정입니다.

다운로드

다음 링크에서 Fuse 6.1.0 GA를 다운로드하십시오. http://www.jboss.org/

압축 해제

다른 모든 JBoss 제품과 마찬가지로 Fuse는 플랫폼 독립적 인 zip입니다.

Fuse 설치 디렉토리로 사용할 대상 디렉토리에 다운로드 한 파일의 압축을 풉니 다. 이 디렉토리는 Fuse 인스턴스의 수명 동안 동일하게 유지되어야하므로 현명하게 선택하십시오.

Note − Fuse가 다른 JBoss 제품처럼 압축을 풀고 시작하더라도 설치가 완료된 후 Fuse 설치를 한 위치에서 다른 위치로 이동하지 않는 것이 좋습니다.

구성

퓨즈의 압축을 풀면 압축을 푼 디렉토리에서 다음 디렉토리를 찾을 수 있습니다.

  • bin
  • etc
  • deploy
  • lib
  • licenses
  • extras
  • quickstarts

그 중에서 우리는 두 개의 디렉토리 만 사용할 것입니다. bin & etc.

사실상 퓨즈를 추출한 후 퓨즈를 직접 시작할 수 있어야하지만 프로덕션 환경에는 권장되지 않는 모든 기본 구성으로 퓨즈가 시작됩니다. 퓨즈를 시작하기 전에 다음 변경을 수행하는 것이 좋습니다.

환경 변수 설정

  • 다음 환경 변수를 설정하십시오- JAVA_HOME

  • 변수는 자바 설치 디렉토리를 가리켜 야합니다- M2_HOME

  • 변수는 Maven 설치 디렉토리를 가리켜 야합니다. PATH

  • Java 및 Maven 실행 파일을 포함하도록 경로 변수를 설정합니다.

윈도우

Windows에서는 아래의 지침에 따라 설정을 수행 할 수 있습니다.

시작 → 내 컴퓨터 → 오른쪽 클릭 → 속성 → 고급 시스템 설정 → 환경 변수.

UNIX 및 클론

각 사용자에 대해 bash 프로필이 *nix운영체제. 이 파일을 변경하여 기존 시스템 변수를 추가하거나 편집 할 수 있습니다.

$ vi ~/.bash_proflle

Note−이 파일의 모든 변경 사항은 영구적입니다. 원본을 변경하기 전에 기존 파일을 백업하는 것이 좋습니다.

기본 구성

JBoss Fuse의 기본 구성에 대해 논의하고이를 위해 다음 명령으로 시작해야합니다. Edit $FUSE_INSTALLATION_DIR/etc/

  • user.properties

    • #admin=admin,admin

    • 이것은 우리가 원하는 사용자 이름을 가진 첫 번째 관리자, 암호를 가진 두 번째 관리자에 따라 변경되어야합니다. 세 번째는 역할을 나타내며 제거하는 것을 잊지 않기 때문에 그대로 유지할 수 있습니다.

    • 예 : FuseAdmin = FusePAss, admin

  • System.properties

    • karafName = 루트

      • Karaf 인스턴스에 부여 할 이름을 나타냅니다.

      • Cont1처럼 원하는 이름을 지정할 수 있습니다.

      • 제공하는이 이름이 고유 한 이름이고 다른 Fuse 인스턴스에서 이미 사용되고 있지 않은지 확인하십시오.

  • org.ops4j.pax.web.cfg

    • Org.osgi.service.http.port = 8181

    • 이 속성은 Fuse에서 제공하는 브라우저 기반 인터페이스 HAWTIO에 액세스하는 데 사용할 포트를 나타냅니다.

    • HAWTIO는 6.0 이상에서 사용할 수있는 Fuse에 대한 내장 브라우저 인터페이스입니다.

  • org.ops4j.pax.url.mvn.cfg

    • org.ops4j.pax.url.mvn.localRepository = D : / repository

    • 이 속성은 Fuse가 아티팩트를 설치할 Maven의 localRepository 경로를 나타냅니다.

    • org.ops4j.pax.url.mvn.settings = D : /Maven/conf/settings.xml

    • 이 속성은 Fuse가 Maven에서 아티팩트를 가져 오는 데 사용해야하는 settings.xml을 나타냅니다.

Maven 구성

Maven은 Fuse를 설치하기위한 전제 조건입니다. maven이 무엇인지 모르는 경우 참조하십시오http://www.tutorialspoint.com/maven/

Maven은 Fuse 아티팩트를 빌드하는 데 사용되는 빌드 도구입니다. Fuse는 먼저 아티팩트 설치 명령을 실행할 때 Maven 로컬 저장소에서 아티팩트를 검색합니다. 따라서 Fuse에 Maven이 설치된 위치와 Maven의 로컬 저장소 경로를 알려야합니다.

$ FUSE_INSTALLATION_DIR / etc / 편집org.ops4j.paxurl.mvn.cfg

다음 두 속성 업데이트-

  • org.ops4j.pax.url.mvn.settings = $ M2_HOME / conf /settings.xml
  • org.ops4j.pax.url.mvn.localRepository = $ local_repo

Note − 변경하십시오 $local_repo Mavens settings.xml에 언급 된 로컬 저장소의 실제 경로를 사용합니다.

운영

기본 구성 변경을 수행 한 후 이제 Fuse를 시작할 수 있습니다. Fuse와 함께 작동하는 모든 바이너리 파일은 다음 위치에 있습니다.$FUSE_INSTALLATION_DIR.

Fuse를 시작하는 방법은 두 가지가 있습니다.

  • 사용 ./fuse

    • 이렇게하면 Fuse를 시작한 동일한 창에서 모든 진행 상황과 로그를 볼 수 있습니다.

    • 아래와 같은 터미널에서 Karaf 콘솔을 제공합니다.

Note− 콘솔 모드에서 퓨즈가 시작됩니다. 즉, 사용자가 세션에서 로그 아웃하거나 생산 또는 개발 시나리오에서 바람직하지 않은 터미널을 닫을 때 퓨즈 프로세스도 중지됩니다. 이 스크립트는 퓨즈 디버깅에만 사용해야합니다.

  • 사용 ./start

    • 진행 상황이 아닌 화면에 로그가 표시되지 않지만 백그라운드에서 Fuse가 시작되고 사용자가 세션을 종료하거나 터미널을 닫을 때 Fuse 서비스가 중지되지 않습니다.

    • 실제 응용 프로그램에서는 이러한 유형의 동작이 필요합니다. 터미널을 닫아도 퓨즈는 백그라운드에서 실행되어야합니다.

    • 백그라운드에서 실행되는 Fuse에 연결하려면 다음을 사용할 수 있습니다. client 같은 폴더에있는 스크립트.

    • 다음 스크린 샷과 같이 표시되어야합니다.

    • 클라이언트 스크립트를 종료해도 Fuse 서비스가 중지되지 않습니다. 퓨즈 콘솔을 닫습니다.

HAWTIO

Fuse는 또한 FMC (Fuse 관리 콘솔)를 사용하여 완전한 GUI 액세스를 제공합니다. 아래 URL에서 GUI를 찾을 수 있습니다.http://localhost:8181.

명령을 실행하여 수행 한 모든 작업은이 브라우저 기반 GUI에 액세스하여 수행 할 수도 있습니다. 컨테이너가 두 개 이상 있고 Fabric 환경에서 실행중인 경우 매우 유용합니다.