seqdiag { node_width = 80; edge_length = 100; "Client" "Tacker-server" "Tacker-conductor" "VnfLcmDriver" "KubernetesInfraDriver" "TackerDB" "Kubernetes client" "Helm(MasterNode)" Client -> "Tacker-server" [label = "POST /vnf_instances/{vnfInstanceId}/instantiate"]; "Tacker-server" -> "Tacker-conductor" [label = "trigger asynchronous task"]; Client <-- "Tacker-server" [label = "Response 202 Accepted"]; "Tacker-conductor" -> "VnfLcmDriver" [label = "execute VnfLcmDriver"]; "VnfLcmDriver" -> "KubernetesInfraDriver" [label = "execute KubernetesInfraDriver"]; "KubernetesInfraDriver" -> "TackerDB" [label = "get package info"]; "KubernetesInfraDriver" <-- "TackerDB" [label = "return package info"]; "KubernetesInfraDriver" -> "TackerDB" [label = "get MasterNode access information"]; "KubernetesInfraDriver" <-- "TackerDB" [label = "return MasterNode access information"]; "KubernetesInfraDriver" -> "Helm(MasterNode)" [label = "put Helm chart"]; "KubernetesInfraDriver" <-- "Helm(MasterNode)" [label = ""]; "KubernetesInfraDriver" -> "Helm(MasterNode)" [label = "create repository of Helm chart"]; "KubernetesInfraDriver" <-- "Helm(MasterNode)" [label = ""]; "KubernetesInfraDriver" -> "Helm(MasterNode)" [label = "Kubernetes resource create by helm chart"]; "KubernetesInfraDriver" <-- "Helm(MasterNode)" [label = ""] "KubernetesInfraDriver" -> "Helm(MasterNode)" [label = "get manifest information"] "KubernetesInfraDriver" <-- "Helm(MasterNode)" [label = "return manifest information"] "KubernetesInfraDriver" -> "TackerDB" [label = "save manifest information"] "KubernetesInfraDriver" <-- "TackerDB" [label = ""] "KubernetesInfraDriver" -> "Kubernetes client" [label = "get pod status"] "KubernetesInfraDriver" <-- "Kubernetes client" [label = "return pod status"] "KubernetesInfraDriver" -> "TackerDB" [label = "save pod information"] "KubernetesInfraDriver" <-- "TackerDB" [label = ""] "VnfLcmDriver" <-- "KubernetesInfraDriver" [label = ""]; "Tacker-conductor" <-- "VnfLcmDriver" [label = ""]; }