天天看點

萬萬沒想到,一個技術方案幫實習生追到了營運妹子!

上回說到,公司的新業務增長速度放緩,營運部門提出要發展短視訊來促進更快的業務增長,而我也因為提前準備好了技術預案再一次得到老闆的贊賞(了解詳情請看上集:一個技術預案,讓老闆當場喊出了奧利給 )。

既然萬事俱備了,公司就着手開始做短視訊業務。本着最小化成本驗證、快速疊代的原則,公司并沒有大規模地去推進,而是先開發一個簡單的短視訊網站,招聘了一個妹子來做營運,先跑着看看效果再決定要不要加大投入.

說到這個營運妹子,那可真是青(fu)春(bai)朝(mao)氣(mei)有(da)活(chang)力(tui),聽說她自己在短視訊平台的賬号就有幾十萬粉絲,還是什麼穿搭部落客。我們組那個985名校實習生明顯感覺來公司上班的勁頭都足多了。 你還别說,新來的營運妹子三天兩頭跑過來找我們實習生小哥,今天拜托給連個外接顯示器,明天請幫忙查個網站新使用者數,經常就聽見:“小哥哥,你看這個要怎麼實作呀~”小哥哥那也是有求必應,畢竟萌妹子嘛,總是不好拒絕,不像我們産品大哥要提個需求,那簡直是山崩地裂。

前兩天營運妹子突然跑過來問:“小哥哥,我這個網站可以放到一個單獨的IP位址上麼?”原來她遇到一個問題:新網站受原來網站的影響,不好做優化,負責網站優化的同僚告訴她需要換一個單獨的新IP位址。這個需求可把小哥哥給難住了,向來有求必應的他不知道怎麼辦才好,隻能說:“每個伺服器隻有一個IP位址,如果要換IP位址,可能需要部署到新的伺服器上,這個需要和老闆協商…”營運妹子一聽實作不了,明顯就有些不開心了地走了,留下小哥哥在原地不知所措。

唉,還是太年輕呀,讓老夫來幫你一把吧。我把實習生喊過來說:“想要有單獨的IP位址不需要申請新的伺服器,在現在的華為雲彈性雲伺服器上挂載一個新的網卡就行了,隻需要3步就可以實作。而且雙網卡配置還能提升伺服器帶寬,提升短視訊的通路速度。”

真的麼?實習生小哥兩眼冒光,特别期待地問我:“那怎麼實作呀,我快點弄好,給她一個驚喜!說不定今天晚上就能一起去看電影了呢。”

具體操作嘛,很簡單,很快我就給他寫了一個操作文檔:《3步實作彈性雲伺服器挂載網卡》

步驟1:建立網卡,發送POST請求,記錄subnet 、network、port等ID。

1、建立網絡

1)發送一條POST請求。

POST:https://{endpoint}/v2.0/networks,其中endpoint是雲伺服器所在的區域節點。

Body:

{
 "network": {
 "shared": false,
 "name": "demo-net",
 "admin_state_up": true,
 "tenant_id": "74610f3a5ad941998e91f076297ecf27"
 }
}       

2)記錄傳回響應中“network”的ID。

{
 "network": {
 "id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b",
 "name": "demo-net",
 "status": "ACTIVE",
 "shared": false,
 "subnets": [],
 "availability_zone_hints": [],
 "availability_zones": [
 "az_test_01",
 "az_test_02"
 ],
 "admin_state_up": true,
 "tenant_id": "74610f3a5ad941998e91f076297ecf27",
 "provider:network_type": "vxlan",
 "router:external": false
 }
}       

2、建立子網

1)發送請求。

POST:https://{endpoint}/v2.0/subnets

{
 "subnet": {
 "name": "testsubnet",
 "enable_dhcp": true,
 "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b",
 "tenant_id": "74610f3a5ad941998e91f076297ecf27",
 "dns_nameservers": [
 "8.8.8.8",
 "8.8.8.7"
 ],
 "allocation_pools": [
 {
 "start": "10.0.10.2",
 "end": "10.0.10.254"
 }
 ],
 "host_routes": [],
 "ip_version": 4,
 "gateway_ip": "10.0.10.1",
 "cidr": "10.0.10.0/24"
 }
}       

2)記錄響應中“subnet”的ID。

