diff options
author | Gary Wu <gary.i.wu@huawei.com> | 2019-03-26 13:08:29 -0700 |
---|---|---|
committer | Gary Wu <gary.i.wu@huawei.com> | 2019-03-26 14:55:16 -0700 |
commit | 950a3237302a9cc5040354083099bce42e8f2436 (patch) | |
tree | 27a60f3dcd083193ec66700689624de8c4461829 /deployment/heat/onap-rke/parts | |
parent | 54a0cae5a7d672285a02c64e1f98baa9b221a6f7 (diff) |
First draft of k8s deployment using RKE
Change-Id: Ifa0eb52b64438df64692aaf58b9ef8e5dd7fd32c
Issue-ID: INT-993
Signed-off-by: Gary Wu <gary.i.wu@huawei.com>
Diffstat (limited to 'deployment/heat/onap-rke/parts')
-rw-r--r-- | deployment/heat/onap-rke/parts/onap-oom-1.yaml | 192 | ||||
-rw-r--r-- | deployment/heat/onap-rke/parts/onap-oom-2.yaml | 70 | ||||
-rw-r--r-- | deployment/heat/onap-rke/parts/onap-oom-3.yaml | 5 |
3 files changed, 267 insertions, 0 deletions
diff --git a/deployment/heat/onap-rke/parts/onap-oom-1.yaml b/deployment/heat/onap-rke/parts/onap-oom-1.yaml new file mode 100644 index 000000000..b1676b299 --- /dev/null +++ b/deployment/heat/onap-rke/parts/onap-oom-1.yaml @@ -0,0 +1,192 @@ +heat_template_version: 2015-10-15 +description: ONAP on RKE Kubernetes using OOM + +parameters: + docker_proxy: + type: string + + apt_proxy: + type: string + + public_net_id: + type: string + description: The ID of the Public network for floating IP address allocation + + oam_network_cidr: + type: string + description: CIDR of the OAM ONAP network + + ubuntu_1804_image: + type: string + description: Name of the Ubuntu 18.04 image + + rancher_vm_flavor: + type: string + description: VM flavor for Rancher + + k8s_vm_flavor: + type: string + description: VM flavor for k8s hosts + + etcd_vm_flavor: + type: string + description: VM flavor for etcd hosts + + orch_vm_flavor: + type: string + description: VM flavor for orch hosts + + integration_override_yaml: + type: string + description: Content for integration_override.yaml + + integration_gerrit_branch: + type: string + default: "master" + + integration_gerrit_refspec: + type: string + default: "" + + oom_gerrit_branch: + type: string + default: "master" + + oom_gerrit_refspec: + type: string + default: "" + + docker_manifest: + type: string + default: "" + + key_name: + type: string + default: "onap_key" + + docker_version: + type: string + default: "17.03.2" + + rancher_version: + type: string + default: "1.6.26" + + rancher_agent_version: + type: string + default: "1.2.11" + + kubectl_version: + type: string + default: "1.13.4" + + helm_version: + type: string + default: "2.9.1" + + helm_deploy_delay: + type: string + default: "3m" + + use_ramdisk: + type: string + description: Set to "true" if you want to use a RAM disk for /dockerdata-nfs/. + default: "false" + + mtu: + type: number + default: 1500 + + portal_hostname: + type: string + description: The FQDN of the k8s host that will be used for the Portal UI component URLs; this needs to be resolveable at the client + default: "portal.api.simpledemo.onap.org" + +resources: + random-str: + type: OS::Heat::RandomString + properties: + length: 4 + + # ONAP security group + onap_sg: + type: OS::Neutron::SecurityGroup + properties: + name: + str_replace: + template: base_rand + params: + base: onap_sg + rand: { get_resource: random-str } + description: security group used by ONAP + rules: + # All egress traffic + - direction: egress + ethertype: IPv4 + - direction: egress + ethertype: IPv6 + # ingress traffic + # ICMP + - protocol: icmp + - protocol: udp + port_range_min: 1 + port_range_max: 65535 + - protocol: tcp + port_range_min: 1 + port_range_max: 65535 + # Protocols used for vLB/vDNS use case + - protocol: 47 + - protocol: 53 + - protocol: 132 + + + # ONAP management private network + oam_network: + type: OS::Neutron::Net + properties: + name: + str_replace: + template: oam_network_rand + params: + rand: { get_resource: random-str } + + oam_subnet: + type: OS::Neutron::Subnet + properties: + name: + str_replace: + template: oam_network_rand + params: + rand: { get_resource: random-str } + network_id: { get_resource: oam_network } + cidr: { get_param: oam_network_cidr } + dns_nameservers: [ "8.8.8.8" ] + + router: + type: OS::Neutron::Router + properties: + name: + list_join: ['-', [{ get_param: 'OS::stack_name' }, 'router']] + external_gateway_info: + network: { get_param: public_net_id } + + router_interface: + type: OS::Neutron::RouterInterface + properties: + router_id: { get_resource: router } + subnet_id: { get_resource: oam_subnet } + + rancher_private_port: + type: OS::Neutron::Port + properties: + network: { get_resource: oam_network } + fixed_ips: [{"subnet": { get_resource: oam_subnet }}] + security_groups: + - { get_resource: onap_sg } + + rancher_floating_ip: + type: OS::Neutron::FloatingIP + properties: + floating_network_id: { get_param: public_net_id } + port_id: { get_resource: rancher_private_port } + diff --git a/deployment/heat/onap-rke/parts/onap-oom-2.yaml b/deployment/heat/onap-rke/parts/onap-oom-2.yaml new file mode 100644 index 000000000..bd4ba1fc0 --- /dev/null +++ b/deployment/heat/onap-rke/parts/onap-oom-2.yaml @@ -0,0 +1,70 @@ + ${VM_TYPE}_${VM_NUM}_private_port: + type: OS::Neutron::Port + properties: + network: { get_resource: oam_network } + fixed_ips: [{"subnet": { get_resource: oam_subnet }}] + security_groups: + - { get_resource: onap_sg } + + ${VM_TYPE}_${VM_NUM}_floating_ip: + type: OS::Neutron::FloatingIP + properties: + floating_network_id: { get_param: public_net_id } + port_id: { get_resource: ${VM_TYPE}_${VM_NUM}_private_port } + + ${VM_TYPE}_${VM_NUM}_vm_scripts: + type: OS::Heat::CloudConfig + properties: + cloud_config: + power_state: + mode: reboot + runcmd: + - [ /opt/k8s_vm_install.sh ] + write_files: + - path: /opt/k8s_vm_install.sh + permissions: '0755' + content: + str_replace: + params: + __docker_proxy__: { get_param: docker_proxy } + __apt_proxy__: { get_param: apt_proxy } + __docker_version__: { get_param: docker_version } + __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] } + __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] } + __host_private_ip_addr__: { get_attr: [${VM_TYPE}_${VM_NUM}_floating_ip, fixed_ip_address] } + __mtu__: { get_param: mtu } + template: + get_file: k8s_vm_install.sh + - path: /opt/k8s_vm_init.sh + permissions: '0755' + content: + str_replace: + params: + __host_private_ip_addr__: { get_attr: [${VM_TYPE}_${VM_NUM}_floating_ip, fixed_ip_address] } + __host_label__: '$HOST_LABEL' + template: + get_file: k8s_vm_init.sh + - path: /etc/init.d/k8s_vm_init_serv + permissions: '0755' + content: + get_file: k8s_vm_init_serv.sh + + ${VM_TYPE}_${VM_NUM}_vm_config: + type: OS::Heat::MultipartMime + properties: + parts: + - config: { get_resource: ${VM_TYPE}_${VM_NUM}_vm_scripts } + + ${VM_TYPE}_${VM_NUM}_vm: + type: OS::Nova::Server + properties: + name: + list_join: ['-', [ { get_param: 'OS::stack_name' }, '${VM_TYPE}', '${VM_NUM}' ] ] + image: { get_param: ubuntu_1804_image } + flavor: { get_param: ${VM_TYPE}_vm_flavor } + key_name: { get_param: key_name } + networks: + - port: { get_resource: ${VM_TYPE}_${VM_NUM}_private_port } + user_data_format: SOFTWARE_CONFIG + user_data: { get_resource: ${VM_TYPE}_${VM_NUM}_vm_config } + diff --git a/deployment/heat/onap-rke/parts/onap-oom-3.yaml b/deployment/heat/onap-rke/parts/onap-oom-3.yaml new file mode 100644 index 000000000..8dc35b68e --- /dev/null +++ b/deployment/heat/onap-rke/parts/onap-oom-3.yaml @@ -0,0 +1,5 @@ +outputs: + rancher_vm_ip: + description: The IP address of the rancher instance + value: { get_attr: [rancher_floating_ip, floating_ip_address] } + |