我有一个kubernetes集群.
我可以轻松连接到远程容器,并运行连接到live production erlang节点的shell节点:
$ kubectl exec myapp-2431125679-cwqvt -i -t -- iex --name debugging@127.0.0.1 --remsh myliveapp@127.0.0.1 --cookie my_secret_cookie
Erlang/OTP 18 [erts-7.3.1] [source] [64-bit] [smp:2:2] [async-threads:10] [kernel-poll:false]
Interactive Elixir (1.3.4) - press Ctrl+C to exit (type h() ENTER for help)
iex(myliveapp@127.0.0.1)1>
Run Code Online (Sandbox Code Playgroud)
我需要的,虽然是要能够运行:observer针对远程现场制作的Erlang节点.
我也可以这样做:
杀死本地epmd进程:
killall epmd
Run Code Online (Sandbox Code Playgroud)将选定的远程端口转发到本地计算机:
kubectl port-forward myapp-2431125679-cwqvt 35609 4369
Run Code Online (Sandbox Code Playgroud)
我知道我的应用程序在远程容器上的端口35609上epmd运行,默认情况下4369是端口运行,这是我的远程容器的情况.
跑:
iex --name debugging@127.0.0.1 --cookie marketplace -e ':observer.start()'
Run Code Online (Sandbox Code Playgroud)从顶部菜单中选择我感兴趣的应用程序:observer.
我的问题是:
最终,我可以将此过程变为单行或将其转换为shell脚本吗?
现在杀人 …
为什么Matrix类没有方法来编辑它的向量和组件?看起来矩阵内的所有内容都可以读取但不能写入.我错了吗?是否有一些第三方优雅Matrix的类允许我删除行并故意编辑它们?
如果没有这样的课程,请通知我 - 我会停止搜索.
更新:我发现几乎完全相似的问题,但它有一些不同的先决条件,因此没有多大帮助.
鉴于:
ruby 1.9.3p194(2012-04-20修订版35410)[x86_64-darwin11.3.0]
使用以下行安装Ruby:
rvm install 1.9.3 --with-readline-dir=/usr/local/Cellar/readline/6.2.2/
当我启动irb或rails c开始输入unicode字符时,我得到:
\U+FFD0\U+FFBF\U+FFD1\U+FFD0\U+FFB8\U+FFD0\U+FFBC\U+FFD0\U+FFB5\U+FFD1
在Ruby/Rails控制台上键入时如何正确显示unicode字符?
PS在终端的bash会话中键入相同的字符会导致正确的输出.
PPS只是要清楚 - 在控制台中我输入俄语字符:它们被认为是unicode符号吗?
遵循用于引导实例的terraform最佳实践,我正在处理cloud-init配置以引导我的实例。我唯一的需要是安装一个特定的包。
我的 terraform 配置如下所示:
resource "google_compute_instance" "bastion" {
name = "my-first-instance"
machine_type = "n1-standard-1"
zone = "europe-west1-b"
boot_disk {
initialize_params {
image = "debian-cloud/debian-9"
}
}
network_interface {
network = "default"
access_config {
// Ephemeral IP
}
}
metadata = {
ssh-keys = "eugene:${file("/Users/eugene/.ssh/id_rsa.pub")}"
user-data = file("my_cloud_init.conf")
}
}
Run Code Online (Sandbox Code Playgroud)
以下是从docs安装软件包的示例cloud-init,这是以下内容my_cloud_init.conf:
#cloud-config
packages:
- kubectl
Run Code Online (Sandbox Code Playgroud)
运行terraform plan -out myplanand 后terraform apply myplan,我 ssh 到节点上却发现kubectl不可用。此外,没有证据表明它cloud-init已运行或存在于节点上: …
cloud-init google-compute-engine google-cloud-platform terraform
好的,所以我遇到了一个非常奇怪的问题,直接与之前的块连接.我正在通过Watir和RSpec进行集成测试.对于检查用户是否可以执行登录的简单测试,我通过factory_girl在数据库中创建"用户"记录.
所以我把以下代码:
before(:each) do
@user = Factory(:user)
end
if "should perform a login" do
# do stuff
end
Run Code Online (Sandbox Code Playgroud)
在do stuff我调用浏览器,看看用户如何尝试登录.不幸的是,他不能这样做 - "用户名无效".
经过一番调查后,我发现如果我把用于创建用户的代码放在before(:all)块中,一切都神奇地起作用.怎么样?在这种情况下:all和之间的区别是什么:each?此外,如果我将用于创建用户的代码实际放在测试体中,它仍然不起作用(即用户不知何故没有添加到数据库或其他东西).
在Ruby下构建函数图的最简单方法是什么?有关特殊图形库的任何建议吗?
更新:仅在Windows下:-(
更新2:发现以下gem是目前为止的最佳解决方案https://github.com/clbustos/rubyvis
我的应用程序中有大量的jquery-ui对话框.每次我需要一个新的,我写下以下几行:
$('.another-dialog').dialog({
title: 'Another dialog',
autoOpen: false,
draggable: true,
modal: true,
show: 'fade',
hide: 'fade',
width: 400,
position: ['center', 'center'],
buttons: [
{ text: 'Ok' },
{ text: 'Cancel' }
],
open: function(event, ui) { $(".ui-dialog-titlebar-close span").html('×') }
});
Run Code Online (Sandbox Code Playgroud)
一个对话框与另一个对话框之间唯一真正不同的是buttons和title键.我想在这里有一个JQuery对话框的应用程序范围设置,所以我只会打电话
$('.another-dialog').dialog({
title: 'Another dialog',
buttons: [
{ text: 'Ok' },
{ text: 'Cancel' }
]
});
Run Code Online (Sandbox Code Playgroud)
隐藏设置所有需要的哈希键(我称之为"默认"设置).
我知道我可以.dialog()打电话,比方说,.myDialog()打电话到我自己设置的地方.但我想知道是否有一种真正,方便的方法.
提前致谢!
是否可以重命名PVC?我似乎找不到可能的证据.
我正试图缓解一个"设备没有剩余空间"的问题,我只是偶然发现了.基本上我的计划要求我调整卷的大小,我的服务会保留其数据.
不幸的是,我仍然在GKE上的Kubernetes 1.8.6.它没有PersistentVolumeClaimResize启用准入插件:
因此,我必须手动保存数据.我做了以下计划:
有问题的PVC附加到StatefulSet,因此旧名称和新名称必须匹配(因为StatefulSet期望遵循卷命名约定).
但我不明白如何重命名持久量声明.
我正在努力为 docker swarm 连接打开一个端口 2377。
Mac OSX 规范:
System Version: macOS 10.15.2 (19C57)
Kernel Version: Darwin 19.2.0
Run Code Online (Sandbox Code Playgroud)
我尝试打开端口的方法有很多:
使用 System Preferences->Security and Privacy-> Firewall 启用防火墙。然后编辑/etc/pf.conf如下文件,这根本没有帮助:
pass in proto tcp from any to any port 2377
pass in proto tcp from any to any port 8080
Run Code Online (Sandbox Code Playgroud)
启用和禁用防火墙后,之前启用的端口 8080 被禁用,并且找不到任何方法重新启用它。
ufw 已弃用,似乎不再起作用。
nc -l 8080 (netcat 根本没用,从来没有工作过)。
PFCTL(不工作):
HQTML git:(AD-14024)$ sudo pfctl -f /etc/pf.conf
pfctl: Use of -f option, could result in flushing of rules
present in the main ruleset …Run Code Online (Sandbox Code Playgroud)我无法测试在 Google Cloud 的 PostgreSQL 产品中使用 IAM 用户的能力。
这是我的思考过程:
我在 Google Cloud 上的 PostgreSQL 实例上设置了相应的标志:
$ gcloud sql instances describe [MY_DB_INSTANCE] --format json | jq '.settings.databaseFlags'
[
{
"name": "cloudsql.iam_authentication",
"value": "on"
}
]
$
Run Code Online (Sandbox Code Playgroud)
我有一个 IAM 用户,我在数据库实例中创建了该用户:
gcloud sql users create [MY_EMAIL] --instance=[MY_DB_INSTANCE] --type=CLOUD_IAM_USER
Run Code Online (Sandbox Code Playgroud)
$ gcloud sql users list --instance [MY_DB_INSTANCE] | grep CLOUD_IAM_USER
[MY_EMAIL] CLOUD_IAM_USER
$
Run Code Online (Sandbox Code Playgroud)
当我尝试使用以下任一命令连接到数据库时,出现身份验证错误。在这两种情况下,我都使用输出gcloud auth print-access-token作为我的密码:
此方法将我的 IP 添加到白名单:
$ gcloud sql connect [MY_DB_INSTANCE] --database=[DB_NAME] --user=[MY_EMAIL]
Allowlisting your IP for incoming connection for …Run Code Online (Sandbox Code Playgroud)postgresql google-cloud-sql cloud-sql-proxy google-cloud-iam
ruby ×3
kubernetes ×2
cloud-init ×1
docker ×1
elixir ×1
erlang ×1
function ×1
irb ×1
jquery ×1
jquery-ui ×1
matrix ×1
osx-lion ×1
persistence ×1
plot ×1
postgresql ×1
rename ×1
rspec ×1
rvm ×1
terraform ×1
unicode ×1