こんにちは、エンジニアのリリアンです。
前回の記事では、CentOS7でKamailioの構築手順を説明させていただきました。
今回は、Kamailioサーバーに設定を行い、確認手順をご紹介します。
前提条件
- Kamailioの構築が完了
- Kamailio設定ファイルを編集済み
- サーバー起動中
Kamailio設定
Kamailioサーバーを設定するため、いろんなツールを使えます。
こちらは、デフォルトツールkamctlを使って、サーバー設定を行います。
dispatcher設定
dispatcherモジュールはSIPロードバランサーの機能を提供し、SIP traffic dispatcherとして使用できます。
まず、dispatcherの配送先を追加し、dispatcherグループをkamailio.cfgで1に指定します。
- kamctl dispatcherを実行するときに、mysqlのパスワードを求めるので、 /etc/kamailio/kamctlrcでDBRWPWを確認できます 。
1 2 3 4 5 6 7 8 9 10 11 |
→ Kamailio dispatcherコマンド: # dispatcher add <setid> <destination> [flags] [priority] [attrs] [description] # sudo kamctl dispatcher reload → サーバー01のIPを入力。例: # sudo kamctl dispatcher add 1 sip:101.101.101.101:5060 0 0 '' 'server01' → サーバー02のIPを入力。例: # sudo kamctl dispatcher add 1 sip:102.102.102.102:5060 0 0 '' 'server02' # sudo kamctl dispatcher reload |
dispatcherの設定が完了すれば、状態を確認します。
1 |
sudo kamctl dispatcher dump |
疎通状態一覧:
Flag値 | 説明 | |
AP | Active Probing | Destination is responding to pings & is up |
IP | Inactive Probing | Destination is not responding to pings and is probably unreachable |
DX | Disabled & Not Probing | Destination is disabled (administratively down) |
AX | Active & Not Probing | Looks like is up or is coming up, but has yet to satisfy minimum thresholds to be considered up (ds_inactive_threshold) |
TX | Looks like or is, down. Has stopped responding to pings but has not yet satisfied down state failed ping count (ds_probing_threshold) |
レジスト認証
番号ごとにIDとパスワードでレジスト認証する場合、uacのremote registerationを設定します。
*認証不要な場合、このセクションをスキップします。
1 2 3 4 5 6 |
mysql -uroot -e "USE kamailio;INSERT INTO uacreg VALUES (id,'USERNAME','USERNAME','LOCAL_DOMAIN','USERNAME','CARRIER_DOMAIN','asterisk','USERNAME','PASSWORD','','sip:CARRIER_DOMAIN:5060',3600,0,0,'');" sudo kamcmd uac.reg_reload → uacの状態確認: sudo kamcmd uac.reg_dump |
*diff_expiresに値がある場合、REGISTERできています。
割合変更
rweightの割合を変更することで、配分の割合を変更できます。
1 2 3 4 5 6 7 8 9 10 |
# mysql -ukamailio -pkamailiorw kamailio → 割合確認: MariaDB [kamailio]> select * from dispatcher; → rweight割合変更。例: MariaDB [kamailio]> UPDATE dispatcher SET attrs='rweight=50' WHERE description='server01'; MariaDB [kamailio]> UPDATE dispatcher SET attrs='rweight=50' WHERE description='server02'; MariaDB [kamailio]> select * from dispatcher; MariaDB [kamailio]> exit; |
変更完了すれば、必ずdispatcherを再起動します。
1 |
# sudo kamctl dispatcher reload |
まとめ
以上、Kamailioのサーバーでdispatcherと割合設定を簡単に紹介いたしました。是非参考にしてください!
The following two tabs change content below.
エンジニアです。いろいろ勉強中です。
- Asteriskワーニング:Autodestruct on dialog - 2022-03-02
- Kamailioを設定しましょう - 2021-07-02
- AWSでKamailioを構築 - 2021-06-13
- XCALLYでVoice botを作ってみました【Dialogflow×AWS Polly×GoogleASR】 - 2020-12-01
- Creating Simple Graph/Table for XCALLY agent in Grafana - 2019-09-04