--- reviewers: - justinsb - clove title: 在 AWS EC2 上运行 Kubernetes content_template: templates/task --- {{% capture overview %}} 本页介绍如何在 AWS 上安装 Kubernetes 集群。 {{% /capture %}} {{% capture prerequisites %}} 要在 AWS 上创建 Kubernetes 集群,您需要一个访问密钥 ID 和一个来自 AWS 的 Secret 访问密钥。 ### 支持的生产等级工具 * [conjure-up](/docs/getting-started-guides/ubuntu/) 是 Kubernetes 的一个开源安装程序,可以在 Ubuntu 上创建本机 AWS 集成的 Kubernetes 集群。 \ * [Kubernetes 操作](https://github.com/kubernetes/kops) - 生产级 K8s 安装、升级和管理。支持在 AWS 中运行 Debian、Ubuntu、CentOS 和 RHEL。 * [CoreOS 结构](https://coreos.com/tectonic/)包括开源[结构](https://github.com/coreos/tectonic-installer),它在 AWS 上创建带有 Linux 容器节点的 Kubernetes 集群。 * CoreOS 起源于 Kubernetes 孵化器,Kubernetes 孵化器维护 [一个 CLI 工具 kube-aws](https://github.com/kubernetes-incubator/kube-aws),它使用 AWS 工具:EC2、CloudFormation 和 Autoscaling 创建和管理 [Linux 容器](https://coreos.com/why/)节点的 Kubernetes 集群。 {{% /capture %}} {{% capture steps %}} ## 开始您的集群 ### 命令行管理工具:kubectl 集群启动脚本将在您的工作站上留下一个 `kubernetes` 目录。 或者,您可以从[这个页面](https://github.com/kubernetes/kubernetes/releases)下载最新的 Kubernetes 版本。 接下来,将相应的二进制文件夹添加到您的 `PATH` 中访问 kubectl: ```shell # macOS export PATH=/platforms/darwin/amd64:$PATH # Linux export PATH=/platforms/linux/amd64:$PATH ``` 这个工具的最新文档页面可以在这里找到:[kubectl 手册](/docs/user-guide/kubectl/) 默认情况下,`kubectl` 将使用集群启动期间生成的 `kubeconfig` 文件对 API 进行身份验证。 更多信息,请阅读 [kubeconfig 文件](/docs/tasks/access-application-cluster/configure-access-multiple-clusters/) ### 例子 查看一个[简单的 nginx 示例](/docs/tasks/run-application/run-stateless-application-deployment/)来试用您的新集群。 "留言板"应用程序是 Kubernetes 的另一个流行示例:[留言板示例](https://github.com/kubernetes/examples/tree/{{< param "githubbranch" >}}/guestbook/) 有关更完整的应用程序,请查看[示例目录](https://github.com/kubernetes/examples/tree/{{< param "githubbranch" >}}/) ## 扩展集群 `kubectl` 不支持添加和删除节点。您仍然可以通过[自动扩缩功能组](http://docs.aws.amazon.com/autoscaling/latest/userguide/as-manual-scale.html) 中的 `Desired` 和 `Max` 属性手动调整节点的数量,该属性是在安装过程中创建的。 ## 拆除集群 确保用于提供集群的环境变量已经导出,然后在 `kubernetes` 目录中调用以下脚本: ```shell cluster/kube-down.sh ``` ## 支持级别 IaaS 供应商 | 配置管理 | 操作系统 | 网络 | 文档 | 合规 | 支持级别 -------------------- | ------------ | ------------- | ---------- | --------------------------------------------- | ---------| ---------------------------- AWS | kops | Debian | k8s (VPC) | [文档](https://github.com/kubernetes/kops) | | 社区 ([@justinsb](https://github.com/justinsb)) AWS | CoreOS | CoreOS | flannel | [文档](/docs/getting-started-guides/aws) | | 社区 AWS | Juju | Ubuntu | flannel, calico, canal | [文档](/docs/getting-started-guides/ubuntu) | 100% | 商业、社区 有关所有解决方案的支持级别信息,请查看[解决方案表](/docs/getting-started-guides/#table-of-solutions)。 ## 进一步阅读 有关管理和使用 Kubernetes 集群的详细信息,请参阅 [Kubernetes 文档](/docs/)。 {{% /capture %}}