通过Etcd动态修改CoreDNS数据

上一篇介绍了如何通过CoreDNS来解析我们自己的域名请求,当时是通过配置文件的形式来配置DNS数据的。这篇我们来看如何通过Etcd来完成同样的工作。 如果能使用Etcd来配置数据,好处就特别多了,例如可以动态修改,可以做成分布式DNS,可以做到高可用等等。下面就是配置步骤。 首先需要搭建一个Etcd集群,这里因为是实验性质,所以我们只搭建个单节点的Etcd。推荐搭建使用coreos操作系统,因为etcd是coreos的产品,所以支持最高,使用最简单。下面是etcd的service文件,在/etc/systemd/system/目录中编辑一个etcd.service,然后粘贴下面内容: [Unit] Description= »

配置Coredns的一些心得

今日由于工作需要,要配置内网DNS。经过一轮调研之后,发现目前市面使用率最高的DNS开源服务器是bind9。但bind9不支持插件,也不提供RestAPI,虽然稳定高效,但不利于业务场景。所以转而考虑Google提供的开源dns-coredns,coredns是skydns的继承者(kubernetes当前在使用的dns服务),提供插件机制。 本文就分享一些配置coredns的心得。 首先介绍业务场景,这个场景很简单,在内网DNS中负责解析所有针对*.mydomain.com的查询请求,并返回相对应的A记录。其它查询请求直接转交给上级DNS。 好,让我们看一下如何使用coredns来完成这个需求。首先启动coredns,建议直接使用官方提供的docker镜像: docker run »

在coreos中如何使用shadowsocks 客户端?

首先明确一点,我放弃在coreos通过容器的方式启动shadowsocks客户端的方案了。 封装shadowsocks客户端不是问题,但在宿主机终端环境中,无法通过shadowsocks客户端翻墙,我猜测原因可能是容器中shadowsocks绑定的是socks5协议,但在宿主机端,docker绑定的是tcp协议,造成两者协议不匹配。后期我会考虑在镜像中进行协议转换,看看是不是这个问题。 12.20 update 的确是因为协议不同导致的转发失效,我构建了一个docker image来解决这个问题:vikings/shadowsocks 执行下面命令来启动镜像: docker run -d -p 8118:8118 »

手动升级Coreos版本

升级之前,确认数据完成了持久化,防止丢数据! 一般来说,如果是线上coreos服务器,会关闭自动升级功能。如果确实需要升级版本了,一键执行这个命令 update_engine_client -check_for_update 如果报错,显示 Could not get owner of name 'com.coreos.update1': no »

程序员值得关注的网站

LintCode ——在线刷题网站,阶梯式训练,可帮助你更快速深入地了解各类面试题型,提供专业导师写的最优代码作为参考 (Lintcode 标准答案查询——lintcode 的参考答案网站,提供最优解) Codecademy——包含在线编程练习和课程视频 CodeHS——包含数据结构、游戏设计、动画类编程题 Codechef——题目难度从入门、简单、中等到挑战都有,会举办竞赛,获胜者会有奖金 Programming Praxis——此网站编程练习不保存分数、不排名、 »