2016-08-06 2 views
1

자동 배율 옵션으로 컴퓨팅 인스턴스를 설정할 때 공개 및 개인 네트워크 업 링크가 있습니다. 네트워크 구성 요소를 설정할 때 속도 만 설정합니다. 공중을 속도와 함께 공중 & 어떻게 설정할 수 있습니까?Softlayer에서 네트워크 유형으로 속도를 설정하는 방법

// Network Components 
Component networkComponent = new Component(); 
networkComponent.setMaxSpeed(speed); 
virtualGuestMemberTemplate.getNetworkComponents().add(networkComponent); 

seting network component

답변

0

내 이전의 대답에 더 명시 적 있었어요한다, 나는 가상 게스트 네트워크 구성 요소를 설정하는 데 필요한 수정과 스케일 그룹을 만드는 데 사용되는 스크립트를 추가 해요.

도움이 되었기를 바랍니다.

package SoftLayer_Java_Scripts.Examples; 

import com.google.gson.Gson; 
import com.softlayer.api.*; 
import com.softlayer.api.service.Location; 
import com.softlayer.api.service.scale.Group; 
import com.softlayer.api.service.virtual.Guest; 
import com.softlayer.api.service.virtual.guest.network.Component; 


public class CreateScaleGroup { 

    private static String user = "set me"; 
    private static String apiKey = "set me"; 

    private static ApiClient client = new RestApiClient().withCredentials(user, apiKey); 

    public static void main(String[] args) { 
    Group.Service scaleGroupService = Group.service(client); 

    Location location = new Location(); 
    location.setName("hkg02"); 

    // Standard Virtual Guest configuration. 
    Guest guest = new Guest(); 
    guest.setDomain("softlayer.com"); 
    guest.setHostname("hostnametest"); 
    guest.setPostInstallScriptUri("https://www.softlayer.com/script"); 
    guest.setStartCpus(new Long (1)); 
    guest.setDatacenter(location); 
    guest.setHourlyBillingFlag(true); 
    guest.setLocalDiskFlag(false); 
    guest.setOperatingSystemReferenceCode("CENTOS_LATEST"); 
    guest.setMaxMemory(new Long (1)); 

    /* 
    * The configuration for SoftLayer_Virtual_Guest_Network_Component 
    * depends on combinations of the network component max speed 
    * and the virtual guest privateNetworkOnlyFlag. 
    * 
    * The available configurations are: 
    * 1.- Network maxSpeed ( 10) Guest privateNetworkOnlyFlag (false) for "10 Mbps Public & Private Network Uplinks" 
    * 2.- Network maxSpeed (100) Guest privateNetworkOnlyFlag (false) for "100 Mbps Public & Private Network Uplinks" 
    * 3.- Network maxSpeed (1000) Guest privateNetworkOnlyFlag (false) for "1 Gbps Public & Private Network Uplinks" 
    * 4.- Network maxSpeed ( 10) Guest privateNetworkOnlyFlag (true) for "10 Mbps Private Network Uplink" 
    * 5.- Network maxSpeed (100) Guest privateNetworkOnlyFlag (true) for "100 Mbps Private Network Uplink" 
    * 6.- Network maxSpeed (1000) Guest privateNetworkOnlyFlag (true) for "1 Gbps Private Network Uplink" 
    */ 
    Component networkComponent = new Component(); 
    networkComponent.setMaxSpeed(new Long(100)); 
    guest.getNetworkComponents().add(networkComponent); 
    guest.setPrivateNetworkOnlyFlag(false); 

    // Standard scale group configuration. 
    Group scaleGroup = new Group(); 
    scaleGroup.setCooldown(new Long(1800)); 
    scaleGroup.setMaximumMemberCount(new Long(5)); 
    scaleGroup.setMinimumMemberCount(new Long(1)); 
    scaleGroup.setName("testVSI"); 
    scaleGroup.setRegionalGroupId(new Long(102)); 
    scaleGroup.setSuspendedFlag(false); 
    scaleGroup.setTerminationPolicyId(new Long(2)); 
    scaleGroup.setVirtualGuestMemberTemplate(guest); 
    scaleGroup.setVirtualGuestMemberCount(new Long(0)); 

    Gson gson = new Gson(); 
    System.out.println(gson.toJson(scaleGroupService.createObject(scaleGroup))); 
    } 
} 
+0

있습니다. 그거야 .. 고마워. :) –

0

당신은 개인 네트워크 업 링크를 사용하려면 networkComponent.setPrivateNetworkOnlyFlag(true);를 사용할 수 있습니다. 이를 false로 설정하면 공용 & 개인 네트워크 업 링크가 허용됩니다.

또한이 스크립트를 사용하여 사용 가능한 속도 값을 확인할 수 있습니다.

package SoftLayer_Java_Scripts.Examples; 

import java.util.List; 

import com.softlayer.api.*; 
import com.softlayer.api.service.virtual.Guest; 
import com.softlayer.api.service.virtual.guest.network.Component; 
import com.softlayer.api.service.container.virtual.guest.Configuration; 
import com.softlayer.api.service.container.virtual.guest.configuration.Option; 

public class GetNetworkComponentsTemplates { 

    private static String user = "set me"; 
    private static String apiKey = "set me"; 

    private static ApiClient client = new RestApiClient().withCredentials(user, apiKey); 

    public static void main(String[] args) { 

    Guest.Service virtualGuestService = Guest.service(client); 

    try 
    { 
     Configuration config = virtualGuestService.getCreateObjectOptions(); 
     List<Option> options = config.getNetworkComponents(); 

     for(Option option : options) { 
     String description = option.getItemPrice().getItem().getDescription(); 
     List<Component> networkComponents = option.getTemplate().getNetworkComponents(); 
     long maxSpeed = 0L; 
     for(Component network : networkComponents) { 
      maxSpeed = network.getMaxSpeed(); 
     } 
     System.out.println("*** Network Component ***"); 
     System.out.println("Description: " + description); 
     System.out.println("Max Speed: " + maxSpeed + "\n"); 
     } 
    } 
    catch(Exception e) 
    { 
     System.out.println("Script failed, review the next message for further details: " + e); 
    } 
    } 
} 
+0

아니요. 네트워크 구성 요소에 "setPrivateNetworkOnlyFlag (true)"메서드가 없습니다. ("SoftLayer_Virtual_Guest_Network_Component") –