2017-02-01 31 views
6

Tôi đang gặp sự cố khi cố gắng cài đặt tác nhân ghi nhật ký trên nút ec2 của mình. Khi tôi chạy lệnh này:gặp sự cố khi cài đặt đại lý awslogs

sudo python ./awslogs-agent-setup.py --region us-east-1 

có vẻ như thất bại ở bước 2 như thế này:

Launching interactive setup of CloudWatch Logs agent ... 

Step 1 of 5: Installing pip ...DONE 

Step 2 of 5: Downloading the latest CloudWatch Logs agent bits ... 
Traceback (most recent call last): 
    File "./awslogs-agent-setup.py", line 1144, in <module> 
    main() 
    File "./awslogs-agent-setup.py", line 1140, in main 
    setup.setup_artifacts() 
    File "./awslogs-agent-setup.py", line 696, in setup_artifacts 
    self.install_awslogs_cli() 
    File "./awslogs-agent-setup.py", line 523, in install_awslogs_cli 
    subprocess.call([AWSCLI_CMD, 'configure', 'set', 'plugins.cwlogs', 'cwlogs'], env=DEFAULT_ENV) 
    File "/usr/lib64/python2.7/subprocess.py", line 524, in call 
    return Popen(*popenargs, **kwargs).wait() 
    File "/usr/lib64/python2.7/subprocess.py", line 711, in __init__ 
    errread, errwrite) 
    File "/usr/lib64/python2.7/subprocess.py", line 1327, in _execute_child 
    raise child_exception 
OSError: [Errno 2] No such file or directory 

gì thư mục hoặc tập tin là nó thiếu?

+0

bạn đang sử dụng nền tảng (os/phiên bản) nào? Tuy nhiên, tập lệnh cài đặt không cài đặt tất cả các nền tảng. – gsaslis

+0

Tôi đang sử dụng RHEL7 – user2061886

+0

, dòng 523 là 'subprocess.call ([AWSCLI_CMD, 'configure', 'set', 'plugins.cwlogs', 'cwlogs'], env = DEFAULT_ENV)' và AWSCLI_CMD là '/ var/awslogs/bin/aws'. bạn có thể xác nhận nếu điều đó tồn tại không? – gsaslis

Trả lời

1

Mặc dù câu hỏi này hơi cũ, tôi muốn thêm câu trả lời cho câu hỏi đó, vì gần đây tôi đã gặp phải vấn đề tương tự, nhưng đã cố gắng tìm cách để giải quyết vấn đề. Tôi đã cố gắng để cài đặt này trong một trường hợp chạy CentOS 7.

Khi tôi chạy lệnh cài đặt lần đầu tiên, tôi đã nhận chính xác nhật ký lỗi được báo cáo bởi @ user2061886. Trình cài đặt ghi vào một tệp có đường dẫn sau: /var/log/awslogs-agent-setup.log. Tôi đuôi tập tin và thấy rằng trong nội bộ trình cài đặt đã phàn nàn về việc không thể tìm thấy tập tin "Python.h":

creating build/temp.linux-x86_64-2.7 
    checking if libyaml is compilable 
    gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,- 
D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer- 
size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/usr/include/python2.7 -c build/temp.linux-x86_64-2.7/check_libyaml.c -o build/temp.linux-x86_64-2.7/check_libyaml.o 
checking if libyaml is linkable 
gcc -pthread build/temp.linux-x86_64-2.7/check_libyaml.o -L/usr/lib64 -lyaml -o build/temp.linux-x86_64-2.7/check_libyaml 
building '_yaml' extension 
creating build/temp.linux-x86_64-2.7/ext 
gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/usr/include/python2.7 -c ext/_yaml.c -o build/temp.linux-x86_64-2.7/ext/_yaml.o 
ext/_yaml.c:4:20: fatal error: Python.h: No such file or directory 
#include "Python.h" 
        ^
    compilation terminated. 
    error: command 'gcc' failed with exit status 1 

tôi không thể có được nó làm việc với Python 2.7, vì vậy tôi chuyển sang Python 3.5 . Để cài đặt Python 3.5 trong CentOS 7:

yum -y udpate 

yum install -y epel-release 

yum install -y http://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius- 
release-1.0-13.ius.centos7.noarch.rpm 

yum -y update 

yum install -y python35u* 

Tôi chạy lại lệnh trình cài đặt và vượt qua lỗi được báo cáo bởi @ user2061886. Tôi có thể cài đặt và định cấu hình Tác nhân nhật ký CloudWatch. Tuy nhiên, ngay sau khi tôi bắt đầu dịch vụ (sudo dịch vụ awslogs bắt đầu), tôi chạy vào một vấn đề thứ hai. Thời gian này tôi đã phải đuôi các tập tin sau đây để phát hiện vấn đề: /var/log/awslogs.log. Các đại lý bản ghi cloudwatch được về cơ bản phàn nàn về việc không thể tìm thấy gói cwlogs:

Traceback (most recent call last): 
    File "/var/awslogs/bin/aws", line 27, in <module> 
    sys.exit(main()) 
    File "/var/awslogs/bin/aws", line 23, in main 
    return awscli.clidriver.main() 
    File "/usr/lib/python3.5/site-packages/awscli/clidriver.py", line 55, in main 
    driver = create_clidriver() 
    File "/usr/lib/python3.5/site-packages/awscli/clidriver.py", line 64, in create_clidriver 
    event_hooks=emitter) 
    File "/usr/lib/python3.5/site-packages/awscli/plugin.py", line 44, in load_plugins 
    modules = _import_plugins(plugin_mapping) 
    File "/usr/lib/python3.5/site-packages/awscli/plugin.py", line 58, in _import_plugins 
    plugins.append(__import__(path)) 
ImportError: No module named 'cwlogs' 

tôi giải quyết điều này bằng cách cài đặt gói bằng tay với pip:

pip3.5 install awscli-cwlogs. 

này có vấn đề được giải quyết!

0

^^ Ừ .. Tôi cố định một vấn đề tương tự với một số phụ thuộc mất tích đã được chỉ ra trong /var/log/awslogs.log


apt-get update & & apt-get install - y python-pip libpython-dev

1

tôi giải quyết điều này bằng cách đi qua các thông dịch viên python để được sử dụng:

sudo python ./awslogs-agent-setup.py --region us-east-1 --python=/usr/bin/python3.5 
0

tôi đã cùng một vấn đề cố gắng để ở gian hàng trên centos docker. Hóa ra tôi có thể làm mà không cập nhật python sau khi cài đặt các gói này

python-devel libpython-dev which initscripts cronie 
Các vấn đề liên quan