Kubernetes中文文档

AWS EC2快速入门

译者:李加庆

前提条件

1.您需要一个AWS账户,访问http://aws.amazon.com获得。

2.安装并配置AWS命令行界面。

3.你需要一个拥有EC2全部权限的AWS实例配置文件和角色。

注:这个脚本默认使用“默认”的AWS实例配置文件,您可以使用 AWS_DEFAULT_PROFILE 环境变量来明确地配置AWS实例配置文件:

export AWS_DEFAULT_PROFILE=myawsprofile

启动集群

支持程序: get-kube

#使用 wget

export KUBERNETES_PROVIDER=aws; wget -q -O - https://get.k8s.io | bash

#使用 cURL

export KUBERNETES_PROVIDER=aws; curl -sS https://get.k8s.io | bash

注:这个脚本调用cluster/kube-up.sh, 而cluster/kube-up.sh反过来使用cluster/aws/configdefault.sh调用cluster/aws/util.sh。

这个过程需要约5至10分钟。一旦集群启动,你的主虚拟机和节点虚拟机的IP地址将被打印,同样地,有关运行在集群中的默认服务(监控,日志,DNS)的信息也会被打印。用户凭据和安全令牌都写在 〜/.kube/config 中,它们对使用CLI或HTTP基本认证是必要的。

默认情况下,该脚本将会使用在美国西部-2A(俄勒冈州)运行了两个t2.micro实例的ubuntu,提供一个新的VPC和一个四节点的k8s集群。您可以根据下面的文本,重写定义在configdefault.sh中的变量来改变这种默认的行为:

export KUBE_AWS_ZONE=eu-west-1c
export NUM_MINIONS=2
export MINION_SIZE=m3.medium
export AWS_S3_REGION=eu-west-1
export AWS_S3_BUCKET=mycompany-kubernetes-artifacts
export INSTANCE_PREFIX=k8s
...

该脚本也会尝试创建或者复用名为“kubernetes”的密钥对和名为“kubernetesmaster”及“kubernetes-minion”的IAM文件。如果这些文件已经存在,请确保您想要在这里使用它们。

注:如果使用已存在的“kubernetes”密钥对,那么您必须设置AWS_SSH_KEY密钥指向您的私有密钥。

替代方案

这里提供一个例子,可以让你使用EC2用户数据,建立一个基于CoreOS的Kubernetes集群。

开始使用您的集群

命令行管理工具:kubectl

集群启动脚本将会在您的工作站留下一个kubernetes目录。可以与之替代的是,您还可以从这个页面下载最新的Kubernetes发行版。 接下来,在PATH中添加适当的二进制文件夹,以便可以访问kubectl:

# OS Xexport PATH=<path/to/kubernetes-directory>/platforms/darwin/amd64:$PATH
# Linuxexport PATH=<path/to/kubernetes-directory>/platforms/linux/amd64:$PATH

此工具的最新文档页面可以在这里找到:kubectl manual。 默认情况下,kubectl将使用集群启动时生成的kubeconfig文件对API进行身份验证。更多相关信息,请阅读kubeconfig文件。

示例

看一个简单的nginx示例,尝试使用一下您的新集群。 “Guestbook”应用程序是另外一个流行的Kubernetes入门示例: guestbook 例子。 更多完整的应用程序,请查看示例目录。

拆除集群

确保您用来提供给集群的环境变量仍在输出,然后调用下面kubernetes目录中的脚本:

cluster/kube-down.sh

补充阅读

更多关于管理和使用Kubernetes集群的细节请参见Kubernetes文档