huaweicloud / huaweicloud-service-broker

Huawei Cloud Service Broker
Apache License 2.0
18 stars 12 forks source link

Provisioning a cluster Primary/standby Mysql RDS on Flexible Engine #65

Closed yeplaa closed 2 years ago

yeplaa commented 5 years ago

Hello,

From Openshift Origin, i use huaweicloud-service-broker for provision RDS Mysql 5.7.21 on Flexible Engine OBS. For a Single Mysql, it works, but for a Primary/Standby Cluster, it doesn't work.

Bellow my configuration and the errors :

service-instance configuration :

                 apiVersion: servicecatalog.k8s.io/v1beta1
                 kind: ServiceInstance
                 metadata:
                   name: mysqlha1
                   namespace:  dbms
                 spec:
                   clusterServiceClassExternalName: rds-mysql
                   clusterServicePlanExternalName: 5.7.21
                   parameters:
                     name: "mysqlha1"
                     database_password: "Password1234!"
                     speccode: "rds.mysql.s1.xlarge"
                     ha_enable: true
                     volume_type: "ULTRAHIGH"
                     ha_replicationmode: "async"

oc logs service-broker-0 {"timestamp":"1544028372.175557613","source":"ServiceBroker","message":"ServiceBroker.provision.unknown-error","log_level":2,"data":{"error":"provision rds instance failed. Error: Invalid request due to incorrect syntax or missing required parameters.","instance-details":{"service_id":"275f3e0b-86fd-4303-946c-171374d29150","plan_id":"839f4458-309a-4e05-a069-807e950cf6da","organization_guid":"7d306fb5-ec26-11e8-aea1-0a580a8000b0","space_guid":"28c4800b-ee33-11e8-a51d-fa163ea276c9","context":

With the Cloud Trace Error, bellow the error:

     "response": {
    "errCode": "RDS.5006",
    "externalMessage": "Invalid Flavor."
    },

If i comment the lines ha_enable: true and ha_replicationmode: "async", it's works but en Single.. Should I use another configuration?

Thank's Loïc

edisonxiang commented 5 years ago

Hi @yeplaa Thanks your issue.

The lines '''ha_enable: true''' and ha_replicationmode: "async"

yeah. These parameters are correct for Primary/Standby.

Could you try to change the speccode like below? The HA instance is required to add .ha at the end of speccode :) https://docs.prod-cloud-ocb.orange-business.com/en-us/usermanual/rds/en-us_topic_0043898355.html

parameters:
                     speccode: "rds.mysql.s1.xlarge.ha"
yeplaa commented 5 years ago

Hello,

Thank's @edisonxiang for your reply. It's works now. I think it would be interesting to document this part on this repo. Also, is it possible to choose an availability_zone for the standby different from that of the Primary?

Thank's Loïc

edisonxiang commented 5 years ago

Hey @yeplaa Thanks your suggestion. I documented about this here. https://github.com/huaweicloud/huaweicloud-service-broker/blob/master/docs/usage/rds-mysql.md#provision-parameters

About the availability_zone, currently we have not additional parameter for the standby availability_zone in the RDS API yet. So i will feed back this issue to the API department :(

https://docs.prod-cloud-ocb.orange-business.com/en-us/api/rds/en-us_topic_0032347785.html

Thanks very much.

Maellooou commented 5 years ago

Hello @edisonxiang ,

To complete this subject about primary/standby, I would like to know how create the read replica ? If I just put the .rr to the speccode, I have the following error :

Error: Invalid request due to incorrect syntax or missing required parameters.

I don't understand how specify the "replica_of_id" defined in the API documentation... Can someone already provisionned read replica ?

Thank for your help