Documentation ¶
Index ¶
- func ChangePassword(c *golangsdk.ServiceClient, instanceId string, opts PasswordOpts) error
- func Delete(client *golangsdk.ServiceClient, id string) error
- type Connection
- type CreateOpts
- type CrossVpc
- type CrossVpcUpdateOpts
- type Instance
- type InstanceCreate
- type ListOpts
- type ListResponse
- type PasswordOpts
- type UpdateOpts
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ChangePassword ¶
func ChangePassword(c *golangsdk.ServiceClient, instanceId string, opts PasswordOpts) error
ChangePassword is a method to update the password using given parameters.
Types ¶
type Connection ¶
type Connection struct { // advertised.listeners IP/domain name. AdvertisedIp string `json:"advertised_ip"` // The status of broker cross-VPC access modification. Success bool `json:"success"` // Listeners IP. ListenersIp string `json:"ip"` }
Connection is the structure that represents the detail of the cross-VPC access.
type CreateOpts ¶
type CreateOpts struct { // Indicates the name of an instance. // An instance name starts with a letter, // consists of 4 to 64 characters, and supports // only letters, digits, hyphens (-), and underscores (_). Name string `json:"name" required:"true"` // Indicates the description of an instance. // It is a character string containing not more than 1024 characters. Description string `json:"description,omitempty"` // Indicates a message engine. Engine string `json:"engine" required:"true"` // Indicates the version of a message engine. EngineVersion string `json:"engine_version" required:"true"` // Indicates the message storage space. StorageSpace int `json:"storage_space" required:"true"` // Indicates the baseline bandwidth of a Kafka instance, that is, // the maximum amount of data transferred per unit time. Unit: byte/s. Specification string `json:"specification,omitempty"` // Indicates the maximum number of topics in a Kafka instance. PartitionNum int `json:"partition_num,omitempty"` // Indicates a username. // A username consists of 1 to 64 characters // and supports only letters, digits, and hyphens (-). AccessUser string `json:"access_user,omitempty"` // Indicates the password of an instance. // An instance password must meet the following complexity requirements: // Must be 6 to 32 characters long. // Must contain at least two of the following character types: // Lowercase letters // Uppercase letters // Digits // Special characters (`~!@#$%^&*()-_=+\|[{}]:'",<.>/?) Password string `json:"password,omitempty"` // Indicates the ID of a VPC. VpcID string `json:"vpc_id" required:"true"` // Indicates the ID of a security group. SecurityGroupID string `json:"security_group_id" required:"true"` // Indicates the ID of a subnet. SubnetID string `json:"subnet_id" required:"true"` // Indicates the ID of an AZ. // The parameter value can be left blank or an empty array. AvailableZones []string `json:"available_zones" required:"true"` // Indicates a product ID. ProductID string `json:"product_id" required:"true"` // Indicates the time at which a maintenance time window starts. // Format: HH:mm:ss MaintainBegin string `json:"maintain_begin,omitempty"` // Indicates the time at which a maintenance time window ends. // Format: HH:mm:ss MaintainEnd string `json:"maintain_end,omitempty"` // Indicates whether to open the public network access function. Default to false. EnablePublicIP bool `json:"enable_publicip,omitempty"` // Indicates the bandwidth of the public network. PublicBandWidth int `json:"public_bandwidth,omitempty"` // Indicates the ID of the Elastic IP address bound to the instance. PublicIpID string `json:"publicip_id,omitempty"` // Indicates whether to enable SSL-encrypted access. SslEnable *bool `json:"ssl_enable,omitempty"` // Indicates the action to be taken when the memory usage reaches the disk capacity threshold. Options: // time_base: Automatically delete the earliest messages. // produce_reject: Stop producing new messages. RetentionPolicy string `json:"retention_policy,omitempty"` // Indicates whether to enable automatic topic creation. EnableAutoTopic *bool `json:"enable_auto_topic,omitempty"` // Indicates the storage I/O specification. For details on how to select a disk type StorageSpecCode string `json:"storage_spec_code,omitempty"` // Indicates whether disk encryption is enabled. DiskEncryptedEnable *bool `json:"disk_encrypted_enable,omitempty"` // Disk encryption key. If disk encryption is not enabled, this parameter is left blank. DiskEncryptedKey string `json:"disk_encrypted_key,omitempty"` // Indicates the tags of the instance Tags []tags.ResourceTag `json:"tags,omitempty"` }
CreateOps is a struct that contains all the parameters.
type CrossVpc ¶
type CrossVpc struct { // The result of cross-VPC access modification. Success bool `json:"success"` // The result list of broker cross-VPC access modification. Connections []Connection `json:"results"` }
CrossVpc is the structure that represents the API response of 'UpdateCrossVpc' method.
func UpdateCrossVpc ¶
func UpdateCrossVpc(c *golangsdk.ServiceClient, instanceId string, opts CrossVpcUpdateOpts) (*CrossVpc, error)
UpdateCrossVpc is a method to update the internal IP address for cross-VPC access using given parameters.
type CrossVpcUpdateOpts ¶
type CrossVpcUpdateOpts struct { // User-defined advertised IP contents key-value pair. // The key is the listeners IP. // The value is advertised.listeners IP, or domain name. Contents map[string]string `json:"advertised_ip_contents" required:"true"` }
CrossVpcUpdateOpts is the structure required by the UpdateCrossVpc method to update the internal IP address for cross-VPC access.
type Instance ¶
type Instance struct { Name string `json:"name"` Description string `json:"description"` Engine string `json:"engine"` EngineVersion string `json:"engine_version"` Specification string `json:"specification"` StorageSpace int `json:"storage_space"` PartitionNum string `json:"partition_num"` BrokerNum int `json:"broker_num"` NodeNum int `json:"node_num"` UsedStorageSpace int `json:"used_storage_space"` ConnectAddress string `json:"connect_address"` Port int `json:"port"` Status string `json:"status"` InstanceID string `json:"instance_id"` ResourceSpecCode string `json:"resource_spec_code"` ChargingMode int `json:"charging_mode"` VPCID string `json:"vpc_id"` VPCName string `json:"vpc_name"` CreatedAt string `json:"created_at"` UserID string `json:"user_id"` UserName string `json:"user_name"` MaintainBegin string `json:"maintain_begin"` MaintainEnd string `json:"maintain_end"` EnablePublicIP bool `json:"enable_publicip"` ManagementConnectAddress string `json:"management_connect_address"` SslEnable bool `json:"ssl_enable"` Type string `json:"type"` ProductID string `json:"product_id"` SecurityGroupID string `json:"security_group_id"` SecurityGroupName string `json:"security_group_name"` SubnetID string `json:"subnet_id"` SubnetName string `json:"subnet_name"` SubnetCIDR string `json:"subnet_cidr"` AvailableZones []string `json:"available_zones"` TotalStorageSpace int `json:"total_storage_space"` PublicConnectionAddress string `json:"public_connect_address"` StorageResourceID string `json:"storage_resource_id"` StorageSpecCode string `json:"storage_spec_code"` ServiceType string `json:"service_type"` StorageType string `json:"storage_type"` RetentionPolicy string `json:"retention_policy"` KafkaPublicStatus string `json:"kafka_public_status"` PublicBandWidth int `json:"public_bandwidth"` CrossVpcInfo string `json:"cross_vpc_info"` MessageQueryInstEnable bool `json:"message_query_inst_enable"` SupportFeatures string `json:"support_features"` DiskEncrypted bool `json:"disk_encrypted"` DiskEncryptedKey string `json:"disk_encrypted_key"` KafkaPrivateConnectAddress string `json:"kafka_private_connect_address"` PublicAccessEnabled string `json:"public_access_enabled"` AccessUser string `json:"access_user"` Tags []tags.ResourceTag `json:"tags"` }
Instance response
type InstanceCreate ¶
type InstanceCreate struct {
InstanceID string `json:"instance_id"`
}
InstanceCreate response
func Create ¶
func Create(client *golangsdk.ServiceClient, opts CreateOpts) (*InstanceCreate, error)
Create an instance with given parameters.
func Update ¶
func Update(client *golangsdk.ServiceClient, id string, opts UpdateOpts) (*InstanceCreate, error)
Update is a method which can be able to update the instance via accessing to the service with Put method and parameters
type ListResponse ¶
type ListResponse struct { Instances []Instance `json:"instances"` TotalCount int `json:"instance_num"` }
func List ¶
func List(client *golangsdk.ServiceClient, opts ListOpts) (*ListResponse, error)
type PasswordOpts ¶
type PasswordOpts struct {
NewPassword string `json:"new_password" required:"true"`
}
type UpdateOpts ¶
type UpdateOpts struct { // Indicates the name of an instance. // An instance name starts with a letter, // consists of 4 to 64 characters, // and supports only letters, digits, and hyphens (-). Name string `json:"name,omitempty"` // Indicates the description of an instance. // It is a character string containing not more than 1024 characters. Description *string `json:"description,omitempty"` // Indicates the time at which a maintenance time window starts. // Format: HH:mm:ss MaintainBegin string `json:"maintain_begin,omitempty"` // Indicates the time at which a maintenance time window ends. // Format: HH:mm:ss MaintainEnd string `json:"maintain_end,omitempty"` // Indicates the ID of a security group. SecurityGroupID string `json:"security_group_id,omitempty"` // Indicates the action to be taken when the memory usage reaches the disk capacity threshold. Options: // time_base: Automatically delete the earliest messages. // produce_reject: Stop producing new messages. RetentionPolicy string `json:"retention_policy,omitempty"` }
UpdateOpts is a struct which represents the parameters of update function