aws使用kops方式部署k8s

1.基础准备

yum install wget安装kops
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install ./epel-release-latest-*.noarch.rpm
yum -y install python-pippip install --upgrade pippip install awscli安装kubectlcurl -o kubectl https://amazon-eks.s3-us-west-2.amazonaws.com/1.10.3/2018-07-26/bin/linux/amd64/kubectl 
chmod +x ./kubectl
mkdir $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$HOME/bin:$PATH
echo ‘export PATH=$HOME/bin:$PATH‘ >> ~/.bashrc

2.配置aws cli

aws configure
AWS Access Key ID [None]: 账号》用户》访问密钥
AWS Secret Access Key [None]: 账号》用户》访问密钥
Default region name [None]: 默认的地区名称
Default output format [None]:

  

3.创建aws-group

aws iam create-group --group-name kops

4.给 kops组授权

aws iam attach-group-policy --policy-arn arn:aws:iam::aws:policy/AmazonEC2FullAccess --group-name kops
aws iam attach-group-policy --policy-arn arn:aws:iam::aws:policy/AmazonRoute53FullAccess --group-name kops
aws iam attach-group-policy --policy-arn arn:aws:iam::aws:policy/AmazonS3FullAccess --group-name kops
aws iam attach-group-policy --policy-arn arn:aws:iam::aws:policy/IAMFullAccess --group-name kops
aws iam attach-group-policy --policy-arn arn:aws:iam::aws:policy/AmazonVPCFullAccess --group-name kops

  

5.创建aws用户

aws iam create-user --user-name kops

6.把kops用户加入kops组

aws iam add-user-to-group --user-name kops --group-name kops

7.给kops用户创建accesskey

aws iam create-access-key --user-name kops      ====保存acessid和key

8.用kops用户登录

aws configure  ===填入accesskey等

9.创建s3存储桶,Kops把K8s集群的配置存储在AWS的S3中,每一个集群的配置对应于一个S3文件,创建一个S3的bucket用于存储集群的配置。

export BUCKET=clust.k8s.local
aws s3api create-bucket     --bucket clust.k8s.local     --region cn-north-1     --create-bucket-configuration  LocationConstraint=cn-north-1
aws s3api put-bucket-versioning --bucket clust.k8s.local  --versioning-configuration Status=Enabled

  

10.定义配置的url

export KOPS_STATE_STORE=s3://clust.k8s.local

11.生成客户ssh-key

ssh-keygen -t rsa -C "[email protected]"

12.部署集群

/usr/local/bin/kops create cluster      --name=clust.k8s.local      --image=ami-025b59ca46aee99dd      --zones=cn-north-1b      --master-count=3      --master-size="c5d.large"      --node-count=1 \
--node-size="m4.4xlarge" \ --vpc=vpc-0c5c4664b4b258e79 \ --networking=calico \ --ssh-public-key="~/.ssh/id_rsa.pub"

  

13.修改配置

kops edit cluster clust.k8s.local

spec: sshKeyName: <your ssh key name>

14.创建kops update cluster clust.k8s.local --yes

15.查看

[[email protected] ~]# kops get ig
Using cluster from kubectl context: clust.k8s.local

NAME			ROLE	MACHINETYPE	MIN	MAX	ZONES
master-cn-north-1b-1	Master	c5d.large	1	1	cn-north-1b
master-cn-north-1b-2	Master	c5d.large	1	1	cn-north-1b
master-cn-north-1b-3	Master	c5d.large	1	1	cn-north-1b
nodes			Node	m4.4xlarge	1	1	cn-north-1b

  

-----------

原文地址:https://www.cnblogs.com/liuchunling/p/10979383.html

时间: 2024-08-29 05:58:48

aws使用kops方式部署k8s的相关文章

k8s实践17:监控利器prometheus helm方式部署配置测试

监控利器prometheus helm方式部署配置测试 1.部署helm 部署helm参考方法 后面使用helm部署grafana和prometheus,因此首先需要部署helm,保证helm能正常使用. 部署helm客户端过程见下: [[email protected] helm]# curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 > get_helm.sh % Total % Receive

一组图表告诉你,AWS为什么刚刚启动了K8S 容器项目

