AWSにkongをインストールする手順 | 瀬戸内の雲のように

AWSにkongをインストールする手順

Posted: 2019-02-23


スポンサーリンク

目次

はじめに

APIゲートウェイ と言うのは、複数のAPIをまとめたり、APIに特化した機能をもつソフトウェアやサービスのことです。
この手の製品で有名なのは ApigeeAWSのAPIゲートウェイ ですが、オープンソースのものもあります。

それが今回ご紹介する Kong と言うアプリケーションです。(公式ページは こちら )

私は業務ではApigeeを使うことが多いのですが、他のも知っとこうと思い今回Kongを使ってみましたのでその手順をメモします。

 

環境

  • Amazon EC2
  • Amazon Linux 2 AMI (HVM), SSD Volume Type

手順概要

公式の手順 を参考にインストールを行います。

流れとしては以下のようになります。

①epelリポジトリの設定
②postgresqlのインストール・初期設定
③kongのインストール・初期設定

 

手順1. epelリポジトリの設定

まずepelをインストールします。
詳細は こちらの記事 にまとめていますので参考まで。

amazon-linux-extras install epel

 

手順2. postgresqlのインストール・初期設定

こちらの記事: Amazon linux2にpostgresqlをインストールする手順にまとめておりますので参照ください。

 
上記手順実施後、kong用の初期設定を行います。
まずはpostgresに接続します。

$ sudo su - postgres
$ psql -U postgres
postgres=#

接続できたらkongのユーザ、DBを作成します。postgresのCLIで以下コマンドを実行します。

CREATE USER kong; CREATE DATABASE kong OWNER kong;

 
次に、postgresqlの認証の設定を変更します。
詳細は こちらの記事 にも書いてありますが、この手順を行わないと初期設定に失敗して結構はまります。。

vim /var/lib/pgsql/data/pg_hba.conf

 
以下の部分(80行目付近)を修正します。内容は peer , ident となっている部分を trust に変更するというものです。

変更前

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer   
# IPv4 local connections:
host    all             all             127.0.0.1/32            ident

変更後

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
#####local   all             all                                     peer  # ←ここをコメントアウト
local   all             all                                     trust            # ←ここを追記
# IPv4 local connections:
######host    all             all             127.0.0.1/32            ident # ←ここもコメントアウト
host    all             all             127.0.0.1/32            trust    # ←ここも追記

 
設定変更後、postgresを再起動します。

systemctl restart postgresql.service
# ←何も表示されなければOK

これでpostgresqlの設定は完了です。

 

手順3. kongのインストール

いよいよ本題、kongのインストールです。

こちらはyumでインストールします。

yum install https://bintray.com/kong/kong-community-edition-aws/download_file?file_path=dists/kong-community-edition-1.0.2.aws.rpm  --nogpgcheck

以下のような結果が得られればOKです。

Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
kong-community-edition-1.0.2.aws.rpm                                                                                                                                                 |  16 MB  00:00:01
Examining /var/tmp/yum-root-cyCtXA/kong-community-edition-1.0.2.aws.rpm: kong-community-edition-1.0.2-1.noarch
Marking /var/tmp/yum-root-cyCtXA/kong-community-edition-1.0.2.aws.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package kong-community-edition.noarch 0:1.0.2-1 will be installed
--> Processing Dependency: openssl098e for package: kong-community-edition-1.0.2-1.noarch
amzn2-core                                                                                                                                                                           | 2.4 kB  00:00:00
amzn2extra-docker                                                                                                                                                                    | 1.3 kB  00:00:00
amzn2extra-epel                                                                                                                                                                      | 1.3 kB  00:00:00
epel/x86_64/metalink                                                                                                                                                                 | 7.4 kB  00:00:00
epel                                                                                                                                                                                 | 4.7 kB  00:00:00
157 packages excluded due to repository priority protections
--> Running transaction check
---> Package openssl098e.x86_64 0:0.9.8e-29.amzn2.3.2 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

============================================================================================================================================================================================================
 Package                                            Arch                               Version                                          Repository                                                     Size
============================================================================================================================================================================================================
Installing:
 kong-community-edition                             noarch                             1.0.2-1                                          /kong-community-edition-1.0.2.aws                              47 M
Installing for dependencies:
 openssl098e                                        x86_64                             0.9.8e-29.amzn2.3.2                              amzn2-core                                                    803 k

Transaction Summary
============================================================================================================================================================================================================
Install  1 Package (+1 Dependent package)

Total size: 48 M
Total download size: 803 k
Installed size: 49 M
Is this ok [y/d/N]: y
Downloading packages:
openssl098e-0.9.8e-29.amzn2.3.2.x86_64.rpm                                                                                                                                           | 803 kB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : openssl098e-0.9.8e-29.amzn2.3.2.x86_64                                                                                                                                                   1/2
  Installing : kong-community-edition-1.0.2-1.noarch                                                                                                                                                    2/2
  Verifying  : openssl098e-0.9.8e-29.amzn2.3.2.x86_64                                                                                                                                                   1/2
  Verifying  : kong-community-edition-1.0.2-1.noarch                                                                                                                                                    2/2

Installed:
  kong-community-edition.noarch 0:1.0.2-1

Dependency Installed:
  openssl098e.x86_64 0:0.9.8e-29.amzn2.3.2

Complete!

 
インストールが完了したら、次に初期設定を行います。
以下コマンドを実行します。

まず、kongのunixユーザを作成します。(rootで実行してください)

useradd -d /home/kong -s /bin/bash -m kong

 
作成が完了したらsuします

su - kong
$

 
次に初期設定のコマンドを実行します。

kong migrations bootstrap

 
このコマンドでエラーが出なければ起動します。

kong start

特にエラーが出なければ起動完了です。
 

手順4. 確認

kongはkong自体の設定もAPIで行いますので、APIで設定を取得できます。
ですので応答が返ってくればkongのインストール成功です。

以下コマンドで確認します。

curl -X GET http://localhost:8001

 
以下のような結果が返ってくればOKです。

{"plugins":{"enabled_in_cluster":[],"available_on_server":{"response-transformer":true,"oauth2":true,"acl":true,"correlation-id":true,"pre-function":true,"jwt":true,"cors":true,"ip-restriction":true,"basic-auth":true,"key-auth":true,"rate-limiting":true,"request-transformer":true,"http-log":true,"file-log":true,"hmac-auth":true,"ldap-auth":true,"datadog":true,"tcp-log":true,"zipkin":t
~~~以下略~~~

以上となります。


スポンサーリンク




コメント一覧

2021/04/08 01:48:32

tyncさん

In the event you aren fresh into the GRE format, then youd most likely be aware the GRE commences using all the Analytical Writing Assessment (AWA) or also the GRE scoring department. ... indeed documents aren't a portion of one's whole GRE rating and also are rather disoriented on another scale outside of 6.0 at increment of 0.5. https://lavocatdelaterreur.com/i-would-like-to-buy-custom-essay-online-how-can-i-do-that/



コメントを投稿する


お名前


コメント内容





TOP back