William
03/19/2024, 9:20 AMavielb_17552
03/19/2024, 11:00 AMkylethedeveloper
03/24/2024, 5:37 PMgtsirkalova
03/25/2024, 10:23 AMconst timestamp = Date.now();
fetch(`/config/config.json?_=${timestamp}`)
.then((r) => r.json())
.then((config) => {
console.log("the whole config:", config);
})
.catch(() => {
return {
message: "Config.json not found.",
success: false,
};
});
My local process is running on port 3000 and my remote container port is 41831.
I'm using mirrord via CLI, having the following configuration:
{
"target": {
"path": "pod/my-pod-64457c6c84-qgdzh",
"namespace": "my-namespace"
},
"feature": {
"env": true,
"fs": "read",
"network": {
"incoming": {
"port_mapping": [
[
3000,
41831
]
]
}
}
}
}
And start the application with mirrord exec -f ./mirrordconfig.json -- yarn start
Then in the console I see the content of my local /config/config.json
logged in instead of the remote one.
Can you please help me, what I'm doing wrong/missing?
Thanks in advance!mnabeel.
03/27/2024, 11:45 AMfeature:
fs: read
Then any file reads performed by the application will look for the file in the remote pod. However this doesn't appear to work, as my application mentions the file could not be foundunsoop
03/30/2024, 2:26 PMunsoop
03/30/2024, 2:27 PMunsoop
03/30/2024, 2:27 PMunsoop
03/30/2024, 2:31 PMexp1782
04/07/2024, 2:41 PMeugene_catalyst
04/08/2024, 7:41 AMeugene_catalyst
04/09/2024, 9:05 AM--steal
?Aviram Hassan
04/09/2024, 9:57 AMeugene_catalyst
04/09/2024, 10:00 AMeugene_catalyst
04/09/2024, 10:14 AMeugene_catalyst
04/09/2024, 10:14 AMstaeff.
04/17/2024, 9:52 AMstaeff.
04/17/2024, 9:52 AMstaeff.
04/17/2024, 9:54 AMmnabeel.
04/19/2024, 9:39 AMFailed looking up TXT record for host my-company.abcdef.mongodb.net
I can successfully perform this TXT lookup both from my laptop and from the remote pod: nslookup -query=TXT my-company.abcdef.mongodb.net
The response gives the expected result:
Server: 192.168.0.1
Address: 192.168.0.1#53
Non-authoritative answer:
my-company.abcdef.mongodb.net text = "authSource=admin&replicaSet=atlas-ab7y9v-shard-0"
Authoritative answers can be found from:
Any idea on why the intercepted service fails to perform this TXT lookup?William
04/30/2024, 6:20 AMstaeff.
04/30/2024, 1:08 PMnetguino
05/02/2024, 3:10 PMbundle exec passenger start
. This doesnt work, producing a ruby socket error Unknown error: 111 - connect(2) for 0.0.0.0:8888 (errno: E111)
which makes me wonder if there's some issue with binding to the port. The stack trace shows ruby socket, then passenger.
I searched the github issues but didnt seem to come up, so figured I'd ask here! Any advice appreciated.netguino
05/02/2024, 7:26 PMbundle exec passenger
and listen on some port of my choice.
I have a 3rd service, called echo, which runs some go app, that simply logs stuff to stdout.
Here is the thing I'm trying to understand,
If I run this:
mirrord exec --steal --fs-mode local -f mirrord-config.json --target deployment/golang -- bundle exec passenger start --port 3000 --max-pool-size 4 --min-instances 4 --spawn-method direct
It loads up just fine, connect, yadiyada, all great.
Now, if I change the target to be my image that currently has the ruby app running:
mirrord exec --steal --fs-mode local -f mirrord-config.json --target deployment/ruby -- bundle exec passenger start --port 3000 --max-pool-size 4 --min-instances 4 --spawn-method direct
netguino
05/02/2024, 7:26 PMβ pod is ready bundler: failed to load command: passenger (/Users/netguino/.asdf/installs/ruby/3.2.3/bin/passenger)
/Users/netguino/.asdf/installs/ruby/3.2.3/lib/ruby/gems/3.2.0/gems/bundler-2.3.4/lib/bundler/rubygems_integration.rb:331:in `block in replace_bin_path': can't find executable passenger for gem passenger. passenger is not currently included in the bundle, perhaps you meant to add it to your Gemfile? (Gem::Exception)
from /Users/netguino/.asdf/installs/ruby/3.2.3/lib/ruby/gems/3.2.0/gems/bundler-2.3.4/lib/bundler/rubygems_integration.rb:359:in `block in replace_bin_path'
from /Users/netguino/.asdf/installs/ruby/3.2.3/bin/passenger:25:in `<top (required)>'
from /Users/netguino/.asdf/installs/ruby/3.2.3/lib/ruby/gems/3.2.0/gems/bundler-2.3.4/lib/bundler/cli/exec.rb:58:in `load'
I am reading about file operations ( https://mirrord.dev/docs/reference/fileops/ ) but I'm not sure I understand what remote/local means in this context. I feel like this might be in the right direction, but I'm confused as to why it works against the non-ruby image, but not the one that currently does run ruby.netguino
05/02/2024, 7:28 PMJohn Dough
05/15/2024, 9:36 PMJohn Dough
05/16/2024, 8:56 AMJohn Dough
05/16/2024, 8:58 AMJohn Dough
05/16/2024, 4:42 PMmirrord exec -f .mirrord/mirrord.json -- node lib/server.js
When targeting multi-pod deployments, mirrord impersonates the first pod in the deployment.
Support for multi-pod impersonation requires the mirrord operator, which is part of mirrord for Teams.
You can get started with mirrord for Teams at this link: https://mirrord.dev/docs/overview/teams/
x mirrord exec
β Running on latest (3.101.0)!
x node is not allocatable
β layer extracted Error: Γ Create agent failed. NodePodLimitExceeded(
β "gke-...",
β 119,
β )
help:
Please check the status of the agent pod, using `kubectl get pods` in the relevant namespace.
Make sure it is able to fetch the agent image, it didn't fail due to lack of resources, etc.
- If you're still stuck:
>> Please open a new bug report at https://github.com/metalbear-co/mirrord/issues/new/choose
>> Or join our Discord https://discord.gg/metalbear and request help in #mirrord-help
>> Or email us at hi@metalbear.co