我有一个以 HA 代理负载均衡器为前端的 Web API。Web API 使用客户端认证证书进行身份认证和授权。我希望 HA 代理设备终止 TLS 连接并在后端使用普通 HTTP 与 Web API 通信,但我需要通过 HTTP 连接传递的客户端身份验证证书。需要如何设置 HA 代理以将请求的身份验证证书保留在后端,但仅使用 HTTP?
我创建了一个简单的 Ansible 剧本:
---
- hosts: all
tasks:
- name: Install Icinga2 on Windows
include_role:
name: my.icinga2.role
apply:
tags:
- install-icinga2
Run Code Online (Sandbox Code Playgroud)
该角色包含以下任务文件:
---
- include_tasks: vars.yml
tags: ['always']
- include_tasks: install.yml
tags: ['install-icinga2-stack', 'install-icinga2']
- include_tasks: ido-install.yml
when: icinga2_ido_enable == true
tags: ['install-icinga2-stack', 'install-icinga2-ido']
- include_tasks: configure.yml
tags: ['install-icinga2-stack']
[...]
Run Code Online (Sandbox Code Playgroud)
这是我执行剧本时的结果:
me@ansible:~/ansible$ ansible-playbook plays/icinga2-client-win.yml -i staging.ini --limit windows
PLAY [all] ***************************************************************************************************
TASK [Gathering Facts] ***********************************************************************************************************
ok: [my.windows.client]
TASK [Include variables for Icinga 2] ********************************************************************************************
ok: [my.windows.client]
TASK [set_fact] ******************************************************************************************************************
skipping: …Run Code Online (Sandbox Code Playgroud) 我正在尝试在 Application Loader Balancer (ELBv2) 后面配置 ECS Fargate,我想终止 ALB 上的 TLS/SSL 连接,并将 HTTP 流量(端口 80)发送到在端口 80 上侦听的 Fargate 图像.
这是我正在尝试做的图表:
任何帮助表示赞赏!
在过去的几个月里,一小群 Ubuntu 服务器对我来说一直崩溃。大多数时候,当服务器崩溃时,我可以在 dmesg、syslog 或其他各种日志系统之一中找到一些原因的证据。然而,对于这次特定的冻结,任何日志中都没有发生任何事情。系统真的死机了,键盘输入不起作用,系统根本没有 ping 信号。它处于离线状态,但仍在消耗电量。
如果只是一台服务器,我会责怪硬件,但我们谈论的是多台服务器,多代 CPU、RAM 和主板都存在问题。
我尝试升级到各种内核(当前为 4.15),但这也没有导致问题停止。
我主要寻找的是某种方法来增加内核日志记录,或者某种其他方法来从冻结的服务器获取某种信息,了解它在冻结之前正在做什么。
我有以下证书:
# certbot certificates
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Found the following certs:
Certificate Name: domain.example
Domains: domain.example imap.domain.example mail.domain.example pop.domain.example smtp.domain.example www.domain.example
Expiry Date: 2019-09-09 03:34:20+00:00 (VALID: 62 days)
Certificate Path: /etc/letsencrypt/live/domain.example/fullchain.pem
Private Key Path: /etc/letsencrypt/live/domain.example/privkey.pem
Run Code Online (Sandbox Code Playgroud)
现在我想做的是从证书中删除domain.example和,因为 Web 服务器已移动到另一个实例。www.domain.example事实上,DNS 条目已更改意味着,如果domain.example和www.domain.example仍然是证书的一部分,则续订过程将会失败,因为 DNS 条目现在指向另一个 IP。
如何从 Let's Encrypt 证书中删除某些主机名,而不删除证书并创建新证书?
在 Amazon Linux 2发行说明中,Amazon 建议 initscripts 不应再存在于/etc/init.d
Amazon Linux 2 使用 systemd 219 init 系统来引导用户空间并管理系统进程。它以 /sbin/init 形式提供,并取代了上一代 Amazon Linux 中提供的 System V 风格的 init 系统。因此,initscripts 不应再存在于 /etc/init.d 中。应使用 systemctl {start|stop|restart} SERVICE_NAME.service 代替它。此外,服务 SERVICE_NAME {start|stop|restart} 与 Amazon Linux AMI 和 Amazon Linux 2 兼容。
我们依靠 initscript 在实例启动时自动启动 Supervisor。systemd 219 init 系统下有可行的替代方案吗?
我正在尝试使用 gsutil 将包含超过 3k 文件的文件夹同步到 Google Cloud 上的存储桶。问题是上传的文件不到一半,然后我收到此错误:
解包的值太多了
CommandException: 1 个文件/对象无法复制/删除。
由于 Google Cloud 支持仅适用于那些有 200 美元闲钱的人,这里有人有不涉及单独同步每个子文件夹的解决方案吗?
我在 Windows 10 上使用 powershell,但这个问题也发生在 linux 上。我无法在网上的任何地方找到解决方案。
我正在尝试打开 SQS 队列,但收到此错误:
2019-07-09 07:20:31,855 pid 3604 tid 800 ERROR connection <?xml version="1.0
"?><ErrorResponse xmlns="http://queue.amazonaws.com/doc/2012-11-05/"><Error><Typ
e>Sender</Type><Code>AWS.SimpleQueueService.NonExistentQueue</Code><Message>The
specified queue does not exist or you do not have access to it.</Message><Detail
/></Error><RequestId>fa3bf29c-d5ad-525a-aa55-a70297d241fa</RequestId></ErrorResp
onse>
Run Code Online (Sandbox Code Playgroud)
我已经验证队列名称是正确的。
以下是我授予 IAM 角色的权限:
IE
Run Code Online (Sandbox Code Playgroud)"sqs:ChangeMessageVisibility", "sqs:ReceiveMessage", "sqs:SendMessage",
如果我运行以下命令
aws sqs receive-message --queue-url https://sqs.us-west-2.amazonaws.com/12345678/my-queue
Run Code Online (Sandbox Code Playgroud)
它不会抛出任何异常。
在我的代码中,我使用 boto 连接到 SQS 队列
sqs_conn = boto.sqs.connect_to_region(self.region)
LOG.debug("Getting queue for %s" % queue_name)
return sqs_conn.get_queue(queue_name)
Run Code Online (Sandbox Code Playgroud)
我是否错过了连接 SQS 队列的任何权限?
我一直致力于性能敏感的功能。我一直在本地开发,在我的 Mac 上运行 MySQL 服务器。一键查询在我的机器上运行时间约为1.2秒,在我可以接受的范围内。一切都运行得足够快,因此我决定将其转移到 AWS RDS Aurora 数据库上,以便我可以开始在生产中使用新系统。
但是,一旦我开始连接到 RDS 而不是本地服务器,查询的时间就开始增加两倍以上。这是比较实际查询运行所需的时间,不受网络速度的影响。我就是这样测量的。
我已将 RDS 使用的实例升级为db.r3.4xlarge,该实例具有 122 GB RAM、Intel Xeon E5-2670 v2 (Ivy Bridge) 和 16 个 vCPU。我的本地机器有 32 GB 内存和 4 GHz Intel Core i7。
我对这些东西了解不多,但无论您查看什么指标,云中的数据库似乎都在更强大的硬件上运行。
主要问题:我还可以研究什么才能使云数据库像本地计算机一样快速运行?
看似合理但事实并非如此的事情:
explain在查询开始时使用会在两个数据库上产生完全相同的索引计划。可能是因素,但我真的不知道:
我真的有点不知所措。如果有人有任何想法或建议,我们将不胜感激!
我有一个旧的 AMI,它曾经在 c4.large 机器上运行。
由于此类不适用于所有可用区,因此我选择了 c5.large 来将图像恢复到其中。
但是,当我运行 terraform 进行恢复时,我收到以下错误消息:
发生 1 个错误:
aws_instance.convertor:发生 1 个错误:
aws_instance.convertor:启动源实例时出错:InvalidParameterCombination:“c5.large”实例类型需要使用弹性网络适配器 (ENA) 进行增强联网。确保您使用的是为 ENA 启用的 AMI。状态代码:400,请求 ID:7f32e7a1-c201-4db3-9f9e-6da4657ba9c8
我如何找到哪种实例类型可以接受这个旧的 AMI?或者我可以向 AMI 应用什么来使用较新的实例类型吗?
amazon-ec2 ×1
amazon-ecs ×1
amazon-elb ×1
amazon-iam ×1
amazon-linux ×1
amazon-rds ×1
ansible ×1
certificate ×1
gcloud ×1
gsutil ×1
haproxy ×1
init.d ×1
lets-encrypt ×1
linux ×1
mysql ×1
performance ×1
ssl ×1
ubuntu ×1