Huawei Cloud
Follow these instructions to prepare a cluster for Istio using the Huawei Cloud Container Engine. You can deploy a Kubernetes cluster to Huawei Cloud quickly and easily in the Cloud Container Engine Console
, which fully supports Istio.
Huawei offers a managed control plane add-on for the Huawei Cloud Container Engine, which you can use instead of installing Istio manually. Refer to Huawei Application Service Mesh for details and instructions.
Following the Huawei Cloud Instructions to prepare a cluster before manually installing Istio, proceed as follows:
Log in to the CCE console. Choose Dashboard > Buy Cluster to open the Buy Hybrid Cluster page. An alternative way to open that page is to choose Resource Management > Clusters in the navigation pane and click Buy next to Hybrid Cluster.
On the Configure Cluster page, configure cluster parameters. In this example, a majority of parameters retain default values. After the cluster configuration is complete, click Next: Create Node to go to the node creation page.
Istio release has some requirements for the Kubernetes version, select the version according to Istio’s support policy.
The image below shows the GUI where you create and configure the cluster:
Configure Cluster
On the node creation page, configure the following parameters
Istio adds some additional resource consumption, from our experience, reserve at least 4 vCPU and 8 GB memory to begin playing.
The image below shows the GUI where you create and configure the node:
Configure Node
Now you can install Istio on CCE cluster according to install guide.
Configure ELB to expose Istio ingress gateway if needed.
Bind the ELB instance to
istio-ingressgateway
serviceSet the ELB instance ID and
loadBalancerIP
toistio-ingressgateway
.
$ kubectl apply -f - <<EOF
apiVersion: v1
kind: Service
metadata:
annotations:
kubernetes.io/elb.class: union
kubernetes.io/elb.id: 4ee43d2b-cec5-4100-89eb-2f77837daa63 # ELB ID
kubernetes.io/elb.lb-algorithm: ROUND_ROBIN
labels:
app: istio-ingressgateway
install.operator.istio.io/owning-resource: unknown
install.operator.istio.io/owning-resource-namespace: istio-system
istio: ingressgateway
istio.io/rev: default
operator.istio.io/component: IngressGateways
operator.istio.io/managed: Reconcile
operator.istio.io/version: 1.9.0
release: istio
name: istio-ingressgateway
namespace: istio-system
spec:
clusterIP: 10.247.7.192
externalTrafficPolicy: Cluster
loadBalancerIP: 119.8.36.132 ## ELB EIP
ports:
- name: status-port
nodePort: 32484
port: 15021
protocol: TCP
targetPort: 15021
- name: http2
nodePort: 30294
port: 80
protocol: TCP
targetPort: 8080
- name: https
nodePort: 31301
port: 443
protocol: TCP
targetPort: 8443
- name: tcp
nodePort: 30229
port: 31400
protocol: TCP
targetPort: 31400
- name: tls
nodePort: 32028
port: 15443
protocol: TCP
targetPort: 15443
selector:
app: istio-ingressgateway
istio: ingressgateway
sessionAffinity: None
type: LoadBalancer
EOF
Start playing with Istio by trying out the various tasks.