成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何使用Ansible創建AWS EC2密鑰

系統 Linux 系統運維
我想使用 Ansible 工具創建 Amazon EC2 密鑰對。不想使用 AWS CLI 來創建。可以使用 Ansible 來創建 AWS ec2 密鑰嗎?簡而言之,你需要安裝 Ansible 和 boto 模塊。我們一起來看下如何安裝 boto 并結合 Ansible 使用。

https://s4.51cto.com/oss/201802/23/3d2b6bf178e83eea78050153bd5deead.jpeg

我想使用 Ansible 工具創建 Amazon EC2 密鑰對。不想使用 AWS CLI 來創建。可以使用 Ansible 來創建 AWS ec2 密鑰嗎?

你需要使用 Ansible 的 ec2_key 模塊。這個模塊依賴于 python-boto 2.5 版本或者更高版本。 boto 是亞馬遜 Web 服務的一個 Python API。你可以將 boto 用于 Amazon S3、Amazon EC2 等其他服務。簡而言之,你需要安裝 Ansible 和 boto 模塊。我們一起來看下如何安裝 boto 并結合 Ansible 使用。

 

***步 - 在 Ubuntu 上安裝***版本的 Ansible

你必須給你的系統配置 PPA 來安裝***版的 Ansible。為了管理你從各種 PPA(Personal Package Archives)安裝軟件的倉庫,你可以上傳 Ubuntu 源碼包并編譯,然后通過 Launchpad 以 apt 倉庫的形式發布。鍵入如下命令 apt-get 命令或者 apt 命令

  1. $ sudo apt update
  2. $ sudo apt upgrade
  3. $ sudo apt install software-properties-common

接下來給你的系統的軟件源中添加 ppa:ansible/ansible

  1. $ sudo apt-add-repository ppa:ansible/ansible

更新你的倉庫并安裝 Ansible:

  1. $ sudo apt update
  2. $ sudo apt install ansible

安裝 boto:

  1. $ pip3 install boto3

 

關于在CentOS/RHEL 7.x上安裝 Ansible 的注意事項

需要在 CentOS 和 RHEL 7.x 上配置 EPEL 源yum命令

  1. $ cd /tmp
  2. $ wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
  3. $ ls *.rpm
  4. $ sudo yum install epel-release-latest-7.noarch.rpm
  5. $ sudo yum install ansible

安裝 boto:

  1. $ pip install boto3

第二步 2 – 配置 boto

你需要配置 AWS credentials/API 密鑰。參考 “AWS Security Credentials” 文檔如何創建 API key。用 mkdir 命令創建一個名為 ~/.aws 的目錄,然后配置 API key:

  1. $ mkdir -pv ~/.aws/
  2. $ vi ~/.aws/credentials
  1. [default]
  2. aws_access_key_id = YOUR-ACCESS-KEY-HERE
  3. aws_secret_access_key = YOUR-SECRET-ACCESS-KEY-HERE

還需要配置默認 AWS 區域

  1. $ vi ~/.aws/config

輸出樣例如下:

  1. [default]
  2. region = us-west-1

通過創建一個簡單的名為 test-boto.py 的 Python 程序來測試你的 boto 配置是否正確:

  1. #!/usr/bin/python3
  2. # A simple program to test boto and print s3 bucket names
  3. import boto3
  4. t = boto3.resource('s3')
  5. for b in t.buckets.all():
  6. print(b.name)

按下面方式來運行該程序:

  1. $ python3 test-boto.py

輸出樣例:

  1. nixcraft-images
  2. nixcraft-backups-cbz
  3. nixcraft-backups-forum

上面輸出可以確定 Python-boto 可以使用 AWS API 正常工作。

 

步驟 3 - 使用 Ansible 創建 AWS ec2 密鑰

創建一個名為 ec2.key.yml 的劇本,如下所示:

  1. ---
  2. - hosts: local
  3. connection: local
  4. gather_facts: no
  5. tasks:
  6.  
  7. - name: Create a new EC2 key
  8. ec2_key:
  9. name: nixcraft-key
  10. region: us-west-1
  11. register: ec2_key_result
  12.  
  13. - name: Save private key
  14. copy: content="{{ ec2_key_result.key.private_key }}" dest="./aws.nixcraft.pem" mode=0600
  15. when: ec2_key_result.changed

