我刚刚开始学习 Docker,有些东西让我很困惑。正如我在 Docker 的网站上所读到的,容器不同于虚拟机。据我所知,容器只是一个沙箱,在其中运行整个隔离的文件系统。
我还读到容器没有安装来宾操作系统。相反,它依赖于底层操作系统内核。
所有这些都很好。我感到困惑的是,有一些以操作系统命名的 Docker 镜像。我们看到像 Ubuntu、Debian、Fedora、CentOS 等镜像。
我的观点是:这些图像是什么,真的吗?基于 Debian 映像创建容器与创建虚拟机并安装 Debian 有何不同?
我认为容器没有安装来宾操作系统,但是当我们创建映像时,我们将它们基于某个以一个操作系统命名的映像。
此外,在我看到的示例中,我们docker run ubuntu echo "hello world"似乎正在使用 Ubuntu 启动 VM 并使其运行命令echo "hello world"。
以同样的方式,当我们这样做时docker run -it ubuntu /bin/bash,似乎我们正在使用 Ubuntu 启动虚拟机并使用命令行访问它。
无论如何,这些以操作系统命名的图像是关于什么的?使用其中一个映像运行容器并使用相应的来宾操作系统启动 VM 有什么不同?
我们只是与主机操作系统共享内核的想法(因此我们可以访问底层机器硬件资源,而无需虚拟化硬件),但仍然按顺序使用容器上每个不同系统的文件和二进制文件支持我们想要运行的任何应用程序?
我在 Heroku 文档中遇到了这个页面......
裸域,也称为裸域或顶级域,是通过 A 记录在 DNS 中配置的,当用于高可用性环境(如大型本地数据中心、云基础设施服务和 Heroku 等平台)时,会产生严重的可用性影响。
为了获得最大的可扩展性和弹性,应用程序应避免裸域,而应仅依赖基于子域的主机名。
这里有人说企业吗?他们警告的“可用性影响”是什么?
(我注意到http://stackoverflow.com没有问题,所以显然在这个问题上有可行的替代哲学。)
我在 Amazon S3 存储桶中有数百万个文件,我希望尽可能以最低成本或免费将这些文件移动到其他存储桶和文件夹。所有存储桶都在同一区域中。
我怎么能做到?
从这个问题衍生出来:我真的需要 MS Active Directory 吗?2014年的新方向。
考虑到基本的 Windows 基础架构:
现在,让我们把它全部撕掉,并决定我们要上云。我们已签约将 Exchange/Sharepoint/File Services 移至 Office 365。SQL 现在也将托管在 Azure 之类的设备上。我们已经摆脱了对 AD-DNS 的需求,只需通过一个简单的 Windows DNS 服务器即可运行所有内容。我们仍然需要 802.1X,如果可能的话,我们希望对我们的各种云应用程序进行 SSO。本土和 3rd 方内部应用程序可能会保留,但能够使用内部用户数据库而不是 AD 身份验证
问题是……我们真的需要 Active Directory 吗?
或者更确切地说,AD 内部部署或什至通过 Azure 或类似 (ADFS) 托管,或者通过 Azure 或类似工具在托管 VM 上运行 ADDS。我们可以/应该看看其他类似 3rd 方 SSO 选项的东西,例如http://www.onelogin.com/partners/app-partners/office-365/或类似的可以提供 SSO 功能的东西,即使它很简单每个用户的 LastPass …
我在 AWS 上的 EC2 机器上部署了一个 API。传入的 HTTPS 请求被传递到弹性负载均衡器。负载均衡器处理 SSL,并将请求传递给 Nginx 服务器,该服务器根据请求 URL 将请求代理到特定服务器。
Nginx 机器需要大量维护工作,尤其是服务器 IP 地址更改时。此外,基于 URL 的代理路由看起来确实是负载均衡器的自然延续。拥有一个健全的基于 Web 或基于 API 的界面来控制 URL 路由将是一个巨大的福音。
是否有任何基于云的路由解决方案可以通过 URL 模式代理 HTTP 请求,替代我的 Nginx 机器?
VPS(虚拟专用服务器)、云服务器和专用服务器之间究竟有什么区别?我很难找到一个没有广告的简洁解释。
我正在为我的团队寻找自动化部署解决方案,并且过去几天一直在与 Chef 一起玩。我已经能够使用 Chef-solo 从基础 Red Hat VM 运行一个简单的 Web 应用程序。
我们的最终目标是使用 Chef(或其他系统)在我们运行构建时自动将应用程序拓扑部署到云中。我们的流程基本上是这样运行的:
让 Chef 服务器运行有什么好处和/或用例?
与使用 Chef-solo 并拥有从 SCM 提取食谱的脚本相比,使用 Chef 服务器持有并从 SCM 获取食谱有什么主要好处吗?
我们正在寻求切换到基于密钥的 SSH 登录管理,并想知道是否有任何密钥管理系统可以让我们在全球范围内集中管理访问密钥。
理想情况下,系统应该允许为每个客户端发布密钥,并在需要时撤销它们,即时更新服务器机器密钥。
有谁知道这样的系统,无论是商业的还是开源的?
注意:为了澄清,我们需要对大量云服务器(类 EC2)和少量服务用户进行密钥管理。我猜下面的 LDAP + 补丁建议可能是要走的路。
首先声明,这不是我的想法,我不想讨论这样的行为是否合理。
但是,对于一个公司来说,有没有办法阻止员工访问公有云服务呢?特别是,他们不应该能够将文件上传到网络上的任何地方。
阻止 HTTPS 可能是第一个简单但非常激进的解决方案。使用 IP 地址黑名单也是不够的。可能需要某种软件来过滤内容级别的流量。代理可能会有所帮助,以便能够过滤 HTTPS 流量。
到目前为止,这些是我的想法。你怎么认为?有任何想法吗?
Puppet需要被管理的客户端(puppet)和服务器(puppetmaster)之间的证书。您可以在客户端手动运行,然后进入服务器对证书进行签名,但是如何为集群/云机器自动执行此过程?