出于学习目的,我正在尝试在GCP上安装和设置我自己的Kubernetes集群。
我想在GCP上为我的实例提供一个引导脚本。
这是我的google\u compute\u实例
config
json prettyprint-override">resource "google_compute_instance" "default" {
name = var.vm_name
machine_type = "f1-micro"
zone = "europe-west1-b"
boot_disk {
initialize_params {
image = "debian-cloud/debian-9"
}
}
network_interface {
network = var.network
access_config {
// Include this section to give the VM an external IP address
}
}
provisioner "remote-exec" {
script = var.script_path
connection {
type = "ssh"
host = var.ip_address
user = "root"
}
}
tags = ["node"]
}
我在应用terraform时遇到了这个问题
错误:无法打开脚本“sudo apt get update”
sudo apt-get安装
apt-transverage-https
ca-证书
curl
gnupg-Agent
software-Properties tions-公共
zsh
vim
curl-fsSLhttps://download.docker.com/linux/debian/gpg| sudo apt key add-sudo add apt repository \“deb[arch=amd64]https://download.docker.com/linux/debian\$(lsb_release-cs)\
稳定的“sudo-apt-get-update”
卷曲-shttps://packages.cloud.google.com/apt/doc/apt-key.gpg| sudo apt按键添加-cat
sudo apt-get安装
apt-transverage-https
ca-证书
curl
gnupg-Agent
software-Properties tions-公共
zsh
vim
curl-fsSLhttps://download.docker.com/linux/debian/gpg| sudo apt key add-sudo add apt repository \“deb[arch=amd64]https://download.docker.com/linux/debian\$(lsb_release-cs)\
稳定的“sudo-apt-get-update”
卷曲-shttps://packages.cloud.google.com/apt/doc/apt-key.gpg| sudo apt按键添加-cat
我所有的实例都是在云上创建的,它似乎找到了引导脚本,但它显示了这个错误。
我错过了什么?有更好的方法吗?
下面是脚本:
#bin/bash
sudo apt-get update
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common \
zsh \
vim
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/debian \
$(lsb_release -cs) \
stable"
sudo apt-get update && sudo apt-get install docker-ce docker-ce-cli containerd.io
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
对于那些感兴趣的人,我找到了一个更简单的解决方案,不使用ssh,而是使用创建资源时可用的google元数据。
metadata\u startup\u script=file(“./scripts/bootstrap.sh”)
json prettyprint-override">resource "google_compute_instance" "default" {
name = var.vm_name
machine_type = "e2-standard-2"
zone = "europe-west1-b"
boot_disk {
initialize_params {
image = "debian-cloud/debian-9"
}
}
network_interface {
network = var.network
access_config {
// Include this section to give the VM an external IP address
}
}
metadata_startup_script = file("./scripts/bootstrap.sh")
tags = ["node"]
}
您应该在远程执行
的连接
块中提供私钥参数。
private_key - The contents of an SSH key to use for the connection. These can be loaded from a file on disk using the file function. This takes preference over the password if provided.
示例块可以是这样的:
provisioner "remote-exec" {
script = var.script_path
connection {
host = var.ip_address
type = "ssh"
user = "root"
private_key = fileexists("/temp/private_key") ? file("/temp/private_key") : file("C:/private_key")
}
}
问题内容: 我已经准备好具有功能流程的Selenium自动化脚本,现在我想将这些脚本与JMeter集成以进行负载测试。 那可能吗? 如果是这样,如何将两者融合? 我的首要目标是使用硒运行自动化脚本,而不是在jmeter中运行这些脚本以进行负载或性能测试。 问题答案: JUnit请求采样器 如果您想重用已经自动化的(Java)Selenium场景,而不是为WebDriver Sampler重写JS脚
问题内容: 我想尝试使用npm为Web应用程序运行各种构建任务。我知道我可以这样添加一个字段来做到这一点: 当您使用带有许多选项的更复杂的命令时,这变得很笨拙。是否有可能将这些命令移至bash脚本或类似的东西?就像是: 在文件中的哪里执行命令? 阅读这篇文章似乎是这样,但是我不清楚我应该在哪里放置文件或者丢失了什么。 问题答案: 完全有可能… 另外,请确保在bash文件的顶部放置一个哈希爆炸 还请
问题内容: 我想从C调用Python脚本,并传递脚本中所需的一些参数。 我要使用的脚本是mrsync或多播远程同步。我通过调用以下命令从命令行进行了工作: -m是包含目标ip地址的列表。-s是包含要同步的文件的目录。-t是目标计算机上将放置文件的目录。 到目前为止,通过使用以下C程序,我设法运行了没有参数的Python脚本: 这很好。但是,我找不到如何将这些参数传递给方法的方法。 问题答案: 似乎
问题内容: 我有一个想要添加到cron的python脚本。 脚本具有+ x权限。 如何将其添加到crontab?(例如,我希望它每分钟运行一次)。 重要提示:当我(使用外壳)导航到脚本的文件夹时,无法使用“ ./script_name.py”运行它;它不起作用。但是,当我使用“ Python script_name.py”运行它时,一切正常。 问题答案: 从您应该运行该脚本和脚本符合下列条件: 可
问题内容: 我想在我的node.js服务器上运行shell脚本,但是什么也没发生… 另一个childProcess可以完美地工作,但是上面的过程不能。 如果我在终端中运行脚本,那么它将起作用。有任何想法吗?(设置了chmod + x) 问题答案: exec函数回调函数已将错误,stdout和stderr参数传递给它。查看它们是否可以通过将它们吐到控制台来帮助您诊断问题:
问题内容: 我正在尝试运行Python工作。我创建了以下文件夹: C:\ Users \ herod \ jenkins_ws \ workspace \ window_testing 并添加了脚本“ testing.py”。 该脚本非常简单: 但是从Jenkins运行它时出现以下错误(如果我从命令行运行它会起作用): 我究竟做错了什么 ? 这是我尝试过的: 在构建部分的作业配置中,我选择“执行p