云服务器内容精选

  • 使用JedisPool访问(推荐) 样例代码 import org.apache.commons.pool2.impl.GenericObjectPoolConfig; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; public class JedisPoolTests { private static void testPool() { // 认证用的用户名和密码直接写到代码中有很大的安全风险,建议在配置文件或者环境变量中存放(密码应密文存放、使用时解密),确保安全; // 本示例以用户名和密码保存在环境变量中为例,运行本示例前请先在本地环境中设置环境变量(环境变量名称请根据自身情况进行设置)EXAMPLE_USERNAME_ENV和EXAMPLE_PASSWORD_ENV。 String pwd = System.getenv("EXAMPLE_PASSWORD_ENV"); JedisPool pool = new JedisPool(new GenericObjectPoolConfig(), "172.xx.xx.xx", 8635, 2000, pwd); Jedis jedis = pool.getResource(); try { System.out.println(jedis.hgetAll("676296")); System.out.println(jedis.set("key1", "value1")); } finally { jedis.close(); } pool.destroy(); } public static void main(String[] args) { testPool(); } }
  • 使用JedisCluster访问 样例代码 import org.apache.commons.pool2.impl.GenericObjectPoolConfig; import redis.clients.jedis.HostAndPort; import redis.clients.jedis.JedisCluster; public class ClusterTests { private static void testCluster() { String pwd = "a"; JedisCluster cluster = new JedisCluster(new HostAndPort("172.xx.xx.xx", 8635), 200, 2000, 5, pwd, new GenericObjectPoolConfig()); System.out.println(cluster.hgetAll("676296")); System.out.println(cluster.set("key1", "value1")); } public static void main(String[] args) { testCluster(); } }
  • 使用须知 默认情况下,一个租户可以创建500条安全组规则。 为一个安全组配置过多的安全组规则会增加首包延时,因此,建议一个安全组内的安全组规则不超过50条。 目前一个GeminiDB Redis实例仅允许绑定一个安全组。 内网和公网连接实例时,需要配置的安全组规则请参见表1。 表1 安全组规则说明 场景 配置的安全组规则说明 内网连接实例 使用内网连接GeminiDB Redis实例时,配置安全组规则分为以下两种情况: 若用户有一个GeminiDB Redis实例,想用一个E CS 连接时,此ECS与GeminiDB Redis实例在相同安全组时,默认ECS与GeminiDB Redis实例互通,无需配置安全组规则。 ECS与GeminiDB Redis实例在不同安全组时,需要为GeminiDB Redis和ECS分别配置安全组规则。 配置GeminiDB Redis安全组规则:为GeminiDB Redis所在安全组配置相应的入方向规则,具体操作请参见操作步骤。 配置ECS安全组规则:安全组默认规则为出方向上数据报文全部放行,此时,无需对ECS配置安全组规则。当在ECS所在安全组为非默认安全组且出方向规则非全放通时,需要为ECS所在安全组配置相应的出方向规则。具体操作请参见《弹性云服务器用户指南》中“配置安全组规则”章节。 公网连接实例 使用公网连接GeminiDB Redis实例时,需要为GeminiDB Redis所在安全组配置相应的入方向规则。具体操作请参见操作步骤。
  • 操作步骤 获取GeminiDB Cassandra实例的内网IP地址、端口。 内网IP地址和端口的获取方法请参见查看IP地址和端口。 登录弹性云服务器,具体操作请参见《弹性云服务器快速入门》中“登录弹性云服务器”。 编辑连接GeminiDB Cassandra实例的代码。 import ( "os" ) // Default LoadBalancingPolicy RoundRobinHostPolicy cluster := gocql.NewCluster("127.0.0.1,127.0.0.2,127.0.0.3") // 认证用的用户名和密码直接写到代码中有很大的安全风险,建议在配置文件或者环境变量中存放(密码应密文存放、使用时解密),确保安全; // 本示例以用户名和密码保存在环境变量中为例,运行本示例前请先在本地环境中设置环境变量(环境变量名称请根据自身情况进行设置)EXAMPLE_USERNAME_ENV和EXAMPLE_PASSWORD_ENV。 username = os.Getenv("EXAMPLE_USERNAME_ENV"), password = os.Getenv("EXAMPLE_PASSWORD_ENV"), cluster.Authenticator = gocql.PasswordAuthenticator{ Username: username, Password: password } cluster.Keyspace = "ks1" // connect to the cluster session, err := cluster.CreateSession() if err != nil { log.Fatal(err) } defer session.Close() 运行示例代码,确认结果是否正常。
  • 执行读写 使用 Session.Query 创建查询。查询参数不能用于其他语句,并且不能在开始查询之后进行修改。 要在不读取结果的情况下执行查询,请使用 Query.Exec: err := session.Query(`INSERT INTO tweet (timeline, id, text) VALUES (?, ?, ?)`, "me", gocql.TimeUUID(), "hello world").WithContext(ctx).Exec() 可以通过调用 Query.Scan 读取单行: err := session.Query(`SELECT id, text FROM tweet WHERE timeline = ? LIMIT 1`, "me").WithContext(ctx).Consistency(gocql.One).Scan(&id, &text) 可以使用 Iter.Scanner 读取多行: scanner := session.Query(`SELECT id, text FROM tweet WHERE timeline = ?`, "me").WithContext(ctx).Iter().Scanner() for scanner.Next() { var ( id gocql.UUID text string ) err = scanner.Scan(&id, &text) if err != nil { log.Fatal(err) } fmt.Println("Tweet:", id, text) } // scanner.Err() closes the iterator, so scanner nor iter should be used afterwards. if err := scanner.Err(); err != nil { log.Fatal(err) }
  • 使用须知 目标实例必须与弹性云服务器在同一个虚拟私有云和子网内才能访问。 该弹性云服务器必须处于目标实例所属安全组允许访问的范围内。 如果目标实例所属安全组为默认安全组, 则无需设置安全组规则。 如果目标实例所属安全组非默认安全组,请查看安全组规则是否允许该弹性云服务器访问。具体操作请参考设置安全组规则。 如果安全组规则允许弹性云服务器访问,即可连接实例。 如果安全组规则不允许弹性云服务器访问,需要在实例安全组添加一条“入”的访问规则。
  • 步骤2:测试连通性并安装PostgreSQL客户端 登录ECS实例,请参见《弹性云服务器用户指南》中“Linux弹性 云服务器远程登录 (VNC方式)”。 在RDS“实例管理”页面,单击实例名称进入“概览”页面。 选择“连接管理”,在“连接信息”模块获取实例的公网地址和数据库端口。 图4 连接信息 如果没有绑定公网地址,请参见绑定弹性公网IP。 在ECS上测试是否可以正常连接到RDS for PostgreSQ L实例 公网地址的端口。 telnet 公网地址 5432 如果可以通信,说明网络正常。 如果无法通信,请检查安全组规则。 查看ECS的安全组的出方向规则,如果目的地址不为“0.0.0.0/0”且协议端口不为“全部”,需要将RDS实例的公网IP地址和端口添加到出方向规则。 图5 ECS的安全组 查看RDS的安全组的入方向规则,如果源地址不为“0.0.0.0/0”且协议端口不为“全部”,需要将ECS实例的私有IP地址和端口添加到入方向规则,具体操作请参见设置安全组规则。 图6 RDS的安全组 打开客户端安装页面。 PostgreSQL官网提供了针对不同操作系统的客户端安装方法。 下面将以CentOS下PostgreSQL 12版本为例,介绍安装PostgreSQL客户端。 选择数据库版本、操作系统、操作系统架构,在弹性云服务器上执行以下命令安装PostgreSQL客户端。 sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm 图7 安装客户端 数据库版本,选择与RDS for PostgreSQL数据库实例一致的版本。 操作系统,选择与弹性云服务器一致的操作系统。 操作系统架构,选择与弹性云服务器一致的操作系统架构。 图8 安装rpm包 图9 客户端安装完成
  • 步骤1:购买ECS 登录管理控制台,查看是否有弹性云服务器。 有Linux弹性云服务器,执行3。 无Linux弹性云服务器,执行2。 图1 ECS实例 购买弹性云服务器时,选择Linux操作系统,例如CentOS。 由于需要在ECS下载PostgreSQL客户端,因此需要为ECS绑定弹性公网IP(EIP)。 购买Linux弹性云服务器请参考《弹性云服务器快速入门》中“购买弹性云服务器”章节。 在ECS实例基本信息页,查看ECS实例的区域和VPC。 图2 ECS基本信息 在RDS for PostgreSQL实例概览页,查看RDS实例的区域和VPC。 图3 PostgreSQL概览
  • 步骤2:测试连通性并安装MySQL客户端 登录ECS实例,请参见《弹性云服务器用户指南》中“SSH密码方式登录”。 在RDS“实例管理”页面,单击实例名称进入“概览”页面。 选择“连接管理”,在“连接信息”模块获取实例的内网地址(或者内网 域名 )和数据库端口。 图4 连接信息 在ECS上测试是否可以正常连接到RDS for MySQL实例内网地址的端口。 执行yum install telnet命令提前安装telnet工具。 telnet 192.168.6.144 3306 如果可以通信,说明网络正常。 如果无法通信,请检查安全组规则。 查看ECS的安全组的出方向规则,如果目的地址不为“0.0.0.0/0”且协议端口不为“全部”,需要将RDS实例的内网IP地址和端口添加到出方向规则。 图5 ECS的安全组 查看RDS的安全组的入方向规则,需要将ECS实例的私有IP地址和端口添加到入方向规则,具体操作请参考设置安全组规则。 将MySQL客户端安装包导入ECS。 方法一: 在ECS上下载Linux系统的MySQL客户端安装包,该方式需要为ECS绑定EIP。 8.0版本: wget https://dev.mysql.com/get/mysql-community-client-8.0.28-1.el6.x86_64.rpm 5.7版本: wget https://dev.mysql.com/get/mysql-community-client-5.7.38-1.el6.x86_64.rpm 建议您下载的MySQL客户端版本高于已创建的RDS实例中数据库版本。 方法二: 在浏览器下载Linux系统的MySQL客户端安装包,然后将安装包上传到ECS。 您可以使用任何终端连接工具(如WinSCP、PuTTY等工具)将安装包上传至ECS。 8.0版本: 打开链接,以mysql-community-client-8.0.28-1.el6.x86_64.rpm为例,下载安装包。 图6 下载MySQL 8.0安装包 5.7版本: 打开链接,以mysql-community-client-5.7.38-1.el6.x86_64.rpm为例,下载安装包。 图7 下载MySQL 5.7安装包 建议您下载的MySQL客户端版本高于已创建的RDS实例中数据库版本。 执行以下命令安装MySQL客户端。 8.0版本: rpm -ivh --nodeps mysql-community-client-8.0.28-1.el6.x86_64.rpm 5.7版本: rpm -ivh --nodeps mysql-community-client-5.7.38-1.el6.x86_64.rpm 如果安装过程中报conflicts,可增加replacefiles参数重新安装,如下: rpm -ivh --replacefiles mysql-community-client-安装包版本号-1.el6.x86_64.rpm 如果安装过程中提示需要安装依赖包,可增加nodeps参数重新安装,如下: rpm -ivh --nodeps mysql-community-client-安装包版本号-1.el6.x86_64.rpm
  • 步骤1:购买ECS 登录管理控制台,查看是否有弹性云服务器。 有Linux弹性云服务器,执行3。 有Windows弹性云服务器,参考通过内网连接RDS for MySQL实例(Windows方式)。 无弹性云服务器,执行2。 图1 ECS实例 购买弹性云服务器时,选择Linux操作系统,例如CentOS。 由于需要在ECS下载MySQL客户端,因此需要为ECS绑定弹性公网IP(EIP),并且选择与RDS for MySQL实例相同的区域、VPC和安全组,便于RDS for MySQL和ECS网络互通。 购买Linux弹性云服务器请参考《弹性云服务器快速入门》中“购买弹性云服务器”章节。 在ECS实例基本信息页,查看ECS实例的区域和VPC。 图2 ECS基本信息 在RDS for MySQL实例概览页,查看RDS实例的区域和VPC。 图3 MySQL概览 确认ECS实例与RDS for MySQL实例是否处于同一区域、同一VPC内。 是,执行步骤2:测试连通性并安装MySQL客户端。 如果不在同一区域,请重新购买实例。不同区域的云服务之间内网互不相通,无法访问实例。请就近选择靠近您业务的区域,可减少网络时延,提高访问速度。 如果不在同一VPC,可以修改ECS的VPC,请参见切换虚拟私有云。
  • 步骤2:测试连通性并安装SQL Server Management Studio 登录ECS实例,请参见《弹性云服务器用户指南》中“Windows弹性云服务器管理控制台远程登录(VNC方式)”。 在RDS“实例管理”页面,单击实例名称进入“概览”页面。 获取实例的内网地址和数据库端口。 图4 连接信息 在ECS上打开cmd命令窗,测试是否可以正常连接到RDS for SQL Server实例内网地址的端口。 telnet 192.168.2.182 1433 如果可以通信,说明网络正常。 如果无法通信,请检查安全组规则。 查看ECS的安全组的出方向规则,如果目的地址不为“0.0.0.0/0”且协议端口不为“全部”,需要将RDS实例的内网IP地址和端口添加到出方向规则。 图5 ECS的安全组 查看RDS的安全组的入方向规则,如果源地址不为“0.0.0.0/0”且协议端口不为“全部”,需要将ECS实例的私有IP地址和端口添加到入方向规则,具体操作请参见设置安全组规则。 图6 RDS的安全组 在ECS上打开浏览器,访问Microsoft网站,以SQL Server Management Studio 18.0为例,下载安装包。 双击安装包,按照向导完成安装。
  • 步骤1:购买ECS 登录管理控制台,查看是否有弹性云服务器。 有Windows弹性云服务器,执行3。 无Windows弹性云服务器,执行2。 图1 ECS实例 购买弹性云服务器时,选择Windows操作系统。 由于需要在ECS下载SQL Server Management Studio客户端,因此需要为ECS绑定弹性公网IP(EIP),并且选择与RDS for SQL Server实例相同的区域、VPC和安全组,便于RDS for SQL Server和ECS网络互通。 购买Windows弹性云服务器请参考《弹性云服务器快速入门》中“购买弹性云服务器”章节。 在ECS实例基本信息页,查看ECS实例的区域和VPC。 图2 ECS基本信息 在RDS for SQL Server实例概览页,查看RDS实例的区域和VPC。 图3 SQL Server概览 确认ECS实例与RDS for SQL Server实例是否处于同一区域、同一VPC内。 是,执行步骤2:测试连通性并安装SQL Server Management Studio。 如果不在同一区域,请重新购买实例。不同区域的云服务之间内网互不相通,无法访问实例。请就近选择靠近您业务的区域,可减少网络时延,提高访问速度。 如果不在同一VPC,可以修改ECS的VPC,请参见切换虚拟私有云。
  • 步骤三:在中心网络内为跨区域网络链路配置带宽 为中心网络内的跨区域连接配置带宽,根据业务的实际需要配置,确保带宽满足业务需求,跨地域连接带宽的详细规划请参见表5。 云连接服务默认为您在各个区域之间分配了10kbps的域间带宽,用来支撑连通性测试。“对等连接(Peering)”连接添加完成后,您就可以验证网络连通性。 为了业务正常使用,您需要继续执行以下操作购买全域互联带宽,并为跨区域连接配置带宽。 为连通区域A和区域B的连接配置带宽。 基于购买的全域互联带宽为两个互通的区域配置带宽,具体方法请参见配置跨地域连接带宽。 为连通区域A和区域C的连接配置带宽。 为连通区域B和区域C的连接配置带宽。
  • 步骤一:创建企业路由器并添加VPC连接 在业务VPC对应的区域内,各创建1个企业路由器。 创建企业路由器时,必须开启“默认路由表关联”和“默认路由表传播”,更多资源详情请参见表5。 创建企业路由器,具体方法请参见创建企业路由器。 在每个区域的企业路由器中,依次添加“虚拟私有云(VPC)”连接,即将业务VPC接入企业路由器中。 迁移时,需要手动在VPC路由表中添加规划的大网段路由,因此添加VPC连接时不开启“配置连接侧路由”功能。 添加“虚拟私有云(VPC)”连接,具体方法请参见在企业路由器中添加VPC连接。 检查ER路由表中的路由,查看路由表中指向VPC连接的路由。 本示例中,ER开启了“默认路由表关联”和“默认路由表传播”功能,那么在ER中添加“虚拟私有云(VPC)”连接时,系统会自动添加ER指向VPC的路由,无需手动添加,只需要检查即可。 ER路由规划详情,请参见表1和表3。 查看ER路由,具体方法请参见查看路由。 在VPC路由表中,添加指向ER的大网段路由。 VPC路由规划详情,请参见表1和表2。 本示例添加的大网段地址为192.168.0.0/14,下一跳为企业路由器。 配置路由信息,具体方法请参见在VPC路由表中配置路由。
  • 步骤二:创建中心网络并连接企业路由器 创建1个中心网络,并在策略中添加企业路由器。 中心网络的资源详情,请参见表5。 创建中心网络,具体方法请参见创建中心网络。 在企业路由器控制台,查看“对等连接(Peering)”连接的添加情况。 具体方法请参见查看连接。 “对等连接(Peering)”连接的状态“正常”,表示已成功接入企业路由器中。 由于本示例创建ER时,开启“默认路由表关联”和“默认路由表传播”,因此中心网络的策略配置完成后,即添加完“对等连接(Peering)”连接后,系统会自动添加当前ER指向网络对端ER的路由。