使用TAG区分AWS费用账单

一、划分费用的方法

为了区分不同部门、不同业务线的费用,如下两个常见方法:

  1. 使用AWS Organization功能,创建独立的子账户,然后自动合并付款。缺点是自账户创建、认证、密码策略、管理维护稍微步骤多一些。详细文档参考这里
  2. 使用Tag区分。在当前账号下,创建资源都填写对应的资源标签。

本文描述的是方法2也就是Tag(标签)。详细文档参见这里的链接

Continue reading “使用TAG区分AWS费用账单”

执行 yarn application 连接失败且超时的错误解决

在AWS EMR使用多个Master高可用部署场景下,需要创建3台Master节点上。登录到其中一台节点,运行如下命令:

yarn application -list

在某些场景下会遇到如下报错。报错信息:

WARN ipc.Client: Failed to connect to server: ip-172-31-22-134.cn-northwest-1.compute.internal/172.31.22.134:8032: retries get failed due to exceeded maximum allowed retries number: 0
java.net.ConnectException: Connection refused
Continue reading “执行 yarn application 连接失败且超时的错误解决”

创建跨Region VPC Peering

一、前言

公有云各区域间都是完全隔离的,互通默认是通过Internet访问。如果有大量复制数据的需求,一般可以通过S3、RDS底层的跨区域复制实现,这种方式是通过AWS的全球骨干网传输,数据不暴露在Internet上。当然,跨区域复制这些,中国区不支持。原因大家懂的。

如果要方便操作,有一批EC2分别位于两个Region,EC2虚拟机之间要互通,那么在通过Internet就麻烦了。最佳实践就是跨Region的VPC Peering。注意,中国区也不支持。

如下图,VPC Peering示意图。

Continue reading “创建跨Region VPC Peering”

使用AWS CLI查看RDS性能参数

本文描述了如何通过AWS CLI查询Amazon Aurora MySQL的监控性能。

一、背景

Amazon Aurora MySQL通过Cloudwatch监控提供了一系列参数,主要参数名称可通过控制台获得。如下截图。

在对接AWS的使用SDK开发之前,可以先用AWS CLI进行验证,明确要查找的参数后,再进行代码工作。下面描述操作方法。

Continue reading “使用AWS CLI查看RDS性能参数”

使用Athena的排查ELB后的网站错误

一、排查思路

遇到网站访问错误,例如网站报告504错误,建议分段排查。如果网站有多个服务商组成,例如在AWS之前使用了CDN、WAF等,这需要分段排查。思路如下。

1、分段排查,分成 域名解析 -> 第三方WAF -> AWS ELB -> AWS EC2 几段。

2、各段打开LOG,根据LOG报错排查。

为了方便调查,这里将使用AWS Athena快速检索网站日志。

Continue reading “使用Athena的排查ELB后的网站错误”

Google Cloud Engine (GCE)与AWS的GPU产品对比

一、前言

看到下边这张图,能想起什么?

我第一时间想起,1991年卡梅隆导演《终结者2》中,研发Skynet原型的Cyerdyne Systems的Miles Dyson,他平时996周末在家还要007时候,桌面上那个神经网络模型,配合上1991年的电脑,5.25英寸软盘。。。

Continue reading “Google Cloud Engine (GCE)与AWS的GPU产品对比”

使用 AWS 云服务搭建 WordPress 博客 (中篇)- 全站SSL配置完成

点击这里阅读本文上篇

一、前言

全站SSL来啦!

这是用AWS搭建Wordpress的第二篇文章,重点讲述使用AWS的DNS服务(Route53)+ 证书服务(ACM)实现SSL防护主站和S3图床。配置过程也踩了不少坑,现在开始。

Continue reading “使用 AWS 云服务搭建 WordPress 博客 (中篇)- 全站SSL配置完成”

为EC2添加多个EIP公网地址并通过路由指定网络出口

一、前言

每个虚拟机(AWS叫EC2实例)默认都是有1个VPC内的私网IP,如果需要的话,可以为虚拟机绑定公网IP,在AWS上叫Elastic IP,简称EIP。一般情况下,一个虚拟机就绑定一个EIP。如果出现了需要在一个EC2实例上用多个EIP的场景,那么可以通过不同的方式实现。

