ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • WildFly 설치 및 시작
    WAS/WildFly 2025. 6. 30. 19:55

     

    WildFly는 Jakarta EE 및 MicroProfile 표준을 지원하는 모듈형 구조의 고성능 오픈소스 애플리케이션 서버

    유연한 확장성과 빠른 부팅 속도를 제공합니다.

     

    Red Hat이 주도하며, 클라우드 네이티브 환경과 대규모 엔터프라이즈 시스템 모두에 적합한 미들웨어 플랫폼

     

     

     

     


    📥  공식 사이트에서 다운로드

    • WildFly Downloads에서 최신 ZIP 파일을 받습니다.
    • 적절한 위치에 압축 해제 후 환경 변수 설정
    #=============================================================
    # COMMON ENV                                            @KIOR
    #=============================================================
    umask 077
    EDITOR=vi
    export EDITOR
    set -o vi
    export PS1="[\$LOGNAME@`hostname`:\$PWD]$ "
    export JAVA_HOME=/sw/java
    export PATH=$JAVA_HOME/bin:$PATH
    #=============================================================
    # WildFly ENV                                             @KIOR
    #=============================================================
    export JBOSS_HOME=/sw/wildfly
    export WILDFLY_LOG_HOME=${JBOSS_HOME}/logs
    export PATH="${PATH}:${JBOSS_HOME}/bin"
    #=============================================================
    # WILDFLY Alias                                           @KIOR
    #=============================================================
    alias whome='cd ${JBOSS_HOME}'
    alias wcfg='cd ${JBOSS_HOME}/standalone/configuration'
    #alias wcfg='cd ${JBOSS_HOME}/domain/configuration'
    alias wbin='cd ${JBOSS_HOME}/bin'
    alias wlog='cd ${WILDFLY_LOG_HOME}'
    alias pp='ps -ef | grep '
    alias vi='vim'
    # Linux 환경에서 바로 설치파일 Donwload
    curl -L -O https://github.com/wildfly/wildfly/releases/download/34.0.1.Final/wildfly-34.0.1.Final.tar.gz

     

     

    ⚙️ WildFly 환경변수

    WildFly 부트 스트랩 스크립트(standalone.sh/domain.sh)가 인식하는 대표 환경 변수를 정리 😊
    필요한 항목만 설정하고 나머지는 스크립트 옵션(-c, -b, --debug)으로 조정하는 것을 권장합니다.

     

    변수명 용도 / 효과 주 사용 상황
    JBOSS_HOME
    (또는 WILDFLY_HOME)
    WildFly 설치 경로 지정
    미설정 시 스크립트가 자동 추론
    설치 디렉터리 이동·심볼릭링크로 실행
    JAVA_HOME
    (또는 JAVA)
    실행할 JDK 지정 여러 JDK 버전이 공존할 때 (JDK 17 권장)
    JAVA_OPTS JVM 옵션 덮어쓰기 -Xmx2g, GC 옵션, 시스템 프로퍼티 설정
    JAVA_OPTS_PREPEND
    JAVA_OPTS_APPEND
    내장 옵션 앞/뒤로 붙이기 충돌 없이 특정 옵션만 추가
    JBOSS_MODULEPATH 추가 모듈 경로 커스텀 모듈 테스트·패치
    JBOSS_SERVER_CONFIG 기본 standalone.xml 대신 사용할 설정 파일 서비스 유닛에서 standalone-full-ha.xml 고정
    JBOSS_BIND_ADDR*
    (_MANAGEMENT, _PRIVATE)
    IP 바인딩 일괄 지정 컨테이너·다중 NIC 환경
    LAUNCH_JBOSS_IN_BACKGROUND 콘솔 점유 없이 백그라운드 실행(UNIX) 간단 데몬화
    JBOSS_PIDFILE PID 파일 경로 지정 init 스크립트 / 헬스 체크
    JBOSS_CONSOLE_LOG
    JBOSS_LOG_DIR
    콘솔 로그 파일·로그 디렉터리 Filebeat 등 로그 수집
    JBOSS_BOOT_LOGGER_LEVEL 부팅 로깅 레벨(예: DEBUG) 트러블슈팅
    JPDA = true 8787 포트 원격 디버깅 열기 IDE 연동 디버

     

     

    Java SE 버전

    지원되는 WildFly 버전

    (표준 배포판 기준)

    비고
    8 (LTS 2015) WildFly 10 → 26.1.x
    (최종 지원 = 26.1.2.Final)
    26.1 릴리스까지 SE 8/11/17 모두 인증 완료 (26.1 Release Notes) 
    WildFly 27부터 SE 8 지원 중단
    11 (LTS 2018) WildFly 23 → 34.x WildFly 34 표준판은 11·17·21 모두 호환 
    WildFly 35부터 SE 11 지원 중단 (공식 블로그 발표) 
    17 (LTS 2021) WildFly 26.1 이상
    (35+ 최소 요구 버전)
    26.1에서 초기 공식 인증 후 지속 지원 (26.1 Release Notes) 
    WildFly 35 이후는 SE 17 또는 21 운영 권장 (블로그 안내) 
    21 (LTS 2023) WildFly 31 (Core Profile)  (인증 진행 중)

     


     

     

     

    🖥️ 서버 실행 방법

    ✅ Standalone 모드

    단일 인스턴스로 실행하는 기본 모드입니다.

    ${JBOSS_HOME}/bin/standalone.sh -b 0.0.0.0 -bmanagement 0.0.0.0
    ✅ Domain 모드

    여러 서버를 Domain Controller에서 통합 관리하는 모드입니다.

    ${JBOSS_HOME}/bin/domain.sh -b 0.0.0.0 -bmanagement 0.0.0.0

     

     

    ※ 설정 파일을 바꾸고 싶다면 아래처럼 실행하세요.
    $ ./standalone.sh -c standalone-full-ha.xml

     

    🚨 주의 🚨

    # WildFly36.0.0.1
    # Java 11.0.0.2
    Caused by: java.lang.UnsupportedClassVersionError: Failed to link org/jboss/as/clustering/infinispan/subsystem/InfinispanExtension (Module "org.jboss.as.clustering.infinispan" version 36.0.1.Final from local module loader @6e1d8f9e (finder: local module finder @3e34ace1 (roots: /sw/wildfly/modules,/sw/wildfly/modules/system/layers/base))): org/jboss/as/clustering/infinispan/subsystem/InfinispanExtension has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0

     

    JVM이 클래스 파일을 읽다 버전이 높아 예외(UnsupportedClassVersionError)를 던지고, 모듈 로딩이 실패하여 부팅이 중단됨.

    • 55 → Java 11
    • 61 → Java 17
    • 65 → Java 21

     

     

     

    🔐 관리 콘솔 접속

    초기에는 관리용 사용자 계정이 없으므로 아래 명령어로 생성해야 합니다.

    $ $JBOSS_HOME/bin/add-user.sh
    • 유형 선택 시 a → Management User
    • 사용자 이름과 비밀번호 입력

    이후 http://localhost:9990 으로 접속하면 관리 콘솔에 로그인할 수 있습니다.


     

     

     

    ⌨️ CLI 접속

    CLI(Command Line Interface)를 통해 WildFly를 명령어 기반으로 제어할 수 있습니다.

    $JBOSS_HOME/bin/jboss-cli.sh --connect
    📌 주요 명령 예시
    [standalone@localhost:9990 /] version
    [standalone@localhost:9990 /] deployment list
    [standalone@localhost:9990 /] shutdown

    자동화를 위해 --file=myscript.cli 옵션을 통해 CLI 스크립트를 실행할 수도 있습니다.

     

    ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
    ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
    ⠀⠀⠀⠀⢰⣶⠀⠀⢠⣶⡖⠀⢀⣠⣴⣶⣶⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣶⣶⣦⣄⠀⠀⠀⠀⠀⠀⠀
    ⠀⠀⠀⠀⢸⣿⠀⣰⣿⠋⠀⢠⣾⡟⠉⠀⠈⢻⣿⡄⠀⠀⠀⠀⠀⠀⣰⣿⠏⠁⠀⠙⢿⣷⠀⠀⠀⠀⠀⠀
    ⠀⠀⠀⠀⢸⣿⣼⣿⠁⠀⠀⢸⣿⠀⠀⠀⠀⠀⣿⡇⠀⠀⠀⠀⠀⠀⣿⣿⠀⠀⠀⠀⢸⣿⡇⠀⠀⠀⠀⠀
    ⠀⠀⠀⠀⢸⣿⠈⢻⣷⡄⠀⠸⣿⣆⠀⠀⠀⢠⣿⡇⠀⠀⠀⠀⠀⠀⢿⣿⡀⠀⠀⠀⣸⣿⠃⠀⠀⠀⠀⠀
    ⠀⠀⠀⠀⢸⣿⠀⠀⠹⣿⣆⠀⠙⢿⣷⣶⣾⡿⠋⠀⠀⠀⠀⠀⠀⠀⠈⠻⢿⣶⣶⣾⠿⠃⠀⠀⠀⠀⠀⠀
    ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣤⣤⣤⣤⡄⠀⠀⠀⠀
    ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
    
    bash-5.1# su - wildfly
    Last login: Mon Jun 30 10:45:46 UTC 2025 on pts/2
    [wildfly@wildfly:/home/wildfly]$ jboss-cli.sh --connect
    [domain@localhost:9990 /] version
    JBoss Admin Command-line Interface
    JBOSS_HOME: /sw/wildfly
    Release: 26.0.1.Final
    Product: WildFly 34.0.1.Final
    JAVA_HOME: /sw/java
    java.version: 11.0.0.2
    java.vm.vendor: Oracle Corporation
    java.vm.version: 11.0.0.2+2-2
    os.name: Linux
    os.version: 6.10.14-linuxkit
    
    [domain@localhost:9990 /] deployment list

     

     

     

    📝 마무리

    이제 WildFly를 직접 설치하고 실행할 수 있게 되었습니다!

    WildFly는 쉬운듯 어려운 미들웨어 인거 같습니다.

    넓은 확장성을 제공하지만 이에 따른 이용자의 이해도가 뒷받침이 되야 합니다.

     

     

    'WAS > WildFly' 카테고리의 다른 글

    WildFly Session Clustering on Kubernetes  (8) 2025.07.07
    WildFly 기본 개념 이해  (4) 2025.06.30
Designed by Tistory.