blob: 5267b4989816bac46479f7db1c57bbd80628dc32 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
### Dependencies
Paths are hardcoded.
Confluent local (see https://www.confluent.io/installation/):
```bash
export CONFLUENT_HOME=/opt/confluent
export PATH=/opt/confluent/bin:$PATH
cd /opt/confluent
kafka-storage.sh random-uuid
kafka-storage.sh format -t 2vi2WtHxQAOPyXb1Bj1Jvw -c etc/kafka/server.properties
kafka-server-start.sh etc/kafka/server.properties
kafka-server-start etc/kafka/server.properties
schema-registry-start $CONFLUENT_HOME/etc/schema-registry/schema-registry.properties
connect-standalone $CONFLUENT_HOME/etc/kafka/connect-standalone.properties $CONFLUENT_HOME/share/confluent-common/connectors/sink-jdbc.properties
```
Confluent JDBC sink and source (includes Postgres connector)
(see https://www.confluent.io/hub/confluentinc/kafka-connect-jdbc)
Be mindful to configure the right `plugin.path` in `etc/kafka/connect-standalone.properties`
```bash
ln -s $HOME/git/opendc/resources/experiments/sink-jdbc.properties opt/confluent/share/confluent-common/connectors/sink-jdbc.properties
```
Protobuf:
extra/protobuf 33.1-3
You need to run this each time you change `schema.proto`
```bash
cd resources/experiments/
protoc --java_out=/home/matt/git/opendc/opendc-common/src/main/java/ schema.proto
```
Postgresql:
extra/postgresql 18.1-2
```bash
initdb -D /var/lib/postgres/data
mkdir /run/postgresql/
cd /run/postgresql/
touch .s.PGSQL.5432.lock
chown -R postgres:postgres /run/postgresql
```
Random
```bash
bin/kafka-topics.sh --bootstrap-server localhost:9092 --delete --topic postgres-topic
bin/kafka-topics.sh --create --topic postgres-topic --bootstrap-server localhost:9092 --partitions 1 --replication-factor 1
bin/kafka-topics.sh --list --bootstrap-server localhost:9092
bin/kafka-console-consumer.sh --bootstrap-server :9092 --topic postgres-topic --from-beginning
```
|