其中,

  • ec2_key: – ec2 密鑰對。
  • name: nixcraft_key – 密鑰對的名稱。
  • region: us-west-1 – 使用的 AWS 區域。
  • register: ec2_key_result – 保存生成的密鑰到 ec2keyresult 變量。
  • copy: content="{{ ec2_key_result.key.private_key }}" dest="./aws.nixcraft.pem" mode=0600 – 將 ec2_key_result.key.private_key 的內容保存到當前目錄的一個名為 aws.nixcraft.pem 的文件中。設置該文件的權限為 0600 (unix 文件權限)。
  • when: ec2_key_result.changed – 僅僅在 ec2_key_result 改變時才保存。我們不想覆蓋你的密鑰文件。

你還必須創建如下 hosts 文件:

  1. [local]
  2. localhost

如下運行你的劇本:

  1. $ ansible-playbook -i hosts ec2.key.yml

***你應該有一個名為 `aws.nixcraft.pem 私鑰,該私鑰可以和 AWS EC2 一起使用。使用 cat 命令查看你的密鑰:

  1. $ cat aws.nixcraft.pem

如果你有 EC2 虛擬機,請按如下方式使用:

  1. $ ssh -i aws.nixcraft.pem user@ec2-vm-dns-name

查看有關 python 數據結構變量名的信息,比如 ec2keyresult.changed 和 ec2keyresult.key.private_key

你一定在想我是如何使用變量名的,比如 ec2_key_result.changedec2_key_result.key.private_key。它們在哪里定義過嗎?變量的值是通過 API 調用返回的。簡單地使用 -v 選項運行 ansible-playbook 命令來查看這樣的信息:

  1. $ ansible-playbook -v -i hosts ec2.key.yml

 

我該如何刪除一個密鑰?

使用如下 ec2-key-delete.yml

  1. ---
  2. - hosts: local
  3. connection: local
  4. gather_facts: no
  5. tasks:
  6.  
  7. - name: Delete a EC2 key
  8. ec2_key:
  9. name: nixcraft-key
  10. region: us-west-1
  11. # absent means delete keypair
  12. state: absent

按照如下方式運行:

  1. $ ansible-playbook -i hosts ec2-key-delete.yml

 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2017-12-02 12:42:57

AWSEC2

2014-08-18 11:17:03

AWS EC2Salt Cloud

2014-11-14 10:06:06

AWSEC2 Contain亞馬遜

2014-07-28 10:13:59

AWS部署APIEC2

2020-12-01 15:47:49

AWSEC2macOS

2018-05-17 22:16:07

Amazon EC2Web服務

2015-08-21 17:47:38

Docker安全EC2容器服務

2014-11-26 09:09:10

AmazonAWSEC2 Contain

2013-04-17 10:23:13

微軟AWSEC2

2016-02-01 17:06:52

AWS技術峰會AWS Summit2

2010-08-13 10:50:50

2017-04-20 19:15:32

Linux服務器AWS EC2

2014-07-02 21:24:09

AWSAmazon EC2

2017-10-16 14:48:35

AWSEC2EBS

2012-03-09 15:30:26

亞馬遜EC2云計算

2009-03-30 17:25:17

Amazon亞馬遜Eclipse

2012-11-15 09:30:59

亞馬遜EC2云計算

2013-06-03 09:24:34

公有云計算亞馬遜EC2API

2012-08-13 09:33:28

Windows AzuAmazonEC2

2010-08-23 10:22:53

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 美人の美乳で授乳プレイ | 91精品久久久久久久久中文字幕 | 欧美黑人一级爽快片淫片高清 | 久久精品国产亚洲 | 97视频精品 | 美国一级片在线观看 | 国产精品高潮呻吟久久av野狼 | 久久精品亚洲精品国产欧美 | 999热精品| 精品久久久久久久久久久 | 亚洲视频在线播放 | 国产日产久久高清欧美一区 | 精品美女视频在免费观看 | 中文字幕在线免费视频 | 美日韩精品 | 成人国产在线观看 | 天堂av中文 | 国产精品一区二区av | 欧美精品一区三区 | www.玖玖玖| 欧美色综合天天久久综合精品 | 一级毛片高清 | 亚洲高清中文字幕 | 华丽的挑战在线观看 | 国产一区二区三区欧美 | 久操福利| 国内精品久久久久久 | 毛片在线看片 | 免费一区| 成人免费网站www网站高清 | 精品国产一区二区三区久久影院 | 国产精品久久久久久高潮 | 精品在线一区二区三区 | 亚洲二区精品 | 精品一区二区三 | 国产精品久久久 | 三级成人片 | 亚洲视频精品 | 精品日韩一区 | 久久综合九色综合欧美狠狠 | 精品成人佐山爱一区二区 |