K8S技术社区正式上线啦!快快关注找到志同道合的小伙伴! 2017年3月,AWS与K8S(Kubernetes)创业公司Heptio联合启动了K8S Quick Start,Heptio将帮助AWS解决方案架构团队设计K8S参考架构. 此前,K8S已被应用于Azure.DC/OS以及几乎所有知名的云平台,而Amazon Web Services(AWS)是唯一的例外.Amazon在2016年的re:Invent大会上发布AWS Blox的时候还曾阻击K8S.Blox是一个开源项目,支持用户在Am

Kubernetes学习之路(一)之Kubeadm部署K8S集群

一个星期会超过多少阅读量呢??发布一篇,看看是否重新在51上写学习博文,有老铁支持嘛?? 使用kubeadm部署集群 节点名称 ip地址 部署说明 Pod 网段 Service网段 系统说明 k8s-master 192.168.56.11 docker.kubeadm.kubectl.kubelet 10.244.0.0/16 10.96.0.0/12 Centos 7.4 k8s-node01 192.168.56.12 docker.kubeadm.kubelet 10.244.0.0/1

微服务架构 - 离线部署k8s平台并部署测试实例

一般在公司部署或者真实环境部署k8s平台,很有可能是内网环境,也即意味着是无法连接互联网的环境,这时就需要离线部署k8s平台.在此整理离线部署k8s的步骤,分享给大家,有什么不足之处,欢迎指正. 1.准备环境 这次离线部署k8s的版本为v1.10.1,同时docker的版本为17.12.0-ce,不过本文章不介绍如何离线部署docker,如果大家要看的话,可以看本人之前写的文章<CentOS7离线部署docker> 本人准备的环境是3台虚拟机,也即1台master节点,2个node节点,ip及

kubernetes 1.14.2 kubeadm 方式部署

kubernetes 1.14.2 kubeadm方式部署 主机 192.168.100.111 k8s-master192.168.100.112 k8s-node1192.168.100.113 k8s-node2 基本环境 systemctl stop firewalld ystemctl disable firewalld sed -i 's/enforcing/disabled/' /etc/selinux/config setenforce 0 swapoff -a vim /etc

使用kubeadm部署K8S v1.17.0集群

kubeadm部署K8S集群 安装前的准备 集群机器 172.22.34.34 K8S00 172.22.34.35 K8S01 172.22.34.36 K8S02 注意: 本文档中的 etcd .master 节点.worker 节点均使用这三台机器: 需要使用 root 账号执行这些命令: 未做特殊说明,就表示集群的所有机器都要进行操作 查看CentOS版本 [[email protected] ~]# cat /etc/redhat-release CentOS Linux releas

Kubernetes/3.使用Kubeadm部署k8s集群

使用Kubeadm部署k8s集群 kubeadm是一个提供了"kubeadm init"和"kubeadm join"最佳实践命令,且用于快速构建一个kubernetes集群的工具,你可以使用此工具快速构建一个kubernetes学习环境.通过本章节的学习,你将能够使用kubeadm工具,成功构建出一个基础的kubernetes集群环境. 环境准备 Hosts文件准备 Docker环境配置 其他准备工作 使用Kubeadm部署k8s集群 参考文档 备注 环境准备 i

K8S简介+CentOS7 部署K8S集群

一.前言 Kubernetes(简称K8S)是开源的容器集群管理系统,可以实现容器集群的自动化部署.自动扩缩容.维护等功能.它既是一款容器编排工具,也是全新的基于容器技术的分布式架构领先方案.在Docker技术的基础上,为容器化的应用提供部署运行.资源调度.服务发现和动态伸缩等功能,提高了大规模容器集群管理的便捷性.[Kubernetes是容器集群管理工具] 二.Kubernetes的架构图 三.重要概念 3.1.cluster cluster是 计算.存储和网络资源的集合,k8s利用这些资源运

openshift 4.3中安装helm3并通过helm方式部署应用

openshift 4.3中安装helm3并通过helm方式部署应用 简介 Helm是一个命令行界面(CLI)工具,可简化将应用程序和服务部署到OpenShift Container Platform集群的过程. Helm使用一种称为chart的包格式. Helm chart 是描述OpenShift容器平台资源的文件集. 在openshift中部署Helm,我们可以获得以下效益: 充分利用k8s helm部署大量ocp operator hub没有的应用,比如gitlab新版本就只支持helm