首先介绍下如何在AWS上使用Kubernetes编排的Tungsten Fabric集群部署沙盒,15分钟就可以搞定。Tungsten Fabric集群由部署节点、一个控制器节点、两个作为EC2 VM运行的计算节点组成。
要求
在开始使用沙盒之前,必须订购CentOS 7 x86_64 HVM的正式映像。
所选区域必须至少具有两个可用区。
登录到AWS控制台后,请转到AWS Marketplace 的URL。
点击“继续订购”,然后点击“接受条款”。
*如果您以IAM用户身份连接,您将无法在AWS Marketplace中执行任务,请查看文档末尾的附录以获取相关解决方案。
步骤
1,只需单击以下按钮即可创建沙箱(以AWS CloudFormation堆栈形式运行):
Launch Stack
2,点击Next。
3,指定以下信息:
您的Sandbox UI的管理员密码
EC2实例类型
https://aws.amazon.com/ec2/instance-types
密钥对(用于访问命令行实用程序)
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
4,点击两次Next。
5,在页面底部选择复选框“ Acknowledge ...”。
6,点击创建。
7,重新加载堆栈页面并等待堆栈的CREATE_COMPLETE状态。
8 ,选中“Stack”(复选框),然后在底部窗格中选中“Output”选项卡,以找到Sandbox UI的URL。

9,转到Sandbox UI URL并等待部署(该站点将在创建堆栈后的2-3分钟内可用)。
10 ,成功部署后,沙盒界面将提供信息以连接到Tungsten Fabric和Kubernetes服务。
11,使用Tungsten Fabric用户界面URL,密码登录进行启动。
重要信息:沙盒使用完毕后,可以使用DELETE SANDBOX按钮清除所有使用的资源。

为了双重安全,您可以在删除后检查AWS Interface中的剩余资源。
访问集群:
您可以使用在堆栈启动期间指定的ssh密钥来访问具有“centos”用户名的任何VM。

沙盒界面将提供有关如何连接到Tungsten Fabric UI和Kubernetes仪表板的信息。
如果要使用IAM用户而不是使用root帐户登录,则需要为该用户授予额外的特权。
登录到AWS控制台。
在控制台左上方的AWS服务搜索中,找到IAM并选择它。
在左侧导航栏中,单击需要更改权限的用户。
在右下角单击“Add inline policy)”。
进入“JSON”页签,使用以下内容替换策略内容:

检查策略。添加策略名称。创建策略。
Tungsten Fabric CNI可以通过多种配置方案安装在Kubernetes集群上。
这里描述最简单的方法:单个基于yaml的安装。
先决条件
1.一个正在运行的Kubernetes集群
有很多方法可以安装Kubernetes。最简单的是kubeadm:
https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/
或者,如果您希望将Tungsten Fabric和K8s集群一起安装,可以使用Tungsten Fabric Ansible Deployer:
https://github.com/Juniper/contrail-ansible-deployer/wiki/Contrail-microservice-installation-with-kubernetes
2.所有节点上的Docker版本不低于1.24
3.Linux内核版本3.10.0-957
Tungsten Fabric转发使用内核模块来提供高吞吐量和低延迟的网络连接。
最新的内核模块是针对3.10.0-957内核编译的。
安装
将Tungsten Fabric安装到Cento或者Ubuntu上只需要一个步骤。
注意:将x.x.x.x替换为Kubernetes Master节点的IP。
对于在Centos系统上安装,请使用以下的命令:
{% raw %}
K8S_MASTER_IP=x.x.x.x; CONTRAIL_REPO="docker.io\/opencontrailnightly"; CONTRAIL_RELEASE="latest"; mkdir -pm 777 /var/lib/contrail/kafka-logs; curl https://raw.githubusercontent.com/Juniper/contrail-kubernetes-docs/master/install/kubernetes/templates/contrail-single-step-cni-install-centos.yaml | sed "s/{{ K8S_MASTER_IP }}/$K8S_MASTER_IP/g; s/{{ CONTRAIL_REPO }}/$CONTRAIL_REPO/g; s/{{ CONTRAIL_RELEASE }}/$CONTRAIL_RELEASE/g" | kubectl apply -f -{% endraw %}
对于在Ubuntu上安装,请使用以下命令:
K8S_MASTER_IP=x.x.x.x; CONTRAIL_REPO="docker.io\/opencontrailnightly"; CONTRAIL_RELEASE="latest"; mkdir -pm 777 /var/lib/contrail/kafka-logs; curl https://raw.githubusercontent.com/Juniper/contrail-kubernetes-docs/master/install/kubernetes/templates/contrail-single-step-cni-install-ubuntu.yaml | sed "s/{{ K8S_MASTER_IP }}/$K8S_MASTER_IP/g; s/{{ CONTRAIL_REPO }}/$CONTRAIL_REPO/g; s/{{ CONTRAIL_RELEASE }}/$CONTRAIL_RELEASE/g" | kubectl apply -f -
看看发生了什么?
太棒了!欢迎来到Tungsten Fabric。
您已经在Kubernetes节点中安装了Tungsten Fabric CNI。当新的计算节点添加到Kubernetes群集中,Tungsten Fabric CNI也将神奇地自动传播到这些节点,就像背后有Kubernetes DaemaonSet一样。
同时,您已经安装了整个Tungsten Fabric Networking套件,其中包括Networking、Analytics、Security、Visualization等功能。
Tungsten Fabric UI在节点的8143端口上可用,可以开始在上面玩了。