{
 "subnet": {
 "name": "testsubnet",
 "cidr": "10.0.10.0/24",
 "id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5",
 "enable_dhcp": true,
 "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b",
 "tenant_id": "74610f3a5ad941998e91f076297ecf27",
 "dns_nameservers": [
 "8.8.8.8",
 "8.8.8.7"
 ],
 "allocation_pools": [
 {
 "start": "10.0.10.2",
 "end": "10.0.10.254"
 }
 ],
 "host_routes": [],
 "ip_version": 4,
 "gateway_ip": "10.0.10.1"
 }
}       

3、建立端口

POST:https://{endpoint}/v2.0/ports

{
 "port": {
 "admin_state_up": true, 
  
 "fixed_ips": [
 {
 "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5"
 }
 ], 
 "name": "test", 
 "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b",
 "tenant_id": "74610f3a5ad941998e91f076297ecf27"
 }
}       

2)記錄響應中“port”的ID

{
 "port": {
 "id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4",
 "name": "test",
 "status": "DOWN",
 "admin_state_up": true,
 "fixed_ips": [
 {
 "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5",
 "ip_address": "10.0.10.233"
 }
 ],
 "mac_address": "fa:16:3e:db:91:f6",
 "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b",
 "tenant_id": "74610f3a5ad941998e91f076297ecf27",
 "device_id": "",
 "device_owner": "",
 "security_groups": [
 "93031677-2895-4b83-855a-637e309aa9e6"
 ],
 "extra_dhcp_opts": [],
 "allowed_address_pairs": [],
 "binding:vnic_type": "normal",
 "binding:vif_details": {},
 "binding:profile": {}
 }
}       

步驟2:挂載網卡

URI格式:POST /v2.1/{tenant_id}/servers/{server_id}/os-interface

示例

POST:https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers/9f4d9281-95e7-4915-a126-1ee597101e2e/os-interface

{
 "interfaceAttachment": {
 "port_id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4"
 }
}       

2)響應示例

{
 "interfaceAttachment": {
 "port_state": "ACTIVE",
 "fixed_ips": [
 {
 "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5",
 "ip_address": "10.0.10.233"
 }
 ],
 "port_id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4",
 "net_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b",
 "mac_addr": "fa:16:3e:db:91:f6"
 }
}       

步驟3:确認挂載結果。

URI格式:GET /v2.1/{tenant_id}/servers/{server_id}/os-interface

GET:https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers/9f4d9281-95e7-4915-a126-1ee597101e2e/os-interface

{
 "interfaceAttachments": [
 {
 "port_state": "ACTIVE",
 "fixed_ips": [
 {
 "subnet_id": "46712fe4-25bd-4eae-874b-a528abfb76be",
 "ip_address": "192.168.0.50"
 }
 ],
 "port_id": "dd706739-b696-40be-a9f4-477ce478cb18",
 "net_id": "17251a8f-a671-4d7c-85d9-af5415962994",
 "mac_addr": "fa:16:3e:a5:e0:3c"
 },
{
 "port_state": "ACTIVE",
 "fixed_ips": [
 {
 "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5",
 "ip_address": "10.0.10.233"
 }
 ],
 "port_id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4",
 "net_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b",
 "mac_addr": "fa:16:3e:db:91:f6"
 }
 ]
}       

看到"port_state": "ACTIVE",就表示我們已經挂載好網卡了。

據說,由于疫情的原因,當天兩人電影是沒看成,但是正式處對象了……萬萬沒想到,一個技術方案還讓我當了一次月老。從此以後,實習生小哥看到我那叫一個畢恭畢敬~

據了解,目前API Explorer平台已開放EI企業智能、計算、應用服務、網絡、軟體開發平台、視訊等70+雲服務,共上線2000+個API、6000+個錯誤碼。在前期試運作期間,華為雲API Explorer平台上的API接口也已被多家企業成功接入。

點選檢視詳情:《華為雲一站式API解決方案平台API Explorer上線》

華為雲API Explorer平台在未來幾個月會實作更多功能,比如支援SDK示例代碼、CLI等特性,同時也會開放更多的雲服務API接口,連接配接更多開發者實作創新、拓寬創新邊界。

點選關注,第一時間了解華為雲新鮮技術~

繼續閱讀