in AWS

AWS Route53里使用Godady注册的域名

AWS的Route53是可以注册域名的,但是如果在外部注册的域名怎么在Route53里使用呢,这里使用外网的DNS服务的Godaddy注册域名,并在AWS的Route53里使用。

注册域名并下载Zonefile

在Godaddy里注册域名xionghuilin.club,并在管理域名里下载Zonefile, 自动下载并命名为xionghuilin.club.txt

在Route53里创建hosted zone

在Route53里创建hosted zone,会自动生成SOA和NS,如下:

Create hosted zone

在Godaddy中添加新生成的NS

以下四条NS需要添加到Godaddy中,xionghuilin.club的name server如下:

ns-727.awsdns-26.net. 
ns-1182.awsdns-19.org. 
ns-1565.awsdns-03.co.uk. 
ns-211.awsdns-26.com.

这里在Godaddy里添加name server的时候要去掉最后的点,不然输入会不成功。

结果如下:

GoDaddy

创建两个EC2实例

使用以下启动脚本在新加坡创建一个EC2的实例,public IP是18.141.25.16

#!/bin/bash
yum update -y
yum install httpd -y
service httpd start
chkconfig httpd on
cd /var/www/html
echo "<html><h1>Hello Xiong! This is the Singapore Web Server</h1></html>" > index.html

使用以下启动脚本在South America (São Paulo)创建另一个EC2的实例,public IP是52.67.73.251

#!/bin/bash
yum update -y
yum install httpd -y
service httpd start
chkconfig httpd on
cd /var/www/html
echo "<html><h1>Hello Xiong! This is the South America (São Paulo) Web Server</h1></html>" > index.html

检查两个EC2的httpd服务器都正常工作,如下:
EC2working

在Route53里导入Zone file

有一个Import Zone File按钮,导入后再添加一个Record setRouting Policy以下可以选择,
Simple
Weighted
Latency
Failover
Geolocation
Multivalue Answer
在这里选择Geolocation比较好看效果,把两个公网IP地址输入到
18.141.25.16
52.67.73.251
注:以下设置地理位置的时候貌似要设置到国家。

Create a record

测试

以下测试结果是根据地理位置,从新加坡访问xionghuilin.club就一直会访问新加坡的服务器。

Test result

术语

以下是一些术语的解释:

==SOA==, Start of Authority record

==NS==, Name Server Records

==A Record== –> Address Record

==CName== is Canonical Name Canonica: 意思是权威,公认的, CName can be used to resolve one domain name to another.

==Alias Record==:

Alias records are used to map resource record sets in your hosted zone to Elastic Load Balancers, CloudFront Distributions, or S3 buckets that are configured as websites.

==Key difference==: A CName cannot be used for naked domain names (Zone Apex record., you can’t have a CName for http://xionghuilin.com, it must be either A record or an Alias

最后,这里并没有使用ELB, Elastic Load Balancer, 还可以在Route53里创建Health checks,也并没有测试。

Reference

Migrating a Domain to Amazon Route53

Visual Studio Community version 2019打开旧VS2008项目的两个问题

最近用Visual Studio Community version 2019打开Visual Studio 2008旧项目的碰到两个问题,并解决。 问题1:提示缺少MFC Library Visual Studio Community version 2019默认没有安装MFC,那么安装MFC Library,下载vs_community__1819445496.1557801037.exe,在Visual Studio Installer界面中点击Modify按钮,再选择安装安装以下包: ==C++ MFC for latest v142 build tools (x86 & x64)== 安装后问题解决! 安装界面如下: 问题2:编译出现error C2338 问题1解决后出现编译问题, Severity Code Description Project File Line Suppression State ==Error C2338== va_start argument must not have reference type and must not be parenthesized C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.23.28105\include\vadefs.h 151 出错代码在以下位置,也不是我写的代码: template <typename _Ty> struct __vcrt_assert_va_start_is_not_reference { static_assert(!__vcrt_va_list_is_reference<_Ty>::__the_value, "va_start argument must not have reference type and must not be parenthesized"); }; 参考链接Compilation failes on VS2015, 使用以下代码: #define _CRT_NO_VA_START_VALIDATION 应该是强制关闭检查,可以通过以下做法,在项目的Preprocessor界面,加入_CRT_NO_VA_START_VALIDATION设置,如下,问题解决,旧项目成功编译执行。 Reference 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法 MFC libraries are required for this project Compilation failes on VS2015 error C2338

最近及去年看的几部电影

哪吒之魔童降世,这部动画片电影火并不是没有原因,确实很好看,感觉比以前看好莱坞的大制作动画片好看,因为它更贴近我们自己的文化,熟悉的故事,熟悉的角色,幽默诙谐的情节,再加上强大的特效。 希望中国展现出文化自信,以后会有更多好的动画片。 My People, My Country, 我和我的祖国 (电影),典型的爱国宣传电影,中国重大历史事件为背景的七个故事,对于有民族认同感的人来说还是很感人的。 復仇者聯盟:終局之戰,对漫威的知识匮乏,只知道找寻五颗宝石,一通乱打,最后钢铁人死了,我要看着睡着了。 犬之島,动画片,日本男孩寻找爱犬的故事,不错。 头号玩家- Ready Player One,对于喜欢玩游戏的人来说是一部好电影。 早上看完电影后在Paya Lebar的PostCentre的商场里吃午饭。 顺便去以前公司的办公室门外来看看Singapore Post Center #12-05,十多年过去了,已是物是人非。 哪吒之魔童降世-维基百科 我和我的祖国 (电影)-维基百科 復仇者聯盟:終局之戰-维基百科 犬之島- 维基百科 头号玩家- 维基百科

FreeIPA安装后Named service无法启动 – RHEL6.5

在RHEL6.5的环境下,安装FreeIPA后Named service无法启动。错误如下: Configuring DNS (named) [1/9]: adding DNS container [2/9]: setting up our zone [3/9]: setting up reverse zone [4/9]: setting up our own record [5/9]: setting up kerberos principal [6/9]: setting up named.conf [7/9]: restarting named named service failed to start [8/9]: configuring named to start on boot [9/9]: changing resolv.conf to point to ourselves Done configuring DNS (named).