2017-10-12 2 views
1

파이썬을 사용하여 F5 상자에서 대량 변경 작업을 수행해야합니다. 파이썬에서 단일 가상을 작성하기위한 신텍스가 있습니다. 그러나 입력이있는 곳에서 약 300 + 10 + 열이있는 .CSV. 300 행. 그래서 명령파이썬으로 파이썬을 가져오고 F5에 mutilple VIP를 생성합니다.

  • 10 데이터
  • F5 상자에서 단일 VIP를 만든 다음 다시 같은 기능이 은 행이 경우 두 번째 행
  • 에서 데이터를 가져 오기 위해이 명령과 함께 1 행에서 데이터를 가져올 수있다 빈, 그냥 몇 가지 메시지가 행의 끝을 배치 할 수 있으며, 중지 명령이 한 행에 실패 할 경우 완료 상태
  • 을주고있다, 그 다음 다음 행으로 이동

P ython 명령

myvirtual = bigip.ltm.virtuals.virtual.create(name=["name"], 
       description=["description"], 
       destination="%s:%s" % (["ip"], ["port"]), 
       ipProtocol=["ipProtocol"], [pool][1]=["pool"]) 

CSV 형식

Row name description destination IP destination Port  ipProtocol pool 

1 서버 1 서버 1 172.61.64.1 80 TCP TCP

2 서버 2 서버 2 172.61.64.2 80 TCP TCP

하나의 VIP를 만들기위한

3 서버 3 서버 3 172.61.64.3 80 TCp TCp

4 서버 4 서버 4 172 .61.64.4 80 TCP TCP

그래서, 내 명령은 CSV 파일에서 4 개 개의 가상 서버를 생성하는 하나 하나 내가 파이썬 3 및 가져 오기 CSV를 사용하고 하나의 행 에 대한

하나 도움, 나는하시기 바랍니다 new to Python

+0

여기에 어느 하나 도움이, 내가 어떤 곳을 받고 있지 않다 : 당신이 열 이름으로 모든 필드를 참조 할 수 있도록 해주는 사전으로 ("대") 모든 행을 읽기 ? –

답변

0

파이썬의 CSV 모듈을 사용하여 파일을 반복 할 수 있습니다 ("bigip"모듈에 대한 구문은 확실하지 않지만 콘솔에 오류가 있으면 디버그 할 수 있습니다).

import csv 
with open('path-to-your-file.csv', 'rb') as f: 
    for vs in csv.DictReader(f): 
     try: 
      bigip.ltm.virtuals.virtual.create(
       name=vs['name'], 
       description=vs['description'], 
       destination="%s:%s" % (vs['destination IP'], vs['destination Port']), 
       ipProtocol=vs['ipProtocol'], 
       pool=vs['pool'] 
      ) 
     except Exception as e: 
      print e 
+0

감사합니다. 정상적으로 작동합니다. –

관련 문제