国产成人精品18p,天天干成人网,无码专区狠狠躁天天躁,美女脱精光隐私扒开免费观看

怎么在OpenStack4j進(jìn)行OpenStack開(kāi)發(fā)

發(fā)布時(shí)間:2021-08-17 12:35 來(lái)源:億速云 閱讀:0 作者:chen 欄目: 服務(wù)器 歡迎投稿:712375056

本篇內容介紹了“怎么在OpenStack4j進(jìn)行OpenStack開(kāi)發(fā)”的有關(guān)知識,在實(shí)際案例的操作過(guò)程中,不少人都會(huì )遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學(xué)有所成!

一、說(shuō)明

項目通過(guò)Maven(3.x)進(jìn)行構建,然后使用的是openstack JAVA版的SDK工具openstack4j。

注意:開(kāi)發(fā)前,必須在主機的hosts文件中添加openstack控制節點(diǎn)的主機信息,如下圖所示是在windows系統下修改hosts文件(文件地址:C:\Windows\System32\drivers\etc\hosts)

二、pom.xml設置

pom文件中添加對slf4j-api、slf4j-log4j12和openstack4j的依賴(lài),由于本人開(kāi)發(fā)環(huán)境使用的jdk是1.7,所以使用的openstack4j版本為2.x,如果jdk是1.8的話(huà),則可以使用3.x

<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api -->
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.7.21</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-log4j12 -->
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <version>1.7.21</version>
    </dependency>    
    
    <!-- OpenStack4j -->
    <dependency>
	  <groupId>org.pacesys</groupId>
	  <artifactId>openstack4j</artifactId>
	  <version>2.20</version>
	  <classifier>withdeps</classifier>
	</dependency>

三、測試代碼

寫(xiě)的java的測試代碼如下,實(shí)現以下功能:1)創(chuàng )建OSClient實(shí)例;2)獲取Swfit中container信息;3)新建一個(gè)名為xhhuangContainer的container

package com.xhhuang.openstack;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.openstack4j.model.identity.User;
import org.openstack4j.model.storage.object.SwiftAccount;
import org.openstack4j.model.storage.object.SwiftContainer;
import org.openstack4j.model.storage.object.options.CreateUpdateContainerOptions;
import org.openstack4j.openstack.OSFactory;
import org.openstack4j.api.OSClient;

/**
 * Hello world!
 *
 */
public class App 
{
    public static void main( String[] args )
    {
    	// 開(kāi)始認證
    	System.out.println("開(kāi)始認證:");
        OSClient os = OSFactory.builder()
        						.endpoint("http://10.3.1.123:5000/v2.0")
        						.credentials("pipsCloud", "pipsCloudTeam")
        						.tenantName("pipsCloud")
        						.authenticate();
        System.out.println("完成認證:"+os.toString());
        
        System.out.println("獲取Swift賬戶(hù):");
        SwiftAccount swiftAccount = os.objectStorage().account().get();
        System.out.println(swiftAccount);
        
        System.out.println("獲取對象存儲元數據信息:");
        Map<String, String> metadata = new HashMap<String, String>();
        boolean result = os.objectStorage().account().updateMetadata(metadata);
        System.out.println(result);
        
        System.out.println("獲取容器信息:");
        List<? extends SwiftContainer> containers = os.objectStorage().containers().list();
        int containerCount = (int) swiftAccount.getContainerCount();
        
        for(int i=0; i<containerCount; i++){
        	System.out.println(containers.get(i).getName()+containers.get(i).getTotalSize()+"\n");
        }
        
        System.out.println("新建容器:");
        os.objectStorage().containers().create("xhhuangContainer", CreateUpdateContainerOptions.create()
        																					.accessAnybodyRead()
        																					);
        
        
    }
}

測試結果如下:

  • (console端)

  • openstack container查看

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。

国产超碰人人爽人人做人人添| 玩弄放荡人妻一区二区三区| 亚洲AV无码一区东京热久久| 鲁死你资源站亚洲AV| 国内精品自在自线| 亚洲永久精品ww47|