みなさん、こんにちは。このブログへようこそ。ブロガーはビッグデータ業界に参入したばかりの初心者です。彼は自由な時間を使って学んだことを共有し、まだ始まったばかりのブロガーのような学生を支援しています。 、間違いや脱落があれば、遠慮なく教えてください。現在、個人ブログにはCSDNのみがあり
https://zhenyu.blog.csdn.net/
ます。、サポートに感謝し、ありがとう、そして
文章を送ってください:今日の問題、今日このブログは主に説明します:データ同期ツール:運河の設置
目的:
- Canalをインストールする
運河
重要なバージョン更新手順
------ 1.Canal 1.1.xバージョン(release_note)では、パフォーマンスと機能に大きな進歩があります。重要な改善点は次のとおりです。
- 全体的なパフォーマンステストと最適化が150%向上しました。#726リファレンス:パフォーマンス
- プロメテウスモニタリングのネイティブサポート#765プロメテウスクイックスタート
- kafkaメッセージ配信のネイティブサポート#695 Canal Kafka / RocketMQ QuickStart
- aliyun rdsのbinlogサブスクリプションのネイティブサポート(自動アクティブ/スタンバイ切り替え/ oss binlogオフライン分析を解決)リファレンス:Aliyun RDS QuickStart
- docker image#801のネイティブサポートリファレンス:Docker QuickStart
2.canal 1.1.4バージョンは、最も重要なWebUI機能を導入し、canal-adminプロジェクトを導入し、WebUI指向の運河動的管理機能をサポートし、構成、タスク、ログなどのオンラインホワイトスクリーン操作および保守機能をサポートします。特定のドキュメント:Canal Adminガイド
注:この調査で使用されたバージョンcanal1.0.24
環境要件
- ダウンロード:クリックしてCancal_抽出コードをダウンロード:yujv
- ZooKeeperをインストールします
- 解凍
mkdir /export/servers/canal
tar -zxvf canal.deployer-1.0.24.tar.gz -C /export/servers/canal/
- 解凍が完了したら、/ export / servers / canal /ディレクトリに入ると、次の構造が表示されます。
[root@node1 canal]# tree conf/
conf/
├── canal.properties
├── example
│ └── instance.properties
├── logback.xml
└── spring
├── default-instance.xml
├── file-instance.xml
├── group-instance.xml
├── local-instance.xml
└── memory-instance.xml
- まず
canal.properties
、共通属性の最初の4つの構成項目を確認します。
canal.id= 1
canal.ip=
canal.port= 11111
canal.zkServers=
canal.idは運河の数です。クラスター環境では、異なる運河のIDが異なります。mysqlのserver_idとは異なることに注意してください。
ここではIpは指定されておらず、デフォルトはこのマシンです。たとえば、上記は192.168.1.120、ポート番号は11111です。zkは運河クラスターに使用されます。
- 宛先に関連
canal.properties
する構成を見てみましょう:
#################################################
######### destinations #############
#################################################
canal.destinations = example
canal.conf.dir = ../conf
canal.auto.scan = true
canal.auto.scan.interval = 5
canal.instance.global.mode = spring
canal.instance.global.lazy = false
canal.instance.global.spring.xml = classpath:spring/file-instance.xml
------ここでcanal.destinations
= example
example1、example2など、複数を設定できinstance.properties
ます。対応する2つのフォルダーを作成する必要があり、各フォルダーにはファイルがあります。
- グローバル運河インスタンス管理はスプリングを使用し、
file-instance.xml
すべての宛先インスタンスが最終的にインスタンス化されます。
<!-- properties -->
<bean class="com.alibaba.otter.canal.instance.spring.support.PropertyPlaceholderConfigurer" lazy-init="false">
<property name="ignoreResourceNotFound" value="true" />
<property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE"/><!-- 允许system覆盖 -->
<property name="locationNames">
<list>
<value>classpath:canal.properties</value> <value>classpath:${canal.instance.destination:}/instance.properties</value>
</list>
</property>
</bean>
<bean id="socketAddressEditor" class="com.alibaba.otter.canal.instance.spring.support.SocketAddressEditor" />
<bean class="org.springframework.beans.factory.config.CustomEditorConfigurer">
<property name="propertyEditorRegistrars">
<list>
<ref bean="socketAddressEditor" />
</list>
</property>
</bean>
<bean id="instance" class="com.alibaba.otter.canal.instance.spring.CanalInstanceWithSpring">
<property name="destination" value="${canal.instance.destination}" />
<property name="eventParser">
<ref local="eventParser" />
</property>
<property name="eventSink">
<ref local="eventSink" />
</property>
<property name="eventStore">
<ref local="eventStore" />
</property>
<property name="metaManager">
<ref local="metaManager" />
</property>
<property name="alarmHandler">
<ref local="alarmHandler" />
</property>
</bean>
------たとえば、exampleとcanal.instance.destination
等しい場合、example/instance.properties
構成ファイルがロードされます
- インスタンス構成ファイルを変更します
viconf / example / instance.properties
## mysql serverId,这里的slaveId不能和myql集群中已有的server_id一样
canal.instance.mysql.slaveId = 1234
# 按需修改成自己的数据库信息
#################################################
...
canal.instance.master.address=192.168.1.120:3306
# username/password,数据库的用户名和密码
...
canal.instance.dbUsername = root
canal.instance.dbPassword = 123456
#################################################
- 起動
sh bin/startup.sh
- サーバーログの表示
vi logs/canal/canal.log
---------------------------------
2013-02-05 22:45:27.967 [main] INFO com.alibaba.otter.canal.deployer.CanalLauncher - ## start the canal server.
2013-02-05 22:45:28.113 [main] INFO com.alibaba.otter.canal.deployer.CanalController - ## start the canal server[10.1.29.120:11111]
2013-02-05 22:45:28.210 [main] INFO com.alibaba.otter.canal.deployer.CanalLauncher - ## the canal server is running now ......
- インスタンスログを表示
vi logs/example/example.log
-----------------------------------------
2013-02-05 22:50:45.636 [main] INFO c.a.o.c.i.spring.support.PropertyPlaceholderConfigurer - Loading properties file from class path resource [canal.properties]
2013-02-05 22:50:45.641 [main] INFO c.a.o.c.i.spring.support.PropertyPlaceholderConfigurer - Loading properties file from class path resource [example/instance.properties]
2013-02-05 22:50:45.803 [main] INFO c.a.otter.canal.instance.spring.CanalInstanceWithSpring - start CannalInstance for 1-example
2013-02-05 22:50:45.810 [main] INFO c.a.otter.canal.instance.spring.CanalInstanceWithSpring - start successful....
- シャットダウン
sh bin/stop.sh
概要
--------上記はCanalのインストール手順です。
ご支援ありがとうございます。何か問題がありましたら、時間内にフィードバックをお寄せください。気に入ってサポートしてください。