检查Tungsten Fabric状态
通过在Kubernetes主节点中运行“contrail-status”命令行工具,可以获得Tungsten Fabric组件的状态。这将列出系统中运行的所有Tungsten Fabric组件。
[root@foo ~]# contrail-status Pod Service Original Name State Status zookeeper contrail-external-zookeeper running Up 35 minutes analytics alarm-gen contrail-analytics-alarm-gen running Up 35 minutes analytics api contrail-analytics-api running Up 35 minutes analytics collector contrail-analytics-collector running Up 35 minutes analytics nodemgr contrail-nodemgr running Up 33 minutes analytics query-engine contrail-analytics-query-engine running Up 35 minutes analytics snmp-collector contrail-analytics-snmp-collector running Up 35 minutes analytics topology contrail-analytics-topology running Up 34 minutes config api contrail-controller-config-api running Up 35 minutes config cassandra contrail-external-cassandra running Up 35 minutes config device-manager contrail-controller-config-devicemgr running Up 35 minutes config nodemgr contrail-nodemgr running Up 33 minutes config rabbitmq contrail-external-rabbitmq running Up 35 minutes config schema contrail-controller-config-schema running Up 35 minutes config svc-monitor contrail-controller-config-svcmonitor running Up 35 minutes control control contrail-controller-control-control running Up 35 minutes control dns contrail-controller-control-dns running Up 35 minutes control named contrail-controller-control-named running Up 35 minutes control nodemgr contrail-nodemgr running Up 33 minutes database cassandra contrail-external-cassandra running Up 35 minutes database kafka contrail-external-kafka running Up 35 minutes database nodemgr contrail-nodemgr running Up 34 minutes kubernetes kube-manager contrail-kubernetes-kube-manager running Up 35 minutes vrouter agent contrail-vrouter-agent running Up 34 minutes vrouter nodemgr contrail-nodemgr running Up 33 minutes webui job contrail-controller-webui-job running Up 35 minutes webui web contrail-controller-webui-web running Up 35 minutes WARNING: container with original name 'contrail-external-zookeeper' have Pod os Service empty. Pod: '' / Service: 'zookeeper'. Please pass NODE_TYPE with pod name to container's env vrouter kernel module is PRESENT== Contrail control ==control: active nodemgr: initializing (NTP state unsynchronized. ) . <-- Safe to ignore named: active dns: active== Contrail kubernetes ==kube-manager: active== Contrail database ==kafka: active nodemgr: initializing (NTP state unsynchronized. ) . <-- Safe to ignore zookeeper: inactive <-- Safe to ignore cassandra: active== Contrail analytics ==nodemgr: initializing (NTP state unsynchronized. ) . <-- Safe to ignore api: active collector: active query-engine: active alarm-gen: active== Contrail webui ==web: active job: active== Contrail vrouter ==nodemgr: initializing (NTP state unsynchronized. ) <-- Safe to ignore agent: active== Contrail config ==api: active zookeeper: inactive <-- Safe to ignore svc-monitor: active nodemgr: initializing (NTP state unsynchronized. ) . <-- Safe to ignore device-manager: active cassandra: active rabbitmq: active schema: active

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69957171/viewspace-2727149/ ,如需转载,请注明出处,否则将追究法律责任。