我正在学习Ansible但是我很困惑何时使用连字符以及何时不在剧本中使用连字符.据我所知,连字符用于Ansible中的列表.
例如,
--- # my first playbook
- hosts: webservers ( why did we use hyphen here it is not a list)
tasks:
- name: installing httpd
yum: name=httpd state=installed ( why we shouldn't use hyphen here).
Run Code Online (Sandbox Code Playgroud)
从Ansible文档中可以看出,连字符是用于列表的,例如:
fruits:
- apple
- grapes
- orange
Run Code Online (Sandbox Code Playgroud)
所以,我很困惑什么时候使用连字符和何时不使用.
我有一个elasticbeanstalk环境需要运行一个PowerShell脚本并在部署应用程序之前重新启动.根据文档,这是根据文档支持的
如果系统在命令完成后需要重新启动,则系统会在指定的秒数过后重新启动.如果系统由于命令而重新启动,则Elastic Beanstalk将恢复到配置文件中的命令之后的点.默认值为60秒.您也可以永久指定,但系统必须重新启动才能运行另一个命令.
但是,当我向ebextensions .config文件添加reboot命令时,我从elasticbeanstalk获得以下异常
Error occurred during build: [Errno 4] Interrupted function call
Run Code Online (Sandbox Code Playgroud)
重新启动后服务器上的日志显示该命令已执行,因此我认为错误是由应用程序部署阶段重新启动引起的.
如果我删除restart命令,部署,等待它准备好然后手动触发重启它工作正常.但这显然是不可接受的.
我已经研究了部署钩子文件系统的方法,但这也不起作用,并且看起来很有用,因为听起来它应该支持开箱即用的这个要求.
有人有什么想法吗?
powershell continuous-integration amazon-web-services amazon-elastic-beanstalk devops
我构建一个简单的NodeJS API,将Docker Image推送到repo并使用Helm install将其部署到我的k8s(完美地工作).
pullPolicy是Always.
现在我想更新源代码并部署我的应用程序的更新版本.我在所有文件中碰撞了版本,构建并推送了新的Docker镜像并尝试过,helm upgrade但似乎什么也没发生.随着helm list我可以看到,修订部署,但尚未部署的更改源代码.
watch kubectl get pods还表明没有按照您期望的方式创建新的podkubectl --apply...
我做错了什么?
这是我们的环境:
我的问题:
还有一个像Keel这样的第三方工具,但它不支持Amazon ECR(ECR的Webhook问题)。
任何帮助,将不胜感激。
我将把我的webapp从Amazon EC2迁移到ECS.(docker)但是在ECS中,我们需要为进程分配内存和vCPU.
但我不确定应该为该任务分配多少vCPU.(以及记忆)
如何衡量流程需要多少vCPU和内存?
谢谢
我正在尝试将configmap部署到集群上
- name: Make/Update all configmaps on the cluster
kubernetes:
api_endpoint: blah
url_username: blah
url_password: blah
inline_data:
apiVersion: v1
kind: ConfigMap
metadata:
name: blah
namespace: blah
data: my-data.txt: "{{ data }}"
state: present
data: |
some = foo
foo = some
(using spinnaker to attach it to pods)
Run Code Online (Sandbox Code Playgroud)
当我进入吊舱并打开my-data.txt时,它显示:
some = foo\n foo = some\n
Run Code Online (Sandbox Code Playgroud)
我希望它看起来像文本并打印换行符,而不是\ n
奇怪的是,如果我在文本中的某处加上单引号,它将按原样打印文本,但单引号如下:
data: |
some = foo
foo = some
' '
Run Code Online (Sandbox Code Playgroud)
打印完全一样。
我曾尝试进行研究,但找不到任何东西,现在已经坚持了一段时间。
在Splunk搜索查询中如何检查日志消息是否有文本?
日志消息:
message: 2018-09-21T07:15:28,458+0000 comp=hub-lora-ingestor-0 [vert.x-eventloop-thread-0] INFO com.nsc.iot.hono.receiver.HonoReceiver - Connected successfully, creating telemetry consumer ...
Run Code Online (Sandbox Code Playgroud)
我想检查消息是否包含“连接成功,创建遥测消费者...”并基于此想要将 1 或 0 分配给变量
Splunk 搜索查询
(index="05c48b55-c9aa-4743-aa4b-c0ec618691dd" ("Retry connecting in 1000ms ..." OR "Connect or create consumer failed with exception" OR "Connected successfully, creating telemetry consumer ..."))
| rex field=_raw ^(?:[^ \n]* ){7}(?P<success_status_message>\w+\s+\w+,\s+\w+\s+\w+\s+\w+)"
| timechart count as status | eval status=if(isnull(success_status_message), 0, 1)
Run Code Online (Sandbox Code Playgroud)
success_status_message 始终为 null
我正在尝试更改我管理的 Kubernetes 集群的 CPU 管理器策略,如此处所述,但是,我在执行此操作时遇到了许多问题。
该集群正在 DigitalOcean 中运行,这是我到目前为止所尝试的。
--cpu-manager-policy是一个 kubelet 选项,我假设我无法通过 API 服务器更改它,并且必须在每个节点上手动更改它。(顺便说一句,这是假设吗?)ssh进入其中一个节点(DigitalOcean 行话中的 Droplet)并按照此处 kubelet CLI 参考kubelet --cpu-manager-policy=static中所述运行命令。它给了我消息Flag --cpu-manager-policy has been deprecated, This parameter should be set via the config file specified by the Kubelet's --config flag. See https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ for more information. ps aux | grep kubelet,发现其/etc/kubernetes/kubelet.conf.cpuManagerPolicy: static我编辑该文件并向其中添加一行kubeReserved并且systemReserved因为如果指定cpuManagerPolicy.如果您能让我理解这个简单的话题,我会非常高兴。
我知道詹金斯是什么以及它的作用。现在我们来做个比较。
我们使用 jenkins,以便一旦代码通过 git hooks 推送到存储库,我们就运行 jenkins 作业来提取该代码,进行构建,运行测试,然后如果需要,将其上传到代码实际运行的远程计算机。
现在,我可以做的是,当 git hook 发生时,我将运行 bash 脚本,该 bash 脚本将执行这些操作(例如从存储库中提取代码、运行构建、进行测试,然后通过 ssh 将其上传到远程计算机)。
所以,我可以通过 bash 脚本做同样的事情。
问题是:我没有看到那么大的优势。
那么,您能尽力用非常简单的语言解释一下为什么它有很大的优势吗?我知道 Jenkins 有很多插件,但这不是进行比较的最佳方式。
我的项目包含一个有自己的子项目.eslintrc(即在 下./path/to/subproject),
我正在尝试运行lint,但它要么转到根项目.eslintrc文件,要么找不到
我在 中尝试过以下配置的.eslintrc文件:package.json
cd path/to/subproject
Run Code Online (Sandbox Code Playgroud)
和:
"lint": "tsc && eslint -c .eslintrc.js ./**/*.ts --"
Run Code Online (Sandbox Code Playgroud)
或者
"lint": "tsc && eslint -c ./.eslintrc.js ./**/*.ts --"
Run Code Online (Sandbox Code Playgroud)
还在根目录中尝试过:
"lint": "tsc && eslint -c path/to/subproject/.eslintrc.js ./**/*.ts --"
Run Code Online (Sandbox Code Playgroud)
或者
"lint": "tsc && eslint -c .eslintrc.js ./**/*.ts --"
Run Code Online (Sandbox Code Playgroud)
和
npm run lint --prefix path/to/subproject/
Run Code Online (Sandbox Code Playgroud)
但它不断引用根项目.eslintrc文件:
Oops! Something went wrong! :(
ESLint: 6.4.0.
ESLint couldn't find the config "configname" to extend from. Please …Run Code Online (Sandbox Code Playgroud) devops ×10
kubernetes ×4
ansible ×2
jenkins ×2
amazon-ec2 ×1
amazon-ecs ×1
aws-ecr ×1
azure-devops ×1
bash ×1
eslint ×1
eslintrc ×1
git ×1
java ×1
javascript ×1
kubelet ×1
linux ×1
powershell ×1
splunk ×1
splunk-query ×1
yaml ×1