Kong 설치 및 Nginx 설정 최적화 조정

25215 단어
시간 기록: 2019 - 6 - 25 kong 은 마이크로 서비스 API 게 이 트 웨 이 플랫폼 으로 내부 에 nginx 가 통합 되 어 있 지만 기본 설정 이 좋 지 않 아 부하 균형 을 이 룰 때 최대 성능 을 발휘 하지 못 합 니 다. kong 은 사용자 정의 nginx 설정 을 지원 합 니 다. 최근 에 kong 의 시작 최적화 와 관련 프로필 의 로드 과정 을 알 고 기록 하고 있 습 니 다.이 글 은 몇 가지 요약 을 하 겠 습 니 다. kong 의 설치, kong 의 시작 1: kong 의 설치 kong 공식 설치 튜 토리 얼 링크 입 니 다. 저 는 centos 를 선택 하여 설치 합 니 다. kong 의 시작 은 데이터 베 이 스 를 사용 할 수도 있 고 데이터 베 이 스 를 사용 하지 않 을 수도 있 습 니 다. 여기 서 저 는 데이터 potsql (postgres) 을 선택 하여 먼저 kong 을 설치 합 니 다.
sudo yum update -y
sudo yum install -y wget
wget https://bintray.com/kong/kong-rpm/rpm -O bintray-kong-kong-rpm.repo
export major_version=`grep -oE '[0-9]+\.[0-9]+' /etc/redhat-release | cut -d "." -f1`
sed -i -e 's/baseurl.*/&\/centos\/'$major_version''/ bintray-kong-kong-rpm.repo
sudo mv bintray-kong-kong-rpm.repo /etc/yum.repos.d/
sudo yum update -y
sudo yum install -y kong

메모: 위 절 차 는 yum 의 repo 원본 을 설정 하 는 것 입 니 다. bintray - kong - kong - rpm. repo 파일 을 생 성 한 다음 에 설치 할 때 해당 하 는 파일 을 찾 습 니 다.
/etc/yum.repos.d/bintray-kong-kong-rpm.repo

yum 사용 중 에 발생 한 문제: 저 는 vmware 의 centos 7 가상 컴퓨터 를 사용 한 다음 에 yum 알림 인증서 가 만 료 되 었 습 니 다. 가상 컴퓨터 의 시스템 시간 이상 으로 인해 시스템 의 시간 을 date - s XXX 로 조정 하면 됩 니 다.https 인증서 인증 절 차 를 연구 하고 postgres postgres 공식 설치 튜 토리 얼 링크 를 설치 할 수 있 습 니 다.
yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
yum install postgresql95
/*            ,     postgresql95-setup    ,     */
yum install postgresql95-server
/*      ,                ,            ,   /var/lib/pgsql/9.5/data/   */
/usr/pgsql-9.5/bin/postgresql95-setup initdb 
systemctl enable postgresql-9.5 
systemctl start postgresql-9.5

kong 사용자 와 kong 데이터베이스 만 들 기
su postgres
psql
create role kong login;
create database kong owner kong;

만 든 데이터베이스 와 사용자 보기
\du
 Role name |                         Attributes                         | Member of 
-----------+------------------------------------------------------------+-----------
 kong      |                                                            | {}
 postgres  | Superuser, Create role, Create DB, Replication, Bypass RLS | {}

\l
                                  List of databases
   Name    |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges   
-----------+----------+----------+-------------+-------------+-----------------------
 kong      | kong     | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | 
 postgres  | postgres | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | 
 template0 | postgres | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
 template1 | postgres | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
(4 rows)


종료 \ \ q exit 메모: 사용자 이름과 데이터 베 이 스 는 kong 이 어야 하 며 로그 인 권한 으로 kong 을 시작 해 야 합 니 다.
 kong migrations bootstrap
 kong start

2: kong 의 시작 설정 kong 의 설정 은 주로 GENERAL, NGINX, DATASTORE, DATASTORE CACHE, DNS RESOLVER, TUNING & BEHAVIOR, DEVELOPMENT & MISCELLANEOUS 로 나 뉜 다.
kong. conf. default kong 의 시작 프로필 은 / etc / kong / kong. conf. default 에서 kong 의 lua 스 크 립 트 로 생 성 되 었 습 니 다. (lua 위치 / usr / local / share / lu / 5.1 / kong /) 에서 conf 파일 을 수 동 으로 수정 하 는 것 은 소 용이 없습니다. 다시 시작 하면 바로 덮어 씁 니 다.
nginx. conf 는 설 정 된 kong. conf. default 파일 로 대응 하 는 nginx. conf 파일 을 생 성하 기 때문에 이 파일 은 수 동 으로 수정 해도 덮어 씁 니 다.
kong 의 시작 은 – nginx - conf - c 두 개의 매개 변 수 를 제공 하여 설정 파일 을 지정 할 수 있 습 니 다.
사용자 정의 kong. conf. default 파일 은 같은 폴 더 에서 원본 파일 을 복사 하고 열 면 수정 할 내용 을 찾 아 삭제 합 니 다 \ # 를 찾 은 후 내용 을 수정 하면 됩 니 다. 구체 적 인 값 수정 은 공식 문서 (설정 매개 변수 링크) 를 참고 하 십시오.
cp /etc/kong/kong.conf.default /etc/kong/kong.conf
------------------------------------------------------------------------------------------------------------------------------
nginx_worker_processes = 1   # Determines the number of worker processes
                                 # spawned by Nginx.
                                 #
                                 # See http://nginx.org/en/docs/ngx_core_module.html#worker_processes
                                 # for detailed usage of the equivalent Nginx
                                 # directive and a description of accepted
                                 # values.
        

사용자 정의 nginx. conf 파일 새 파일 customnginx. template 는 kong 디 렉 터 리 아래 nginx. conf 위치 입 니 다.
/usr/local/kong/custom_nginx.template
  nginx.conf    custom_nginx.template,         ,  nginx   
------------------------------------------------------------------------------------------------------------------------------
# ---------------------
# custom_nginx.template
# ---------------------

worker_processes 1; # can be set by kong.conf
daemon on;                     # can be set by kong.conf

pid pids/nginx.pid;                      # this setting is    
error_log logs/error.log notice; # can be set by kong.conf

events {
    use epoll; # custom setting
    multi_accept on;
}

http {
    # include default Kong Nginx config
    include 'nginx-kong.conf';

    
}
       

나머지 설정 은 설명 하지 않 습 니 다. 여기 서 저 는 nginx 의 설정 을 위주 로 합 니 다. 구체 적 인 설정 매개 변 수 는 nginx 공식 핵심 매개 변수 설정 설명 과 같 습 니 다.
/---main-----/
worker_processes 2; //               
worker_cpu_affinity 01 10; //               ,0   ,1  ,     
thread_pool name threads=number [max_queue=number]; //                           ,  32      65536 
timer_resolution interval; //             ,    gettimeofday()       。     ,gettimeofday()             。    ,gettimeofday()         interval。
worker_rlimit_core size; //   worker           
worker_rlimit_nofile number; //             
daemon on | off; //   nginx          ,         

/---events-----/
use epoll; 
multi_accept on/off; //                  。                 
accept_mutex on/off; //                ,             ,    ,          
worker_connections  102400;//             
accept_mutex_delay 500; // accept_mutex  ,                    ,                     ,  500  (          )
worker_aio_requests number;

기본 적 인 설치 와 설정 은 위 와 같 고 나머지 내용 은 코드 를 깊이 이해 해 야 한다.시간 기록: 2019 - 6 - 25

좋은 웹페이지 즐겨찾기