Continue reading “为EC2添加多个EIP公网地址并通过路由指定网络出口”

挂载EBS磁盘到新的EC2上修复OS故障或恢复数据

一、前言

系统有时候不小心搞坏了,导致无法启动,不能SSH是常见现象之一。国内的云普遍提供VNC Console,直接连接到虚拟机的对应端口上,可以发起对虚拟机的物理控制台操作。那么,上次也提到过,AWS不提供这个功能,AWS认为你的虚拟机不应该坏掉。那么如何修复?

传统的手艺就是把磁盘卸载下来,挂到别的机器上,修复好损坏的文件,然后再拿回来装上。从DIY到VMware都适用这个方法。这个方法对AWS依然适用,且没有难度。本文编写是为了强调下2个需要注意的地方以防操作失败。

Continue reading “挂载EBS磁盘到新的EC2上修复OS故障或恢复数据”

在Amazon Linux 2操作系统上为PHP 8.2版本安装PHP对SQL Server支持库

更新于2023年4月23日,Amazon Linux 2 + PHP 8.2验证通过。

一、前言

在某些测试场景下,例如:

  • 测试AWS的SCT工具对Microsoft SQL Server(以下简称MSSQL)的schema迁移
  • 测试Babelfish对MSSQL的兼容

此时可能需要一个基于PHP的demo应用来模拟环境。此时可选择WordPress的SQL Server版本(Wordpress官方是MySQL的)。由于Wordpress是PHP编写的,因此就需要为PHP增加SQL Server库的支持,才能通过Wordpress连接到SQL Server生成模拟数据。

在安装中发现,新版本PHP(7和8)默认不对MSSQL的支持,没办法一条命令就装好了。而微软已经拥抱开源了,Linux版本DotNET framework,Linux版本SQL Server,Windows 10上的Linux Subsystem,Windows的新Terminal,微软Azure上的一堆Linux服务器,MacOS上的VSCode,微软技术栈都提供了Linux支持。因此这里可以为PHP安装SQL Server模块。

下边开始操作。

Continue reading “在Amazon Linux 2操作系统上为PHP 8.2版本安装PHP对SQL Server支持库”

AWS Solution Architect Associate 通过指南

我是大概几个月前开始初步浅显的接触AWS的公有云了,并开通了个人付费账号做测试,但并未以生产环境的高标准去部署和管理过系统。这次搭建blog并长期维护,也是一种对产品更深入的了解和学习的过程。

最近通过了AWS Solution Architect Associate认证考试。考试选的英文版本,一次通过。这里总结汇总经验和教训如下。

Continue reading “AWS Solution Architect Associate 通过指南”

关于AWS AUORA FOR MYSQL MULTI MASTER 多活数据库的技术解析

AWS Aurora产品线在2019年8月新推出了Multi Master多活数据库,俗称双活,或者Active-Active集群。这款产品目前中文资料比较少,因此翻译整理如下。整篇文档不涉及产品机密,都使用官方公开的Blog和文档库的英文素材整理而成。供大家参考。

Continue reading “关于AWS AUORA FOR MYSQL MULTI MASTER 多活数据库的技术解析”

使用 AWS 云服务搭建 WordPress 博客 (上篇)

一、前言

搭建Blog有很多种方式,可以选择:

  • 自己开发代码。是个很好的代码学习过程,但时间长,日后还要自己维护代码。
  • 用SaaS的平台。最简单,最快速,最适合企业IT的方式,后续也不用维护。但是缺点是,很多知识没学到,没办法练手。
  • 用成熟的blog程序搭建IaaS和PaaS资源。难度较低,过程中可以学习到大量IaaS和PaaS平台的支持,丰富的第三方插件可以调用,后续也可以结合云服务商的特点,自己给自己加戏。就举一个例子来说,上传到S3的图片加水印,写段Lambda代码以server-less无服务器方式触发,done。这种扩展性,适合没太多时间维护代码,却又想动手玩点什么的方式。
Continue reading “使用 AWS 云服务搭建 WordPress 博客 (上篇)”