server-side/haproxy

HAProxy Stat config

C/H 2017. 6. 12. 08:30

Proxy keywords matrix

 keyword                              defaults   frontend   listen    backend
------------------------------------+----------+----------+---------+---------
stats admin                               -          X         X         X
stats auth                                X          X         X         X
stats enable                              X          X         X         X
stats hide-version                        X          X         X         X
stats http-request                        -          X         X         X
stats realm                               X          X         X         X
stats refresh                             X          X         X         X
stats scope                               X          X         X         X
stats show-desc                           X          X         X         X
stats show-legends                        X          X         X         X
stats show-node                           X          X         X         X
stats uri                                 X          X         X         X

stats admin

stats admin { if | unless } <cond>
  Enable statistics admin level if/unless a condition is matched
  조건이 일치할 경우 관리자 수준에서 통계설정을 사용할 수 있다.
  May be used in sections :   defaults | frontend | listen | backend
                                 no    |    yes   |   yes  |   yes

  This statement enables the statistics admin level if/unless a condition ismatched.
  이 명령은 조건이 일치할 경우 통계괸리를 활성/비활성화 할 수 있습니다.??

  The admin level allows to enable/disable servers from the web interface. Bydefault, statistics page is read-only for security reasons.
  관리자는 웹 이터페이스에서 서버를 활성/비활성화 할 수 있다 통계페이지는 보안상 기본적으로 읽기 전용이다.

  Note : Consider not using this feature in multi-process mode (nbproc > 1)unless you know what you do : memory is not shared between the processes, which can result in random behaviours.
  참고 : 작업을 모른는 경우 다중 프로세스 모드(nbproc > 1)을 사용하지 마세요. 프로세스간 메모리가 공유되지 않으므로 임의 동작이 발생할 수 있습니다.

  Currently, the POST request is limited to the buffer size minus the reserved buffer space, which means that if the list of servers is too long, the request won't be processed. 
  현재 POST 요청은 버퍼 크기에서 예약 된 버퍼 공간을 뺀 값으로 제한됩니다. 즉, 서버 목록이 너무 길면 요청이 처리되지 않습니다.
  It is recommended to alter few servers at a time.
  한 번에 몇 개의 서버를 변경하는 것이 좋습니다.

  Example :
    # statistics admin level only for localhost
	# localhost에 대한 통계 관리 수준
    backend stats_localhost
        stats enable
        stats admin if LOCALHOST

  Example :
    # statistics admin level always enabled because of the authentication
	# 인증으로 통계 관리 수준이 항상 활성화.
    backend stats_auth
        stats enable
        stats auth  admin:AdMiN123
        stats admin if TRUE

  Example :
    # statistics admin level depends on the authenticated user
	# 인증 된 사용자에 따라 통계 곤리 수준 적용.
    userlist stats-auth
        group admin    users admin
        user  admin    insecure-password AdMiN123
        group readonly users haproxy
        user  haproxy  insecure-password haproxy

    backend stats_auth
        stats enable
        acl AUTH       http_auth(stats-auth)
        acl AUTH_ADMIN http_auth_group(stats-auth) admin
        stats http-request auth unless AUTH
        stats admin if AUTH_ADMIN

  See also : "stats enable", "stats auth", "stats http-request", "nbproc", "bind-process", section 3.4 about userlists and section 7 about ACL usage.
  참조 : "stats enable", "stats auth", "stats http-request", "nbproc", "bind-process", 섹션 3.4 사용자 목록 및 섹션 7 ACL 사용.

stats auth

stats auth <user>:<passwd>
  Enable statistics with authentication and grant access to an account
  인증으로 통계 사용 및 계정 액세스 권한 부여
  May be used in sections :   defaults | frontend | listen | backend
                                 yes   |    yes   |   yes  |   yes
  Arguments :
    <user>    is a user name to grant access to

    <passwd>  is the cleartext password associated to this user

  This statement enables statistics with default settings, and restricts access to declared users only. 
  이 문은 기본 설정으로 통계를 활성화하고 선언 된 사용자에게만 액세스를 제한합니다.
  It may be repeated as many times as necessary to allow as many users as desired. 
  원하는만큼의 사용자를 허용하기 위해 필요한만큼 반복 될 수 있습니다.
  When a user tries to access the statistics without a valid account, a "401 Forbidden" response will be returned so that the browser asks the user to provide a valid user and password. 
  사용자가 유효한 계정없이 통계에 액세스하려고하면 "401 Forbidden"응답이 반환되므로 브라우저가 유효한 사용자와 암호를 제공하도록 사용자에게 요청합니다.
  The real which will be returned to the browser is configurable using "stats realm".
  브라우저로 반환되는 실제 내용은 "stats 영역"을 사용하여 구성 할 수 있습니다.

  Since the authentication method is HTTP Basic Authentication, the passwords circulate in cleartext on the network. 
  인증 방법은 HTTP 기본 인증이므로 암호는 네트워크의 일반 텍스트로 순환됩니다.
  Thus, it was decided that the configuration file would also use cleartext passwords to remind the users that those ones should not be sensitive and not shared with any other account.
  따라서 구성 파일이 일반 텍스트 암호를 사용하여 사용자에게 민감하지 않아야하며 다른 계정과 공유되지 않아야 함을 사용자에게 알리는 것으로 결정되었습니다.

  It is also possible to reduce the scope of the proxies which appear in the report using "stats scope".
  "통계 범위"를 사용하여 보고서에 나타나는 프록시의 범위를 줄이는 것도 가능합니다.

  Though this statement alone is enough to enable statistics reporting, it is recommended to set all other settings in order to avoid relying on default unobvious parameters.
  이 성명만으로도 통계보고가 가능하지만 기본 모르게 매개 변수에 의존하지 않으려면 다른 모든 설정을 지정하는 것이 좋습니다.

  Example :
    # public access (limited to this backend only)
	# 공용 접근 ( 현재 backend만 해당)
    backend public_www
        server srv1 192.168.0.1:80
        stats enable
        stats hide-version
        stats scope   .
        stats uri     /admin?stats
        stats realm   Haproxy\ Statistics
        stats auth    admin1:AdMiN123
        stats auth    admin2:AdMiN321

    # internal monitoring access (unlimited)
	# 내부 모니터링 액세스 (무제한)
    backend private_monitoring
        stats enable
        stats uri     /admin?stats
        stats refresh 5s

  See also : "stats enable", "stats realm", "stats scope", "stats uri"


반응형

'server-side > haproxy' 카테고리의 다른 글

HAProxy Gateway timeout  (0) 2017.06.15
HATop  (0) 2017.06.13
haproxy log setup  (0) 2017.06.09
HAProxy Mysql 'Reading initial communication packet'  (0) 2017.05.12
HAProxy MySQL replication, cluster  (0) 2017.05.10