원본 컴파일 설치 EMQX V3.0 서버(MQTT)

4313 단어 사물인터넷
5G 시대, 만물 상호 연결 메시지 엔진!EMQ X(Erlang/Enterprise/Elastic MQTT Broker)는 Erlang/OTP 플랫폼을 기반으로 개발된 소스 사물인터넷 MQTT 메시지 서버입니다.Erlang/OTP는 뛰어난 소프트 실시간(Soft-Realtime), 저연시(Low-Latency), 분산(Distributed) 언어 플랫폼입니다.MQTT는 경량(Lightweight), 게시 구독 모드(PubSub)의 사물인터넷 메시지 프로토콜이다.
 
EMQ X 프로젝트 설계 목표는 이동 단말기 또는 사물인터넷 단말기의 대량의 MQTT 연결을 탑재하고 대량의 사물인터넷 장치 간의 빠른 시간 지연 메시지 루트를 실현하는 것이다.
  • 대규모 MQTT 클라이언트 연결을 안정적으로 탑재하고 단일 서버 노드는 50만에서 100만 연결을 지원합니다..
  • 분포식 노드 집단, 빠른 시간 지연 메시지 루트, 단일 집단은 1000만 규모의 루트를 지원합니다..
  • 메시지 서버 내 확장, 다양한 인증 방식, 백엔드 데이터베이스에 메시지를 효율적으로 저장하는 것을 지원합니다..
  • 전체 사물인터넷 프로토콜 지원, MQTT, MQTT-SN, CoAP, WebSocket 또는 개인 프로토콜 지원..

  •  
    문장 요약
    이 글은 원본 코딩에 EMQX를 설치하고 사용자 정의 플러그인과 함께 mqtt 메시지를 Kafka 메시지 중간부품에 전달해야 한다는 것을 소개합니다.
     
    EMQX 개원 버전을 선택했습니다. 메시지를 Kafka에 영구화하려면 자체적으로 플러그인을 작성해야 합니다. 다행히도 Github에 개원된 kafka 플러그인이 있습니다. V3의 안정적인 버전을 찾아서 kafka 플러그인(현재 3.1 또는 더 높은 버전에 적합하지 않음)을 사용할 수 있습니다. 그래서 우리는 3.0.1 버전을 선택하고 이 버전을 컴파일하여 설치합니다.
     
    Erlang 설치
    EMQ 메시지 서버는 Erlang/OTP 플랫폼을 기반으로 개발되었고 원본 컴파일은 Erlang 환경에 의존합니다.EMQX 3.0은 Erlang 21.3 버전에 의존합니다.
    yum install gcc* glibc-devel makencurses-devel openssl-devel autoconf -y
    yum install unixODBC unixODBC-devel-y
    yum -y install gcc-c++ kernel-develm4 python-simplejson

    설치 패키지 다운로드(버전 번호 21.3 참고)
    wget http://erlang.org/download/otp_src_21.3.tar.gz(80 M, )
    tar -zxvf otp_src_21.3.tar.gz
    cd otp_src_21.3
    ./otp_build autoconf
    ( ssl )
    ./configure --enable-smp-support--enable-threads --enable-sctp --enable-kernel-poll --enable-hipe --with-ssl
    make && make install

    erlang 기본 설치 경로/usr/local/lib/erlang, 검증 버전:
     
    erl

    반환:
    Erlang/OTP 21 [erts-10.3] [source][64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe]
    Eshell V10.3  (abort with ^G)

     
    이전에 다른 Erlang 버전을 설치했다면 새 버전을 설치하기 전에 이전 버전의 설치 디렉터리/usr/local/lib/erlang을 삭제한 후에 새 버전을 설치해야 합니다. 그렇지 않으면 다른 소프트웨어를 설치할 때 컴파일 버전 오류가 발생할 수 있습니다.
     
     
    Rebar 설치(Erlang 개발 빌드 도구)
    설치 의존 rebar (rebar3는 다른 버전임을 주의하십시오)
    git clonegit://github.com/rebar/rebar.git
    cd rebar
    ./bootstrap

    설치 성공
    ==> rebar (compile)
    ==> rebar (escriptize)
    Congratulations! You now have aself-contained script called "rebar" in
    your current working directory. Placethis script anywhere in your path
    and you can use rebar to buildOTP-compliant apps.

    환경 변수 구성
    vi /etc/profile
    export PATH=/emq/rebar/:$PATH (rebar )

    실행 파일:
    source /etc/profile

    설치 성공 여부 테스트
    rebar -V

    다음 프롬프트가 나타나면 설치 성공 증명
    rebar 2.6.4 22 20190625_031823 git2.6.4-39-gb6d3094
     
    rebar3를 설치하면 오류가 발생할 수 있습니다.
    /emq/rebar3/_build/default/lib/erlware_commons/src/ec_plists.erl:834:Warning: erlang:get_stacktrace/0: deprecated; use the new try/catch syntax forretrieving the stack backtrace
    /emq/rebar3/_build/default/lib/erlware_commons/src/ec_plists.erl:836:Warning: erlang:get_stacktrace/0: deprecated; use the new try/catch syntax forretrieving the stack backtrace

    해결 방법:
     https://github.com/ferd/erlware_commons/blob/ad2d57d8b62b86ec1f3d03441f7defa595f2c59c/src/ec_plists.erl ec_plists.erl 。

     
     
    EMQX 3.0.1 설치
    mkdir /emq
    cd /emq
    wget -c https://github.com/emqx/emqx-rel/archive/v3.0.1.tar.gz
    tar -zxvf v3.0.1.tar.gz
    mv emqx-rel-3.0.1 emqx-rel
    cd emqx-rel/
    make( , ; kafka , )

    컴파일 성공, 반환:
    ===> Starting relx build process...
    ===> Resolving OTP Applicationsfrom directories:
              /emq/emqx-rel/deps
              /usr/local/lib/erlang/lib
              /emq/emqx-rel/apps
    ===> Resolved emqx-3.0.1
    ===> Including Erts from/usr/local/lib/erlang
    ===> release successfully created!

     
    EMQ X 시작
    cd _rel/emqx/bin
    ./emqx start   
     
    ./emqx_ctl status   

    EMQX 프로필
    /emq/emqx-rel/_rel/emqx/etc/emqx.conf
    # 
    mqtt.allow_anonymous = false
    #Erlang Process Limit
    node.process_limit = 2097152
    #Sets the maximum number ofsimultaneously existing ports for this system
    node.max_ports = 1048576

     
    자, 여기까지 원본 컴파일링 EMQX 3.0.1을 설치하면 됩니다.

    좋은 웹페이지 즐겨찾기