This is an example app intended to reproduce issues talking to redis in k8s using redisson/netty via mirrord
update: the issue was that I needed to run "telepresence quit" first to avoid dns conflicts Prereqs K8s IntelliJ
Setup
- Install java 1.8
- Install jenv Manage your Java environment
- Download java 8
- https://docs.oracle.com/javase/8/docs/technotes/guides/install/mac_jdk.html
- jenv add /System/Library/Java/JavaVirtualMachines/$JAVA_VERSION/Contents/Home
- install grade 6.1
- install sdkman Installation - SDKMAN! the Software Development Kit Manager
- sdk install grade 6.1
- sdk use grade 6.1
- Deploy redis
- kubectl create namespace scott-mirrord-zipcar
- helm -n scott-mirrord-test install cheetah-redis oci://registry-1.docker.io/bitnamicharts/redis --set auth.enabled=false
- Confirm you can connect to redid using mirrord
- echo "KEYS *" | mirrord exec -a scott-mirrord-test redis-cli -- -h cheetah-redis-master.scott-mirrord-test.svc.cluster.local
Start app in IntelliJ (it did not work via cli either in my testing, but I coudlnt get this sample app to boot using gradle run)
- Import app into IntelliJ as a gradle project
- Specify gradle version
- Open gradle toolbar
- Select wrench icon - gradle settings
- Select “specified location” in “Use gradle from” dropdown
- Enter /Users/$USERNAME/.sdkman/candidates/gradle/current in textbox
- In gradle jvm section, select oracle 1.8
- Open boostrap.java
- Enable mirrord
- Click the green arrow to start project
- Select targetless
Expected: no errors, key written successfully
echo "KEYS *" | mirrord exec -a scott-mirrord-test redis-cli -- -h cheetah-redis-master.scott-mirrord-test.svc.cluster.local