Overwatch League Ratings
Standings
Matches
About
Los Angeles Gladiators
Upcoming Matches
Stage 4
Saturday, August 24
win
prob.
map
+/-
Gladiator
3
45%
-0.2
Valiant
1
55%
+0.2
Friday, August 16
win
prob.
map
+/-
Gladiator
2
39%
-0.5
Spark
3
61%
+0.5
Friday, August 9
win
prob.
map
+/-
Gladiator
3
80%
+1.5
Fuel
2
20%
-1.5
Saturday, August 3
win
prob.
map
+/-
Gladiator
2
7%
-2.3
Shock
3
93%
+2.3
Friday, August 2
win
prob.
map
+/-
Gladiator
3
63%
+0.6
Hunters
2
37%
-0.6
Saturday, July 27
win
prob.
map
+/-
Gladiator
1
86%
+1.8
Outlaws
3
14%
-1.8
Thursday, July 25
win
prob.
map
+/-
Gladiator
3
41%
-0.4
Excelsior
1
59%
+0.4
Stage 3
Sunday, June 30
win
prob.
map
+/-
Gladiator
0
20%
-1.5
Titans
4
80%
+1.5
Friday, June 28
win
prob.
map
+/-
Gladiator
4
94%
+2.5
Defiant
0
6%
-2.5
Friday, June 21
win
prob.
map
+/-
Gladiator
1
69%
+0.9
Dragons
3
31%
-0.9
Sunday, June 16
win
prob.
map
+/-
Gladiator
4
95%
+2.5
Justice
0
5%
-2.5
Friday, June 14
win
prob.
map
+/-
Gladiator
3
78%
+1.4
Fusion
1
22%
-1.4
Sunday, June 9
win
prob.
map
+/-
Gladiator
1
5%
-2.6
Titans
3
95%
+2.6
Friday, June 7
win
prob.
map
+/-
Gladiator
4
44%
-0.3
Fuel
0
56%
+0.3
Stage 2 Title Matches
Friday, May 10
win
prob.
map
+/-
Gladiator
0
43%
-0.3
Excelsior
3
57%
+0.3
Stage 2
Friday, May 3
win
prob.
map
+/-
Gladiator
1
93%
+2.3
Uprising
3
7%
-2.3
Saturday, April 20
win
prob.
map
+/-
Gladiator
3
80%
+1.5
Hunters
1
20%
-1.5
Thursday, April 18
win
prob.
map
+/-
Gladiator
3
99%
+3.1
Mayhem
1
1%
-3.1
Sunday, April 14
win
prob.
map
+/-
Gladiator
2
89%
+2.1
Valiant
1
11%
-2.1
Saturday, April 13
win
prob.
map
+/-
Gladiator
4
98%
+2.9
Charge
0
2%
-2.9
Friday, April 5
win
prob.
map
+/-
Gladiator
3
64%
+0.6
Dynasty
2
36%
-0.6
Thursday, April 4
win
prob.
map
+/-
Gladiator
3
80%
+1.5
Dragons
1
20%
-1.5
Stage 1
Saturday, March 9
win
prob.
map
+/-
Gladiator
3
56%
+0.3
Charge
1
44%
-0.3
Thursday, March 7
win
prob.
map
+/-
Gladiator
4
8%
-2.3
Reign
0
92%
+2.3
Sunday, March 3
win
prob.
map
+/-
Gladiator
1
72%
+1.0
Spark
3
28%
-1.0
Friday, March 1
win
prob.
map
+/-
Gladiator
1
50%
+0.0
Spitfire
2
50%
-0.0
Saturday, February 23
win
prob.
map
+/-
Gladiator
1
49%
-0.0
Eternal
2
51%
+0.0
Sunday, February 17
win
prob.
map
+/-
Gladiator
3
29%
-1.0
Shock
2
71%
+1.0
Thursday, February 14
win
prob.
map
+/-
Gladiator
1
41%
-0.4
Dynasty
3
59%
+0.4


The Compare menu offers commands for comparing a file against another file:
|
Start a new file comparison | |
|
Close the compare view | |
|
Show the compare view in a split window | |
|
Show the compare view in a tabbed window | |
|
Jumps to the first difference in both files | |
|
Jumps to the previous difference | |
|
Jumps to the next difference | |
|
Jumps to the last difference | |
|
Keeps scrolling synchronized between the windows | |
|
Keeps the cursor position (and selection) synchronized | |
|
|
|


-
October 2018 Update
Alrighty, a little update here on what has been going on in my efforts here with Super.NET. Funding To start, things have finally settled down in the area of focus.
Read more… -
Funding Super.NET: The Options
Figuring out the Money Game I’ve had this crazy idea of Super.NET now for about six weeks, I want to say. Probably a little longer. A lot has happened during this time.
Read more… -
.NET Is the Commodore 64 That Didn't Die
.NET is the Commodore 64 that didn’t die. In my view, .NET is easily the greatest invention out of MSFT during it’s grand and enduring history. It’s been around for nearly 20 years and MSFT continues to put the brightest talent into its gears and has continued to consistently adapt and improve it over the years.
Read more… -
Culture of Excellence
This is an article on the topic of philosophy in software, business, and life. The Final Chapter In our final section here, we examine the ideal culture that we want to build around the philosophy that is being described here.
Read more… -
Simple Does It
This is an article on the topic of philosophy in software, business, and life. As I mentioned in describing software as a craft, I have been going through a very inspirational time with putting this project together.
Read more… -
Business of Art
This is an article on the topic of philosophy in software, business, and life. Having explored software as a craft, we can now explore a few aspects of art as a business and the challenges it faces as such.
Read more… -
Software as a Craft
This is an article on the topic of philosophy in software, business, and life. In the philosophy that is described here, it proposes that software development is a craft, much like wood working, pottery, beer, or – as this section later calls out – jewelry.
Read more… -
Aspire to Inspire
This is an article on the topic of philosophy in software, business, and life. The Need for Inspiration In my estimation, the primary issue with our .NET client development ecosystem is that of inspiration.
Read more… -
Soul Space
This is an article on the topic of philosophy in software, business, and life. Quick Word on Value Judgments Before diving into the subject, I think it’s appropriate to have a quick word on what might be perceived as value judgements within my communication.
Read more… -
The Customer Is Not Always Right
This is an article on the topic of philosophy in software, business, and life. “The Customer is Always Right” We hear this a lot in business, and perhaps our culture.
Read more…


5 snaps of the man in Masasa Mbangeni’s life
Phakamani Mvelashe
Cape Town - Actress Masasa Mbangeni is head over heels in love with her man.
The former Scandal! actress is usually private about her personal life but has recently taken to sharing pictures of the man in her life on social media.
Although she hasn’t revealed his name or tagged him in any of her pictures, she has shared some heartfelt messages to him on her social media pages.
Masasa has been in the entertainment industry for a number of years and has acted in shows such as Scandal!, Harvest and Machine Gun Preacher.
She is also a two-time SA Film and Television Award and Royalty Soapie Award winner.
Here are 5 pictures of her bae:


View Music
Add Music
Profile
Song :
Artist :
Album :
Genre :
Alt
Country
Classical
Hip-Hop
Pop
Rock
Add
Song length:
Artist:
Album:
Genre:
Rock
Classical
Alt
Country
Pop
Hip-Hop
Filter


I took part in Static Showdown, a 48 hour hackathon featuring static web apps the weekend of January 24/25, 2015 and built WhichHire. WhichHire is just a simple workflow wizard for reviewing potential candidates for a job, specifically developers from UnderDog
Although I coded WhichHire by myself, a shout out and thank you goes to @jeaninehender for creating the logo
Before the hackathon I was in a position to hire, and used UnderDog to get access to candidates. UnderDog reviews and ranks applicants and sends hand-picked candidate batches to companies via an email with an attached JSON file of the data.
Each time I received one of these emails I would review the candidates, but wanted a better workflow so came up with the following steps:
- Read each candidates info and checkout their personal and social links - Add Candidates
- Select that individual or move to the next to build a list of qualified candidates - Select Candidates
- Reach out to these qualified candidates via Email - Contact Candidates
I took this blueprint and started to think of how I could create a simple static wizard as part of the Static Showdown, dare I say kill 2 birds with one stone. Let’s Take a look.
Step 1 - Add Candidates
You could add them individually
or you can add the JSON file from UnderDog - Or if you just want to test, click the mock data as it uses RandomUser.me
Step 2 - Select Candidates
You can select a individual user or load the first one and use the right arrow key to go to each of them one by one.
If you like the candidates you can “Select” them and continue on
Once you’ve selected your candidates, move to Step 3
Step 3 - Contact Candidates
Simple mailto (Email) link so you can just click and open in your default mail app.
Although my intent was to build a full-blown HR app, a static hackathon limits what you can build in 48 hours and with what tools.
| Please Take WhichHire for a spin |


|
Uintah::PhaseField
|
Finite-differences scheme at Neumann boundaries interface (ScalarField, node-centered, 1-ghost stencils implementation) More...
#include <bc_fd_Neumann_G1_NC.h>
Public Member Functions | |
| bc_fd (const view< Field > *view, const VarLabel *label, int material, const Level *level, const V &value) | |
| Constructor. More... | |
| virtual | ~bc_fd ()=default |
| Destructor. More... | |
| bc_fd (const bc_fd &)=delete | |
| Prevent copy (and move) constructor. More... | |
| bc_fd & | operator= (const bc_fd &)=delete |
| Prevent copy (and move) assignment. More... | |
| virtual void | set (DataWarehouse *dw, const Patch *patch, bool use_ghosts) override |
| Retrieve value from the DataWarehouse for a given patch. More... | |
| virtual void | set (DataWarehouse *dw, const Level *level, const IntVector &low, const IntVector &high, bool use_ghosts) override |
| Retrieve value from the DataWarehouse for a given region. More... | |
| virtual Support | get_support () const override |
| get bc view support More... | |
| virtual bool | is_defined_at (const IntVector &id) const override |
| Check if the view has access to the position with index id. More... | |
| virtual T & | operator[] (const IntVector &id) override |
| Get/Modify value at position with index id (modifications are allowed if T is non const) More... | |
| virtual V | operator[] (const IntVector &id) const override |
| Get value at position. More... | |
| virtual view< Field > * | get_view () override |
| Get base view (Virtual Implementation) More... | |
| virtual const view< Field > * | get_view () const override |
| Get base view. More... | |
| template<DirType DIR> | |
| std::enable_if< D !=DIR, T >::type | d (const IntVector &id) const |
| First order derivative (parallel direction implementation) More... | |
| template<DirType DIR> | |
| std::enable_if< D==DIR, T >::type | d (const IntVector &id) const |
| First order derivative (normal direction implementation) More... | |
| template<DirType DIR> | |
| std::enable_if< D !=DIR, T >::type | d2 (const IntVector &id) const |
| Second order derivative (parallel direction implementation) More... | |
| template<DirType DIR> | |
| std::enable_if< D==DIR, T >::type | d2 (const IntVector &id) const |
| Second order derivative (normal direction implementation) More... | |
| Public Member Functions inherited from Uintah::PhaseField::detail::basic_fd_view< ScalarField< T >, STN > | |
| virtual | ~basic_fd_view ()=default |
| Default destructor. More... | |
| virtual V | dx (const IntVector &id) const =0 |
| Partial x derivative. More... | |
| virtual V | dy (const IntVector &id) const =0 |
| Partial y derivative. More... | |
| virtual V | dz (const IntVector &id) const =0 |
| Partial z derivative. More... | |
| virtual V | dxx (const IntVector &id) const =0 |
| Partial x second order derivative. More... | |
| virtual V | dyy (const IntVector &id) const =0 |
| Partial y second order derivative. More... | |
| virtual V | dzz (const IntVector &id) const =0 |
| Partial z second order derivative. More... | |
| Public Member Functions inherited from Uintah::PhaseField::detail::view< ScalarField< T > > | |
| virtual | ~view ()=default |
| Default destructor. More... | |
| virtual view * | clone (bool deep) const =0 |
| Get a copy of the view. More... | |
| virtual view * | clone (bool deep, const IntVector &offset) const =0 |
| Get a copy of the view and apply translate the support. More... | |
Protected Member Functions | |
| bc_fd (const bc_fd *copy, bool deep) | |
| Constructor. More... | |
Additional Inherited Members | |
| Public Types inherited from Uintah::PhaseField::detail::view< ScalarField< T > > | |
| using | field_type = ScalarField< T > |
| Type of field. More... | |
| Static Public Attributes inherited from Uintah::PhaseField::detail::basic_fd_view< ScalarField< T >, STN > | |
| static constexpr bool | use_ghosts_dflt = true |
| Default value for use_ghost when retrieving data. More... | |
| Static Public Attributes inherited from Uintah::PhaseField::detail::view< ScalarField< T > > | |
| static constexpr bool | use_ghosts_dflt = false |
| Default value for use_ghost when retrieving data. More... | |
Finite-differences scheme at Neumann boundaries interface (ScalarField, node-centered, 1-ghost stencils implementation)
approximation of ghost value across Neumann boundaries
| T | type of the field value at each point |
| STN | finite-difference stencil |
| F | patch face on which bc is to be applied |
|
inlineprotected |
Constructor.
Instantiate a copy of a given view
| copy | source view for copying |
| deep | if true inner grid variable is copied as well otherwise the same grid variable is referenced |
|
inline |
Constructor.
Instantiate a view without gathering info from the DataWarehouse
| view | view to access grid values |
| label | unused since value is already in view |
| material | unused since value is already in view |
| level | fine grid level |
| value | imposed value at boundary |
|
virtualdefault |
Destructor.
|
delete |
Prevent copy (and move) constructor.
|
inline |
First order derivative (parallel direction implementation)
First order derivative along DIR at index id at boundary interface
| DIR | Direction along with derivative is approximated |
| id | unused |
|
inline |
First order derivative (normal direction implementation)
First order derivative along DIR at index id at boundary interface
| DIR | Direction along with derivative is approximated |
| id | index where to evaluate the finite-difference |
|
inline |
Second order derivative (parallel direction implementation)
Second order derivative along DIR at index id at boundary interface
| DIR | Direction along with derivative is approximated |
| id | unused |
|
inline |
Second order derivative (normal direction implementation)
Second order derivative along DIR at index id at boundary interface
| DIR | Direction along with derivative is approximated |
| id | index where to evaluate the finite-difference |
|
inlineoverridevirtual |
get bc view support
we want to extend this to ghost cells/nodes
Implements Uintah::PhaseField::detail::view< ScalarField< T > >.
|
inlineoverridevirtual |
Get base view (Virtual Implementation)
Implements Uintah::PhaseField::detail::basic_fd_view< ScalarField< T >, STN >.
|
inlineoverridevirtual |
Get base view.
Implements Uintah::PhaseField::detail::basic_fd_view< ScalarField< T >, STN >.
|
inlineoverridevirtual |
Check if the view has access to the position with index id.
| id | position index |
Implements Uintah::PhaseField::detail::view< ScalarField< T > >.
|
delete |
Prevent copy (and move) assignment.
|
inlineoverridevirtual |
Get/Modify value at position with index id (modifications are allowed if T is non const)
| id | position index |
Implements Uintah::PhaseField::detail::view< ScalarField< T > >.
|
inlineoverridevirtual |
Get value at position.
| id | position index |
Implements Uintah::PhaseField::detail::view< ScalarField< T > >.
|
inlineoverridevirtual |
Retrieve value from the DataWarehouse for a given patch.
| dw | unused |
| patch | unused |
| use_ghosts | unused |
Implements Uintah::PhaseField::detail::basic_fd_view< ScalarField< T >, STN >.
|
inlineoverridevirtual |
Retrieve value from the DataWarehouse for a given region.
Does not retrieve data since it is not required to enforce boundary conditions (inner view is just referenced here and is already set by bcs_basic_fd_view which owns it. It just set the view support.
| dw | unused |
| level | grid level from which retrieve data |
| low | lower bound of the region to retrieve |
| high | higher bound of the region to retrieve |
| use_ghosts | unused |
Implements Uintah::PhaseField::detail::basic_fd_view< ScalarField< T >, STN >.


Lorem ipsum is a pseudo-Latin text used in web design, typography, layout, and printing in place of English to emphasise design elements over content. It's also called placeholder (or filler) text. It's a convenient tool for mock-ups. It helps to outline the visual elements of a document or presentation, eg typography, font, or layout. Lorem ipsum is mostly a part of a Latin text by the classical author and philosopher Cicero. Its words and letters have been changed by addition or removal, so to deliberately render its content nonsensical; it's not genuine, correct, or comprehensible Latin anymore. While lorem ipsum's still resembles classical Latin, it actually has no meaning whatsoever. As Cicero's text doesn't contain the letters K, W, or Z, alien to latin, these, and others are often inserted randomly to mimic the typographic appearence of European languages, as are digraphs not to be found in the original.
Most of its text is made up from sections 1.10.32–3 of Cicero's De finibus bonorum et malorum (On the Boundaries of Goods and Evils; finibus may also be translated as purposes). Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit is the first known version ("Neither is there anyone who loves grief itself since it is grief and thus wants to obtain it"). It was found by Richard McClintock, a philologist, director of publications at Hampden-Sydney College in Virginia; he searched for citings of consectetur in classical Latin literature, a term of remarkably low frequency in that literary corpus.
But I must explain to you how all this mistaken idea of denouncing pleasure and praising pain was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences, or one who avoids a pain that produces no resultant pleasure?
In 1985 Aldus Corporation launched its first desktop publishing program Aldus PageMaker for Apple Macintosh computers, released in 1987 for PCs running Windows 1.0. Both contained the variant lorem ipsum most common today. Laura Perry, then art director with Aldus, modified prior versions of Lorem Ipsum text from typographical specimens; in the 1960s and 1970s it appeared often in lettering catalogs by Letraset. Anecdotal evidence has it that Letraset used Lorem ipsum already from 1970 onwards, eg. for grids (page layouts) for ad agencies. Many early desktop publishing programs, eg. Adobe PageMaker, used it to create templates.
"On the other hand, we denounce with righteous indignation and dislike men who are so beguiled and demoralized by the charms of pleasure of the moment, so blinded by desire, that they cannot foresee the pain and trouble that are bound to ensue; and equal blame belongs to those who fail in their duty through weakness of will, which is the same as saying through shrinking from toil and pain. These cases are perfectly simple and easy to distinguish. In a free hour, when our power of choice is untrammelled and when nothing prevents our being able to do what we like best, every pleasure is to be welcomed and every pain avoided. But in certain circumstances and owing to the claims of duty or the obligations of business it will frequently occur that pleasures have to be repudiated and annoyances accepted. The wise man therefore always holds in these matters to this principle of selection: he rejects pleasures to secure other greater pleasures, or else he endures pains to avoid worse pains."
"At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio.  Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat."
"But I must explain to you how all this mistaken idea of denouncing pleasure and praising pain was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but because occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences, or one who avoids a pain that produces no resultant pleasure?"
Most text editors like MS Word or Lotus Notes generate random lorem text when needed, either as pre-installed module or plug-in to be added. Word selection or sequence don't necessarily match the original, which is intended to add variety. Presentation software like Keynote or Pages use it as a samples for screenplay layout. Content management software as Joomla!, Drupal, Mambo, PHP-Nuke, WordPress, or Movable Type offer Lorem Ipsum plug-ins with the same functionality.


Find the maximum
问题描述 :
Euler’s Totient function, φ (n) [sometimes called the phi function], is used to determine the number of numbers less than n which are relatively prime to n . For example, as 1, 2, 4, 5, 7, and 8, are all less than nine and relatively prime to nine, φ(9)=6.
HG is the master of X Y. One day HG wants to teachers XY something about Euler’s Totient function by a mathematic game. That is HG gives a positive integer N and XY tells his master the value of 2<=n<=N for which φ(n) is a maximum. Soon HG finds that this seems a little easy for XY who is a primer of Lupus, because XY gives the right answer very fast by a small program. So HG makes some changes. For this time XY will tells him the value of 2<=n<=N for which n/φ(n) is a maximum. This time XY meets some difficult because he has no enough knowledge to solve this problem. Now he needs your help.
HG is the master of X Y. One day HG wants to teachers XY something about Euler’s Totient function by a mathematic game. That is HG gives a positive integer N and XY tells his master the value of 2<=n<=N for which φ(n) is a maximum. Soon HG finds that this seems a little easy for XY who is a primer of Lupus, because XY gives the right answer very fast by a small program. So HG makes some changes. For this time XY will tells him the value of 2<=n<=N for which n/φ(n) is a maximum. This time XY meets some difficult because he has no enough knowledge to solve this problem. Now he needs your help.
输入:
There are T test cases (1<=T<=50000). For each test case, standard input contains a line with 2 ≤ n ≤ 10^100.
输出:
There are T test cases (1<=T<=50000). For each test case, standard input contains a line with 2 ≤ n ≤ 10^100.
样例输入:
2 10 100
样例输出:
6 30HintIf the maximum is achieved more than once, we might pick the smallest such n.
题意：
如题。
解题思路:
打表后不难找出一条规律：要找的那个数总是2*3*5*7*…这样的值，用递推方法求出所有范围内的这些素数积，从中用二分找出符合的数就行了。比赛的时候，小杰用其独藏的C++高精度模版写了个，TLE，然后cxyue用java过掉了。当时我说用二分查找优化下啊，cxyue说才100个数，二分没多大用，后来那天晚上，小杰跟我说他100多ms过掉了，用了二分。不懂java，下面是鄙人对着类库敲出来的AC代码。顺便一说，为什么类成员变量要定义为static呢，因为只有static数据成员才能被static成员函数调用，main函数是static的。
import java.util.*; import java.io.*; import java.math.BigInteger; import java.util.Scanner; public class Main { static final int MAX = 1000; static BigInteger[] Ans = new BigInteger[MAX]; public static void getAns() { boolean[] flag = new boolean[MAX]; int primeNumber = 0; for(int i = 0; i < MAX; ++i) flag[i] = true; Ans[0] = BigInteger.ONE; for(int i = 2; i < MAX; ++i) { if(flag[i]) { ++primeNumber; Ans[primeNumber] = Ans[primeNumber - 1].multiply(BigInteger.valueOf(i));; for(int j = i + i; j < MAX; j += i) { flag[j] = false; } } } } public static BigInteger findAns(BigInteger n) { int left = 1, right = 100, mid; while(left + 1 < right) { mid = (left + right) >> 1; if(Ans[mid].compareTo(n) > 0) right = mid - 1; else left = mid; } return Ans[right].compareTo(n) <= 0 ? Ans[right] : Ans[left]; } public static void main(String[] args) throws IOException { //FileInputStream ios = new FileInputStream("in.txt"); //System.setIn(ios); Scanner cin = new Scanner(System.in); getAns(); int t = cin.nextInt(); while(t-- > 0) { String n = new String(); n = cin.next(); BigInteger bn = new BigInteger(n); System.out.println(findAns(bn).toString()); } } }
参考：http://www.cnblogs.com/Kenfly/archive/2011/09/09/2172422.html
(adsbygoogle = window.adsbygoogle || []).push({});
快快快，占座的来了。
快快快，占座的来了。
快快快，占座的来了。
快快快，占座的来了。
快快快，占座的来了。
快快快，占座的来了。
快快快，占座的来了。
快快快，占座的来了。
快快快，占座的来了。
快快快，占座的来了。
快快快，占座的来了。
正解，应该是200！
很好的思路，可以借鉴
第23行：
hash = -1是否应该改成hash[s ] = -1
因为是要把从字符串s的start位到当前位在hash中重置
修改提交后能accept，但是不修改居然也能accept
为什么不直接用STL排序呢？
第二个是python代码啊。。
这张页面太松散拉，重新编辑一下，弄紧凑一点。
顺利测试通过了，多谢
多谢提醒，是漏掉了
居然看懂了
其实不需要用LCA，用DFS+vector更简单
不考虑最后将结果排序的话，快排的时间复杂度是O(N) ，而堆排的是O(N*logK),这样比较看，快排快
正确性是关键，冲突是都会有的，主要是那种算法冲突的概率低
这个 。。。。不是动态规划吧？
if(j){
int ans=a ;
for(int x=j-1;x>=0;x–){
if(!a ) break;
ans=min(ans,a );
sum+=ans;
}
}
求解释，，dp的思路是什么呢？


[§431:19-101.7] General powers and duties. The administrator shall:
(1) Have the authority expressly conferred upon the administrator by, or reasonably implied from, the provisions of this article; and
(2) Assist the commissioner in the enforcement of this article and rules adopted pursuant to this article and related to captive insurance. [L 1997, c 261, pt of §2]


Stack City is a consultancy specialising in open source technologies. We provide the technical expertise required to turn your business idea into reality.
Our technology experts have decades of experience in delivering systems to banks, hedge funds and energy companies.
We believe that with the careful application of open source technologies, robust systems can be built quickly and simply.
The days of vast technology projects are over. Start-ups and, in fact, most businesses require a quick ROI. Our micro-consulting packages can help you quickly turn your big idea into reality.
If you have a big business idea we can use these focussed consulting sessions to help you specify and design your technology solution. Our experts have many years of experience.
Flexibility is the key. We will work round your project timeline and availability. We have consultants with a deep knowledge including Open Source, Financial Trading, Energy Trading, Data Collection etc.
Our vision is to invest IT expertise into innovative start-up businesses. We believe that partnering with start ups can provide benefits for both parties.
2 hour technical consultancy session starts form as little as £175 + VAT.
We have extensive experience of delivering projects using various open source technologies across the full stack. Which technologies?
We have delivered client projects using HTML, Angularjs, Javascript, Typescript, Reactjs, RxJs.
We have extensive experience in delivering server-side components using Nodejs and Expressjs. Node/ Express and in fact the whole MEAN stack allows us to build fast, scalable server-side components quickly.
NoSQL solutions are not always suitable for all projects, but where they are appropriate, we have the skills to deliver solutions using, for example, Redis or, for more complex data, MongoDb.
We have experience of delivering projects using big-data technologies such as Apache Storm, Kafka and Apache Spark. We've delivered streaming big-data solutions to financial institutions.
We delivered delivered a real-time stream analytics system using Apache Storm as the backbone of the system, with Esper as the rule engine, Nodejs/Express server-side and HTML 5 UI.
Our technical consulting services give access to senior architects who can help you plan, deploy, review, troubleshoot, or optimise your projects.
We have many years experience working and successfully delivering for large financial companies.
We have expertise in developing mission critical trading solutions in Fixed Income, Commodities and Equities, covering cash/ physical and derivative products.
Expertise in delivering and developing solutions in Energy Trading and Risk Management, in-depth knowledge of European energy markets and fundamental Data Management systems.
Whether you're planning to upgrade your platform or are developing a Proof Of Concept (POC) or migrating your existing custom built application to an open Source platform we can help you.
We can provide the perfect resources for any technology project. Development, project management, change management, architects.


WITNESS LIST
Veteran Affairs & Military Installations
March 6, 2013 1:30 PM - or upon adjournment
Hazlewood Act
FOR:
Cunningham, James R. Major (Texas Council of Chapters - Military Officers Association
of America/Texas Coalition of Veterans Organizations), San Antonio, TX
Dresner, Bo Sergeant U.S. Army Retired (Self), San Antonio, TX
Hamlin, Marc President (Student Veterans Association at the University of Texas), Austin,
TX
Heidenheimer, Mark Citizen (Self), McKinney, TX
Jones, Charles Attorney, President Democratic Veterans of Texas (DemVets), San Antonio,
TX
Kupcho, Bob (Veterans Initiative of Texas State University San Marcos), Buda, TX
Lindner, Ray Executive Director (National Guard Association of Texas), Austin, TX
Little, Morgan Chairman (Texas Coalition of Veterans Organizations), Dripping Springs,
TX
McAfee, Dwayne Mr. (Self), Houston, TX
Miterko, John A, Legislative Liaison (Texas Coalition of Veteran Organizations), Austin,
TX
Ponce III, Domitilo (Self; Student Veterans Group, Texas State University), Del Valle, TX
Rickhoff, Liesel Student at The University of Texas School of Law (also providing written
testimony) (Self), Austin, TX
Salazar, Placido Veterans Legislation Liaison (Dr. Hector P. Garcia, American GI Forum,
Org. of Texas), Universal City, TX
Tristan, Sergio Captain (Self), Austin, TX
ON:
Cigarroa, Francisco Chancellor (University of Texas Systems), Austin, TX
Coburn, Rufus Director, Education Program (also providing written testimony) (Texas
Veterans Commission), Austin, TX
Dougherty, Will Staff Sergeant (University of Texas Student Veterans), Austin, TX
Hance, Kent Chancellor (Texas Tech System), Lubbock, TX
Heisinger, Bryan (Self), Austin, TX
Jackson, Lee Chancellor (also providing written testimony) (University of North Texas
System), Dallas, TX
Jude, Prather San Marcos City Councilman, Hays County Veterans Service Officer (Texas
State University Veterans), San Marcos, TX
McCall, Brian Chancellor (The Texas State University System), Austin, TX
Ollar, Stephen Staff Sergeant (Self), Austin, TX
Palladino, Thomas Executive Director (Texas Veterans Commission), Austin, TX
Parades, Raymond Commissioner (Higher Education Coordinating Board), Austin, TX
Sharp, John Chancellor (Texas A&M University Systems), College Station, TX
Silva, Adelina Vice Chancellor (also providing written testimony) (Alamo Colleges), San
Antonio, TX
Stroud, Timothy Veterans Advocate, Member and Alum (Student Veterans of America),
Hutto, TX
WITNESS LIST
Veteran Affairs & Military Installations
March 6, 2013 1:30 PM - or upon adjournment
Weaver, Dan Assistant Commissioner (also providing written testimony) (Texas Higher
Education Coordinating Board), Austin, TX
Yoder, Amy (also providing written testimony) (Self), San Marcos, TX
Registering, but not testifying:
FOR:
Barrientos, Jose Student Veteran Association Member (Self), Dallas, TX
Lord, Fred Junior Vice Commander (Military Order of the Purple Heart #1919), Austin, TX
Lune, Santiago Veterans Initiative at Texas State Intern/ Veteran (Veterans Initiative at
Texas State), San Marcos, TX
Martinez, Jesus SGT TXARNG (Self), Round Rock, TX
McAfee, Desmond Mr. (Self), San Antonio, TX
Nicoletti, Jaime Student Veteran (Self), Round Rock, TX
Shaffer, Dean (Veterans Initiative at Texas State University), San Antonio, TX
ON:
Bush, Jean Sr. ARP Finance-UNT (UNT), Denton, TX
Theobald, Paul Student Veteran (Self), Austin, TX


You are viewing an historical archive of past issues. Please
report new issues to the appropriate project issue tracker on
GitHub.
Comments
-
Greg Hurrell
Done. For notes, see "Updating to Git 1.8.1".
-
Greg Hurrell
Status changed:
- From: new
- To: closed
Add a comment
Comments are now closed for this issue.


The ggf-hover-shadow class adds a shadow effect on hover - this will make any element look like a "ggf-card-4".
Hover over me to display me as a card!


Microsoft SharePoint on the AWS Cloud
Quick Start Reference Deployment
October 2020
AWS Quick Start team
| Visit our GitHub repository for source files and to post feedback, report bugs, or submit feature ideas for this Quick Start. |
This Quick Start was created by Amazon Web Services (AWS). Quick Starts are automated reference deployments that use AWS CloudFormation templates to deploy key technologies on AWS, following AWS best practices.
Overview
This Quick Start reference deployment guide provides step-by-step instructions for deploying SharePoint on the AWS Cloud.
| Amazon may share user-deployment information with the AWS Partner that collaborated with AWS on the Quick Start. |
Microsoft SharePoint on AWS
The AWS Cloud provides a suite of infrastructure services that deploys SharePoint Server 2019 securely, affordably, and with high availability. Running SharePoint Server on the AWS Cloud gives you flexibility and agility, and you can fully customize and extend SharePoint for your business processes.
Cost
You are responsible for the cost of the AWS services used while running this Quick Start. There is no additional cost for using the Quick Start.
The AWS CloudFormation template for this Quick Start includes configuration parameters that you can customize. Some of the settings, such as the instance type, affect the cost of deployment. For cost estimates, see the pricing pages for each AWS service you use. Prices are subject to change.
| After you deploy the Quick Start, enable the AWS Cost and Usage Report to deliver billing metrics to an Amazon Simple Storage Service (Amazon S3) bucket in your account. It provides cost estimates based on usage throughout each month and aggregates the data at the end of the month. For more information about the report, see the AWS documentation. |
Software licenses
This Quick Start requires a license for Microsoft SharePoint 2019. The product key defaults to a trial key, which will allow the environment to run for 180 days. The trial key can be replaced by a purchased key at launch time, or can be updated after the environment has been provisioned.
Architecture
There are a number of ways to design the topology of your SharePoint farm depending on your requirements. In SharePoint 2016, Microsoft added a feature called MinRole, which helped simplify deployment, performance, and reliability of SharePoint farms. This approach is used for the multiple-server AWS CloudFormation template provided by this Quick Start. (The single-server option is deployed as a custom role so that it can run more services on its own.) Both the multiple-server and single-server topologies are covered in detail later in this guide.
Deploying this Quick Start for a new virtual private cloud (VPC) with default parameters builds the following SharePoint environment in the AWS Cloud.
As shown in Figure 1, the Quick Start sets up the following:
-
A highly available architecture that spans two Availability Zones.*
-
A VPC configured with public and private subnets, according to AWS best practices, to provide you with your own virtual network on AWS.*
In the public subnets:
-
Managed network address translation (NAT) gateways to allow outbound internet access for resources in the private subnets.*
-
A Remote Desktop Gateway (RD Gateway) in an Auto Scaling group to allow Remote Desktop Protocol (RDP) access to Amazon Elastic Compute Cloud (Amazon EC2) instances in public and private subnets.*
In the private subnets:
-
An Application Load Balancer for the SharePoint front-end servers.
-
Two Amazon EC2 instances serving as Microsoft SharePoint front-end servers.
-
A Network Load Balancer for the SharePoint application servers.
-
Two Amazon EC2 instances serving as Microsoft SharePoint application servers.
-
Two Amazon EC2 instances serving as Microsoft SQL servers in a highly-available cluster.
-
An Amazon EC2 instance serving as a Windows failover clustering file share witness.
-
Two Amazon EC2 instances serving as Microsoft Active Directory (AD) domain controllers.
*The template that deploys the Quick Start into an existing VPC skips the components marked by asterisks and prompts you for your existing VPC configuration.
The AWS CloudFormation templates provided with this Quick Start deploy the SharePoint servers shown in Figure 1. Active Directory and SQL Server are deployed via their corresponding Quick Starts. See the Deployment Steps section for more details. The template deploys a highly available architecture that includes redundant servers for SharePoint Server 2019 in two Availability Zones.
The following sections describe these components of the architecture in more detail. For more information about the server role architecture, including a detailed discussion of multiple-server and single-server topologies, see Appendix A.
VPC configuration
When deploying a Windows-based architecture on the AWS Cloud, we recommend a VPC configuration that supports the following requirements:
-
Critical workloads should be placed in a minimum of two Availability Zones to provide high availability.
-
Internal application servers and other non-internet facing servers should be placed in private subnets to prevent direct access to these instances from the internet.
-
RD Gateways should be deployed into public subnets in each Availability Zone for remote administration. Other components, such as reverse proxy servers, can also be placed into these public subnets if needed.
For details on the VPC design used in this reference, see the Active Directory Domain Services Quick Start deployment guide.
Based on these best practices, the VPC Quick Start deploys the following base-level VPC framework to support the SharePoint Server 2019 infrastructure:
As shown in Figure 2, NAT gateways are deployed into the public subnets. The public subnets have a route to the internet directly through the internet gateway attached to the VPC.
Instances that will be deployed in the private subnets have no direct route to the internet. Instead, instances in private subnets use private routes to send internet traffic to the NAT gateways in the public subnets. This architecture isolates your critical workloads from direct internet access.
Active Directory Domain Services
To provide user authentication and authorization, the Microsoft SharePoint servers in this reference architecture use Active Directory Domain Services (AD DS). As you deploy your environment, you should place at least one domain controller in a private subnet in each Availability Zone for redundancy and high availability.
Notice that in Figure 3, we’ve now included a domain controller in the AD tier in each Availability Zone.
There are two ways to use AD DS in the AWS Cloud:
-
Cloud only – This is the architecture shown in Figure 3. This type of architecture means that your entire AD forest exists only within the AWS Cloud. With a cloud-only AD DS architecture, there are no on-premises domain controllers.
-
Hybrid – The hybrid architecture takes advantage of your existing AD DS environment. You can extend your private, on-premises network to AWS so the resources in the cloud can utilize your existing AD infrastructure. In a hybrid architecture, we recommend that you also deploy domain controllers for your existing AD forest to the AWS Cloud. We recommend this configuration primarily to help ensure that the application servers deployed in AWS remain functional and available in the event of an on-premises outage.
The Quick Start for Active Directory Domain Services on the AWS Cloud covers our best practices and recommendations for deploying AD DS on AWS. The process outlined in this SharePoint Quick Start asks you to launches the AD DS Quick Start, which deploys the AD environment based on those best practices.
Remote administration
As we design the architecture for a highly available SharePoint farm, we should also design for highly available and secure remote access. We can do this by deploying an RD Gateway in each Availability Zone. In the case of an Availability Zone outage, this architecture allows access to the resources that may have failed over to the other Availability Zone.
The RD Gateway uses the Remote Desktop Protocol (RDP) over HTTPS to establish a secure, encrypted connection between remote administrators on the internet and Windows-based EC2 instances, without needing to configure a virtual private network (VPN) connection. This allows you to reduce the attack surface on your Windows-based instances while providing a remote administration solution for administrators.
The AWS CloudFormation templates provided in this Quick Start automatically deploy the architecture described in Remote Desktop Gateway on the AWS Cloud: Quick Start Reference Deployment. After you have launched your SharePoint infrastructure using a deployment option in this guide, you will initially connect to your instances using a standard RDP TCP port 3389 connection. You can then follow the steps in the guide to secure future connections via HTTPS.
Planning the deployment
Specialized knowledge
This deployment guide requires a moderate level of familiarity with AWS services. If you’re new to AWS, visit the Getting Started Resource Center and the AWS Training and Certification website. These sites provide materials for learning how to design, deploy, and operate your infrastructure and applications on the AWS Cloud.
This Quick Start assumes familiarity with Microsoft SharePoint, Microsoft SQL, and Microsoft Active Directory.
AWS account
If you don’t already have an AWS account, create one at https://aws.amazon.com by following the on-screen instructions. Part of the sign-up process involves receiving a phone call and entering a PIN using the phone keypad.
Your AWS account is automatically signed up for all AWS services. You are charged only for the services you use.
Technical requirements
Before you launch the Quick Start, your account must be configured as specified in the following table. Otherwise, deployment might fail.
Resource limits
If necessary, request service quota increases for the following resources. You might need to request increases if your existing deployment currently uses these resources, and this Quick Start deployment could result in exceeding the default quotas. The Service Quotas console displays your usage and quotas for some aspects of some services. For more information, see the AWS documentation.
| Resource | This deployment uses |
|---|---|
VPCs |
1 |
Elastic IP addresses |
2 |
AWS Identity and Access Management (IAM) security groups |
4 |
IAM roles |
7 |
Auto Scaling groups |
1 |
Application Load Balancers |
1 |
Network Load Balancers |
1 |
EC2 instances |
8 |
Supported Regions
This Quick Start is available in all AWS Regions.
| Certain Regions are available on an opt-in basis. Refer to the AWS Documentation on Managing Regions for more information. |
IAM permissions
Before launching the Quick Start, you must log in to the AWS Management Console with IAM permissions for the resources and actions the templates deploy.
The AdministratorAccess managed policy within IAM provides sufficient permissions, although your organization may choose to use a custom policy with more restrictions.
Download the SharePoint software
To access the SharePoint Server 2019 installation media, you need to place the contents of the SharePoint installation ISO file in a .zip file. When creating this .zip file, you have the option of “slip streaming” additional cumulative updates into the file, which means that these updates will be automatically installed when SharePoint is installed. This can help you deploy SharePoint to a specific update level when it is first installed. The following steps show you how to create the .zip file and upload it to Amazon S3.
-
Download the evaluation edition of SharePoint 2019 from Microsoft Download Center.
—or—
Obtain the ISO file from MSDN, if you have an MSDN account with licenses for server software.
-
Open the ISO file (in Windows, double-click the file to mount the ISO and open it), and copy the contents to a temporary location on your system.
-
(Optional) To include any additional updates, use the slip-streaming option:
-
Download the updates that you want to include.
-
Open a command prompt, and change the current path to the folder where you downloaded the updates.
-
To extract the updates to the updates folder in your installation media temporary folder, run the following command:
-
UpdateFileName.exe /extract:PathToUpdatesFolder
|
In the command,
|
-
Choose all of the files and folders in the directory on your system to which you extracted the installation media, open the context (right-click) menu, and choose Send To, Compressed (zipped) folder. This creates a .zip file of your installation media that can be used for the installation.
-
Sign in to your AWS account and open the Amazon S3 console.
-
Choose Create Bucket.
-
Complete the Create a Bucket dialog box:
-
In the Bucket Name box, enter a globally unique name for the bucket (for example, your account name).
-
In the Region list, select the AWS Region where you plan to launch the Quick Start.
-
Choose Create. The console displays your new bucket in the Buckets pane.
-
-
Choose the new bucket to navigate to it.
-
Choose Upload.
-
In the Upload – Select Files and Folders dialog box, choose Add Files.
-
In the file selection dialog box, browse to the .zip file that you created earlier, and choose Open, Start Upload.
Make a note of the bucket name and the file name that you used for your .zip file. You will use these later when you launch the SharePoint stack.
Configure AWS prerequisites
| This step is not required if you are deploying the SharePoint farm into a new VPC. |
Before launching the SharePoint stack, the following prerequisites should be configured:
-
A VPC with two private subnets where SharePoint will run.
-
A Windows Active Directory server that runs the Domain Name Server (DNS) service.
-
A SQL Server 2016 or 2017 instance (or a highly available instance that has an Always On availability group configured with a listener attached to it).
If you have not already, deploying the Active Directory Domain Services on AWS and SQL Server on AWS Quick Starts will provision these prerequisites. Refer to the Quick Start deployment guides for instructions.
Deployment options
This Quick Start provides three deployment options:
-
Deploy SharePoint into a new VPC (end-to-end deployment). This option builds a new AWS environment consisting of the VPC, subnets, NAT gateways, security groups, RD Gateway, Active Directory, Microsoft SQL, and other infrastructure components. It then deploys SharePoint into this new VPC.
-
Deploy a SharePoint farm into an existing VPC. This option provisions a highly-available SharePoint farm in your existing AWS infrastructure.
-
Deploy a single SharePoint server into an existing VPC. This option provisions a single SharePoint server in your existing AWS infrastructure.
The Quick Start provides separate templates for these options. It also lets you configure Classless Inter-Domain Routing (CIDR) blocks, instance types, and SharePoint settings, as discussed later in this guide.
Deployment steps
Sign in to your AWS account
-
Sign in to your AWS account at https://aws.amazon.com with an IAM user role that has the necessary permissions. For details, see Planning the deployment earlier in this guide.
-
Make sure that your AWS account is configured correctly, as discussed in the Technical requirements section.
Launch the Quick Start
| You are responsible for the cost of the AWS services used while running this Quick Start reference deployment. There is no additional cost for using this Quick Start. For full details, see the pricing pages for each AWS service used by this Quick Start. Prices are subject to change. |
-
Sign in to your AWS account, and choose one of the following options to launch the AWS CloudFormation template. For help with choosing an option, see deployment options earlier in this guide.
Deploy a single SharePoint server into an existing VPC on AWS |
| If you’re deploying SharePoint into an existing VPC, ensure that your VPC has two private subnets in different Availability Zones for the workload instances, and that the subnets aren’t shared. This Quick Start doesn’t support shared subnets. These subnets require NAT gateways in their route tables, to allow the instances to download packages and software without exposing them to the internet. |
Also, ensure that the domain name option in the DHCP options is configured as explained in the Amazon VPC documentation. You provide your VPC settings when you launch the Quick Start.
Each deployment takes about 4 hours to complete.
-
Check the AWS Region that’s displayed in the upper-right corner of the navigation bar, and change it if necessary. This is where the network infrastructure for SharePoint will be built. The template is launched in the us-east-1 Region by default.
-
On the Create stack page, keep the default setting for the template URL, and then choose Next.
-
On the Specify stack details page, change the stack name if needed. Review the parameters for the template. Provide values for the parameters that require input. For all other parameters, review the default settings and customize them as necessary.
In the following tables, parameters are listed by category and described separately for the deployment options. When you finish reviewing and customizing the parameters, choose Next.
Unless you are customizing the Quick Start templates for your own deployment projects, we recommend that you keep the default settings for the parameters labeled Quick Start S3 bucket name , Quick Start S3 bucket
Region , and Quick Start S3 key prefix . Changing these parameter settings automatically updates code references to point to a new Quick Start location. For more information, see the AWS Quick Start Contributor’s Guide.
|
Parameters for deploying a SharePoint farm into an existing VPC
| Parameter label (name) | Default value | Description |
|---|---|---|
Key pair name
( |
|
Public/private key pair that allows you to securely connect to your instance after it launches. |
VPC ID
( |
|
ID of the VPC (e.g., vpc-0343606e). |
VPC CIDR
( |
|
CIDR block for the VPC. |
Private subnet 1 ID
( |
|
ID of the first private subnet into which SharePoint will be deployed (e.g., subnet-a0246dcd). |
Private subnet 2 ID
( |
|
ID of the second private subnet into which SharePoint will be deployed (e.g., subnet-b58c3d67). |
DNS server IP address
( |
|
The IP address of a DNS server on the network that will allow DNS entries to be created as the administrator account. |
| Parameter label (name) | Default value | Description |
|---|---|---|
SharePoint server instance type
( |
|
EC2 instance type for the SharePoint servers. |
Windows Server 2019 full base AMI
( |
|
Windows Server 2019 full base AMI. |
SharePoint server NetBIOS Name
( |
|
NetBIOS name prefix of the SharePoint servers (up to 14 characters). |
| Parameter label (name) | Default value | Description |
|---|---|---|
Domain DNS name
( |
|
Fully qualified domain name (FQDN) of the domain to join. |
Domain NetBIOS name
( |
|
NetBIOS name of the domain to join. |
Administrator user name
( |
|
The user name of an account with rights to the domain, without the domain name. |
Administrator password
( |
|
The password of the Active Directory administrator account. |
Security group ID
( |
|
The ID of the security group that will allow access to the domain controllers for domain join and other actions. |
| Parameter label (name) | Default value | Description |
|---|---|---|
Security group ID
( |
|
The ID of the security group that will allow communication with the server or servers running SQL Server. |
Database server name
( |
|
The name of the server running SQL Server that will store the SharePoint databases. |
SQL Server administrator user name
( |
|
The user name of an account with rights to the server running SQL Server, without the domain name. |
SQL Server administrator password
( |
|
The password of the SQL Server administrator account. |
| Parameter label (name) | Default value | Description |
|---|---|---|
SharePoint binary bucket
( |
|
The name of the S3 bucket that contains your SharePoint binaries. |
SharePoint binary bucket Region
( |
|
The Region in which the SharePoint binary S3 bucket is hosted. |
SharePoint binary key
( |
|
The path (key) to the installer .zip file in the S3 bucket. |
SharePoint product key
( |
|
The product key to use with SharePoint. The default key is for SharePoint 2019 Enterprise Trial. |
Administrator account domain
( |
|
The domain name for the central administrator account, without the domain suffix. (Use 'admin' not 'admin.domain.com'.) |
SharePoint domain
( |
|
The domain name for the main SharePoint site, without the domain suffix. (Use 'site' not 'site.domain.com'.) |
Parameters for deploying a SharePoint farm into a new VPC
| Parameter label (name) | Default value | Description |
|---|---|---|
Key pair name
( |
|
Public/private key pair that allows you to securely connect to your instance after it launches. |
Availability Zones
( |
|
List of Availability Zones to use for the subnets in the VPC. Only two Availability Zones are used for this deployment, and the logical order is preserved. |
Private subnet 1 CIDR
( |
|
CIDR block for the Active Directory Server tier, located in Availability Zone 1. |
Private subnet 2 CIDR
( |
|
CIDR block for the Active Directory Server tier, located in Availability Zone 2. |
Public subnet 1 CIDR
( |
|
CIDR block for the public (DMZ) subnet, located in Availability Zone 1. |
Public subnet 2 CIDR
( |
|
CIDR block for the public (DMZ) subnet, located in Availability Zone 2. |
VPC CIDR
( |
|
CIDR Block for the VPC. |
| Parameter label (name) | Default value | Description |
|---|---|---|
SharePoint binary bucket
( |
|
NO_DESCRIPTION |
SharePoint binary bucket Region
( |
|
The Region in which the SharePoint binary S3 bucket is hosted. |
SharePoint binary key
( |
|
NO_DESCRIPTION |
SharePoint product key
( |
|
The product key to use with SharePoint. |
Farm
( |
|
Choose whether you want to deploy a SharePoint farm or a single SharePoint server. |
SharePoint Server NetBIOS name
( |
|
NetBIOS name (single-server deployment) or name prefix (farm deployment) of the SharePoint server or servers (up to 14 characters). |
DNS name central admin
( |
|
The domain name to use for central administrator, without the domain suffix. (Use 'admin' not 'admin.domain.com'.) |
DNS name main site
( |
|
The domain name to use for the main SharePoint site, without the domain suffix. (Use 'site' not 'site.domain.com'.) |
DNS server IP address
( |
|
The IP address of a DNS server on the network that will allow DNS entries to be created as the administrator account. |
| Parameter label (name) | Default value | Description |
|---|---|---|
Domain controller 1 instance type
( |
|
EC2 instance type for the first Active Directory instance. |
Domain controller 1 NetBIOS name
( |
|
NetBIOS name of the first Active Directory server (up to 15 characters). |
Domain controller 1 private IP address
( |
|
Fixed private IP address for the first Active Directory server located in Availability Zone 1. |
Domain controller 2 instance type
( |
|
Amazon EC2 instance type for the second Active Directory instance. |
Domain controller 2 NetBIOS name
( |
|
NetBIOS name of the second Active Directory server (up to 15 characters). |
Domain controller 2 private IP address
( |
|
Fixed private IP address for the second Active Directory server located in Availability Zone 2. |
Domain administrator user name
( |
|
User name for the account that will be added as domain administrator. (This is separate from the default administrator account.) |
Domain administrator password
( |
|
Password for the domain administrator user. Must be at least 8 characters and contain letters, numbers, and symbols. |
Domain DNS name
( |
|
Fully qualified domain name (FQDN) of the forest root domain. |
Domain NetBIOS name
( |
|
NetBIOS name of the domain (up to 15 characters) for users of earlier versions of Windows. |
| Parameter label (name) | Default value | Description |
|---|---|---|
Version
( |
|
Version of SQL Server to install on WSFC nodes. Choose 2016 or 2017. |
Service account name
( |
|
User name for the SQL Server service account. This account is a domain user. |
Service account password
( |
|
Password for the SQL Server service account. Must be at least 8 characters and contain letters, numbers, and symbols. |
Amazon-provided SQL Server license
( |
|
Choose yes to license SQL Server from AWS Marketplace. Choose no to provide your own license post-deployment. |
Data volume size
( |
|
Volume size for the SQL Data drive, in GiB. |
Data volume type
( |
|
Volume type for the SQL Data drive. |
Data volume IOPS
( |
|
IOPS for the SQL Data drive. (Use only when volume type is io1.) |
Logs volume size
( |
|
Volume size for the SQL Logs drive, in GiB. |
Logs volume type
( |
|
Volume type for the SQL Logs drive. |
Logs volume IOPS
( |
|
IOPS for the SQL Logs drive. (Use only when volume type is io1.) |
TempDB volume size
( |
|
Volume size for the SQL TempDB drive, in GiB. |
TempDB volume type
( |
|
Volume type for the SQL TempDB drive. |
TempDB volume IOPS
( |
|
IOPS for the SQL TempDB drive. (Only used when volume type is io1.) |
Availability group name
( |
|
NetBIOS name of the SQL database or availability group. (Up to 15 characters.) |
| Parameter label (name) | Default value | Description |
|---|---|---|
File server instance type
( |
|
Amazon EC2 instance type for a file server for witness and replication folders. |
File server private IP address
( |
|
Primary private IP for the file server located in Availability Zone 1. |
WSFC node 1 instance type
( |
|
Amazon EC2 instance type for the first WSFC node. |
WSFC node 1 NetBIOS name
( |
|
NetBIOS name of the first WSFC node (up to 15 characters). |
WSFC node 1 private IP address 1
( |
|
Primary private IP address for the first WSFC node, located in Availability Zone 1. |
WSFC node 1 private IP address 2
( |
|
Secondary private IP address for the WSFC cluster, on the first WSFC node. |
WSFC node 1 private IP address 3
( |
|
Third private IP address for the availability group listener, on the first WSFC node. |
WSFC node 2 instance type
( |
|
Amazon EC2 instance type for the second WSFC node. |
WSFC node 2 NetBIOS name
( |
|
NetBIOS name of the second WSFC node. (Up to 15 characters.) |
WSFC node 2 private IP address 1
( |
|
Primary private IP address for the second WSFC node located in Availability Zone 2. |
WSFC node 2 private IP address 2
( |
|
Secondary private IP address for the WSFC cluster on the second WSFC node. |
WSFC Node 2 private IP address 3
( |
|
Third private IP for the availability group listener on the second WSFC node. |
| Parameter label (name) | Default value | Description |
|---|---|---|
Number of RD Gateway hosts
( |
|
The number of RD Gateway hosts to create (up to four). |
Allowed RD Gateway external access CIDR
( |
|
Allowed CIDR block for external access to the RD Gateway hosts. |
RD Gateway server instance type
( |
|
EC2 instance type for the RD Gateway instance. |
| Parameter label (name) | Default value | Description |
|---|---|---|
Quick Start S3 bucket name
( |
|
Amazon S3 bucket name for the Quick Start assets. Quick Start bucket name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-). |
Quick Start S3 bucket Region
( |
|
The AWS Region where the Quick Start S3 bucket (QSS3BucketName) is hosted. When using your own bucket, you must specify this value. |
Quick Start S3 key prefix
( |
|
S3 key prefix for the Quick Start assets. Quick Start key prefix can include numbers, lowercase letters, uppercase letters, hyphens (-), and forward slash (/). |
Parameters for deploying a single SharePoint server into an existing VPC
| Parameter label (name) | Default value | Description |
|---|---|---|
Key-pair name
( |
|
Public/private key pairs allow you to securely connect to your instance after it launches. |
VPC ID
( |
|
ID of the VPC (e.g., vpc-0343606e). |
VPC CIDR
( |
|
CIDR block for the VPC. |
ID of the subnet
( |
|
ID of the private subnet into which SharePoint will be deployed (e.g., subnet-a0246dcd). |
| Parameter label (name) | Default value | Description |
|---|---|---|
SharePoint server instance type
( |
|
Amazon EC2 instance type for the SharePoint server. |
Windows Server 2019 full base AMI
( |
|
The Amazon-provided AMI for Windows Server 2019. If you want to use a different AMI, specify the AWS Systems Manager Parameter Store parameter namespace that provides your AMI ID. |
SharePoint server NetBIOS name
( |
|
NetBIOS name of the SharePoint server (up to 15 characters). |
| Parameter label (name) | Default value | Description |
|---|---|---|
Domain DNS name
( |
|
Fully qualified domain name (FQDN) of the domain to join. |
Domain NetBIOS name
( |
|
NetBIOS name of the domain to join for users of earlier versions of Windows. (Up to 15 characters.) |
Administrator user name
( |
|
The user name of an account with rights to the domain, without the domain name. |
Administrator password
( |
|
The password of the Active Directory administrator account. |
Security group ID
( |
|
The ID of the security group that will allow access to the domain controllers for domain join and other actions. |
| Parameter label (name) | Default value | Description |
|---|---|---|
Security group ID
( |
|
The ID of the security group that will allow communication with the server (or servers) running SQL Server. |
Database server name
( |
|
The name of the server running SQL Server that will store the SharePoint databases. |
SQL Server administrator user name
( |
|
The user name of an account with rights to the server running SQL Server, without the domain name. |
SQL Server administrator password
( |
|
The password of the SQL Server administrator account. |
| Parameter label (name) | Default value | Description |
|---|---|---|
SharePoint binary bucket
( |
|
The name of the S3 bucket that contains your SharePoint binaries. |
SharePoint binary bucket Region
( |
|
The Region in which the SharePoint binary S3 bucket is hosted. |
SharePoint binary key
( |
|
The path (key) to the installer .zip file in the S3 bucket. |
SharePoint product key
( |
|
The product key to use with SharePoint. The default key is for SharePoint 2019 Enterprise trial. |
-
On the options page, you can specify tags (key-value pairs) for resources in your stack and set advanced options. When you’re done, choose Next.
-
On the Review page, review and confirm the template settings. Under Capabilities, select the two check boxes to acknowledge that the template creates IAM resources and might require the ability to automatically expand macros.
-
Choose Create stack to deploy the stack.
-
Monitor the status of the stack. When the status is CREATE_COMPLETE, the SharePoint deployment is ready.
-
Use the values displayed in the Outputs tab for the stack, as shown in Figure 5, to view the created resources.
Post-deployment steps
Create initial content
This step assumes that you deployed a SharePoint farm rather than a single server, and that the server name prefix value was SPServer. In this scenario, we’ll assume that the SharePoint farm is hosting an internal site, and we’ll set up a modern team site to validate our test.
After you have successfully launched the stack, create an RDP connection into the environment through one of the RD Gateway instances. You can retrieve the Elastic IP address for each RD Gateway instance from the Amazon EC2 console.
-
Establish an RDP session to the primary SharePoint server (SPServer1 if you deployed a SharePoint farm with the default parameters, or SP if you deployed a single SharePoint server with the default parameters). From the start menu, select SharePoint 2019 Central Administration. When prompted to run this as an administrator, choose OK for this prompt. A web browser will open to http://spadmin.example.com. When prompted for credentials, use the domain administrator user name and password.
-
On the central administration home page, choose Create site collections.
-
Provide a Title for your site, and then choose the Collaboration tab and select the team site template.
You will also need to define a Primary Site Collection Administrator on this page. You can use the domain administrator account for this value, or any other valid user in the domain. When you finish filling out the form, choose OK.
-
Now that you have created a team site, navigate to http://sharepoint.example.com. When prompted for credentials, enter those of the user you selected as the site collection administrator in the step above. If the site loads, your SharePoint server is now ready for use.
Make the SharePoint databases highly available
| This step is not required if deploying a SharePoint farm into a new VPC. |
Enable full recovery mode
-
Establish an RDP session to the WSFCNODE1 instance. Start SQL Server Management Studio, and then choose Connect to connect to the local server.
-
For the four Search databases, and the Usage database, you will need to enable Full Recovery mode before you can add them to the availability group. In Object Explorer, expand the Databases node.
-
For each database, choose the context (right-click) menu, and then choose Properties. In the Database Properties dialog box, choose the Options page, and then change Recovery Model to Full.
Back up the databases
Next, make a backup of each SharePoint database. They will all share a common prefix that begins with the name of your AWS CloudFormation stack.
-
To make a backup, choose the context (right-click) menu for the database name, choose Tasks, and then choose Back Up.
-
Keep the default settings, and then choose OK to perform the backup.
Add the databases to the availability group
-
In Object Explorer, open the Always On High Availability folder. Then open the Availability Groups folder.
-
Choose Add Database from the availability group’s context menu.
-
Choose all the SharePoint databases to add to the group.
-
Choose Next.
-
Connect to WSFCNODE2 to allow the databases to be added to the availability group there.
-
Choose the Connect button.
-
Choose Next.
-
Choose Automatic seeding to tell SQL Server to automatically copy the databases to the replica.
-
Ensure that the validation checks pass.
-
Choose Next.
-
Choose Finish. The databases are now part of the availability group.
Provide log access to the secondary database server
Now we need to ensure that if there is a failover event, the SharePoint service accounts have access to log in to the secondary database server.
To do this, follow the instructions on the Microsoft How to transfer logins and passwords between instances of SQL Server support page. When you run the generated script against the secondary server, you might see errors for accounts that already exist. This is normal. The script will, however, add the user logins that do not already exist on the secondary server. If you add additional server accounts or users at a later stage, be sure to run this script again to add them to the secondary server.
Enable multiple-subnet failover
Since the SharePoint databases are replicated across subnets, the last step is to tell SharePoint that multiple-subnet failover is required. To enable multiple-subnet failover for the SharePoint databases, on the SPServer1 server, run Windows PowerShell with administrative permissions and execute the following PowerShell code.
Add-PSSnapin Microsoft.SharePoint.PowerShell $dbs = Get-SPDatabase | ?\{$_.MultiSubnetFailover -ne $true} foreach ($db in $dbs) \{ $db.MultiSubnetFailover = $true $db.Update() }
Test automatic failover
After your externally facing SharePoint site is available, you can test automatic failover. On the Amazon EC2 console, stop the first WSFC node, SPServer1, and SPServer3. (You can stop the instances simultaneously, as shown in Figure 16.)
The SharePoint databases should fail over automatically to the second WSFC node. The load balancers should detect that SPServer1 and SPServer3 have gone offline and should direct HTTP traffic to SPServer2 and SPServer4, respectively. You can revisit the site and the central administrator site in your web browser to confirm that everything is still working.
The primary database server should be the first WSFC node. The Network Load Balancer for the back end (central administrator site) distributes HTTP requests across SPServer1 and SPServer2. The Application Load Balancer for the front end distributes HTTP requests across SPServer3 and SPServer4.
Additional resources
Appendix A: Server role architecture
Single-server topology
A single-server deployment of SharePoint 2019 is ideal for development environments and for small-scale testing of SharePoint where multiple servers might be excessive.
In this topology, all SharePoint Service Apps and Instances will execute on the one server though, with no load balancing being required. The database server, however, runs on a different server than SharePoint. This is the simplest way to set up an environment for experimenting with SharePoint.
Multiple-server topology
When you deploy SharePoint to support a production workload that will have many users across the organization, a single-server deployment is not robust enough to account for the load or to maintain availability in the event of an incident. The multiple-server template uses four SharePoint servers in to different roles to distribute the load.
In this model, many of the back-end related activities of a SharePoint farm are handled by a second application server (or group of servers), so that the front-end servers can focus on serving end-user requests. Both sets of SharePoint servers directly communicate with the database server or Always On availability group.
To simplify the configuration of multiple-server farms, SharePoint includes the MinRole feature. MinRole provides pre-defined roles, each of which runs a group of services. This ensures that the SharePoint farm runs more smoothly and is easier to maintain.
The multiple-server topology in this Quick Start leverages the following roles in MinRole:
-
Front end: Front end with distributed cache
-
Application servers: Application with search
This allows an even distribution of services while adhering to the Microsoft best practices for farm topology. For more information on what MinRole is and how it works in detail, including documentation on what services run on each of these roles, see Overview of MinRole Server Roles in SharePoint Servers 2016 and 2019.
With two servers in both roles (to support high availability), the resulting architecture is shown in Figure 19>>.
To ensure the highest levels of availability, the servers are put in to different Availability Zones. This helps ensure that in an event where an entire Availability Zone becomes impaired, the servers in the second Availability Zone will still be running.
Load balancing
The multiple-server version of the Quick Start deploys two load balancers. The first is an Application Load Balancer and is for the front-end servers, which run the main SharePoint web applications. The second is a Network Load Balancer and is for the application servers, where the central administration website runs.
The load balancers direct traffic to a healthy node in the target group. Every 30 seconds, they poll port 80 for an available connection. If a node fails three consecutive checks, the load balancer will not direct any requests to it until it is again registered as healthy.
Database tier
The database server role stores content and service data so that your SharePoint farm can utilize SQL Server in a number of ways. For small or medium-sized environments, you may be able to place all your databases on a single server. For larger-sized farms, you can spread your databases across multiple SQL Server instances or clusters of SQL Server instances. We recommend using SQL Server Enterprise in your SharePoint deployment, as it meets the performance, high availability, and reliability requirements for an enterprise application.
Amazon Machine Images (AMIs) for SQL Server Express, SQL Server Web Edition, and SQL Server Standard are available for launch on AWS. To install SQL Server 2016 or 2017 Enterprise Edition on AWS, you can use Microsoft License Mobility through Software Assurance to bring your own license into the cloud.
In the Quick Start for Microsoft WSFC and SQL Server Always On on AWS, we provide an example of how you can deploy an Always On availability group to provide high availability for your databases. Our default SQL Server configuration uses the r4.2xlarge instance type, which is a memory-optimized instance with 8 virtual CPUs (vCPUs), 61 GiB of memory, and 1 x 100 GiB of SSD instance storage. Additionally, we provide highly performing and durable storage in the form of Amazon Elastic Block Store (Amazon EBS) volumes.
Intranet SharePoint server farm on AWS
The architecture diagrams shown up to this point represent an isolated Microsoft SharePoint farm. For this scenario, users who are in the domain and network where SharePoint is running can access the content, but it is closed off to anyone outside of that domain and network. To allow access for a corporate network, the architecture needs to also include private connectivity from the on-premises environment. Figure 20 shows a typical topology for an intranet SharePoint server farm running on the AWS Cloud.
In Figure 20, we’ve created a VPN tunnel from the customer gateway to the VPN gateway running in the VPC (to enable internal network connectivity to the VPC). The customer gateway is an Internet Protocol Security (IPsec)-capable device.
In addition, AWS offers the AWS Direct Connect service, which allows you to create a direct network connection from your data center into the AWS Cloud. In either case, once you have internal network connectivity into the VPC from your on-premises environment, you can simply provision internal Elastic Load Balancing to spread incoming traffic to front-end servers across each Availability Zone. Elastic Load Balancing will also provide high availability in the event of a server failure. If a web front-end server is unavailable, requests will be sent to one that is online.
Security
As with any enterprise application deployment, a Microsoft SharePoint Server farm on AWS should implement strict security controls. AWS provides a comprehensive set of security features that allow you to control the flow of traffic through your VPC, associated subnets, and ultimately to each Amazon EC2 instance. These features allow you to reduce the attack surface of your environment while providing both end-user access to SharePoint content and applications, and administrator access for securely managing the Windows Server infrastructure. These security features and approaches are covered in this section.
Security groups
When launched, Amazon EC2 instances must be associated with at least one security group, which acts as a stateful firewall. You have complete control over the network traffic entering or leaving your security groups, and you can build granular rules that are scoped by protocol, port number, and source/destination IP address or subnet. By default, all traffic egressing a security group is permitted. Ingress traffic, on the other hand, must be configured to allow the appropriate traffic to reach your instances.
The Securing the Microsoft Platform on Amazon Web Services whitepaper discusses the different methods for securing your AWS infrastructure in detail. Recommendations include providing isolation between application tiers using security groups. We recommend that you tightly control ingress traffic in order to reduce the attack surface of your Amazon EC2 instances.
Network ACLs
A network access control list (ACL) is a set of permissions that can be attached to any network subnet in a VPC to provide stateless filtering of traffic. Network ACLs can be used for inbound or outbound traffic, and provide an effective way to blacklist a CIDR block or individual IP addresses. These ACLs can contain ordered rules to allow or deny traffic based upon IP protocol, service port, or source or destination IP address. Figure 21 shows the default ACL configuration for a VPC subnet.
You can keep the default network ACL configuration or add more specific rules to restrict traffic between subnets at the network level. Typically, network ACLs will mirror your security group rules. One benefit of multiple layers of network security (security groups and network ACLs) is that each layer can be managed by a separate group in your organization. If a server administrator inadvertently exposes unnecessary network ports on a security group, a network administrator could supersede this configuration by blocking that traffic at the network ACL layer.
Secure extranet publishing
Some organizations may use SharePoint Server to host a publicly accessible extranet. In this scenario, you can add another layer of security by placing reverse proxy servers into your public subnet to provide additional security and threat management. In this configuration, the public subnet acts like the DMZ that you would typically use in a physical network environment. Web page requests from internet-based users would be sent to these reverse proxy servers, which would then establish a connection to your web front-end servers that are running in a private subnet.
Figure 22 shows an example of publishing SharePoint web front-end servers, located in a private subnet, through a reverse proxy server deployed into a public subnet.
A benefit of this architecture is that it provides the ability to pre-authenticate users at the perimeter of your network while shielding your internal SharePoint servers from the public internet. Several third-party appliances and applications can be used for this task. Microsoft’s Web Application Proxy role in Windows Server 2019 also provides support for publishing your SharePoint resources to the internet.
The AWS CloudFormation template provided by this Quick Start does not set up an environment for extranet publishing, but after the deployment, you may choose to add reverse proxy servers and configure the environment that’s illustrated in Figure 22.
EC2 instance types
Properly planning for capacity and sizing servers is a key aspect of every enterprise application deployment. As such, it is important that you choose the appropriate Amazon EC2 instance type for each server role in your SharePoint deployment. Since each deployment is different, you will need to follow Microsoft’s detailed guidance on how to properly size your environment based on the number of users and workloads involved. As a starting point, consider the minimum requirements for each server role.
The following values are based on minimum requirements for all server roles operating in a three-tier farm.
| Role | Processor | RAM | Boot volume |
|---|---|---|---|
Web front-end server / front-end server |
64-bit, 4 cores |
12 GiB |
80 GiB |
Application server / batch processing / back end |
64-bit, 4 cores |
12 GiB |
80 GiB |
Database server (fewer than 1,000 users) |
64-bit, 4 cores |
8 GiB |
80 GiB |
Database server (between 1,000 and 10,000 users) |
64-bit, 8 cores |
16 GiB |
80 GiB |
The Quick Start uses the following instance types by default. These provide additional capacity over the absolute minimum requirements as a starting point.
| Role | EC2 instance type | Boot volume |
|---|---|---|
Web front-end server / front-end server |
m4.xlarge (4 vCPU, 16 GiB memory) |
100 GiB (EBS/GP2) |
Application server / batch processing / back end |
m4.xlarge (4 vCPU, 16 GiB memory) |
100 GiB (EBS/GP2) |
Database server |
r4.2xlarge (8 vCPU, 61 GiB memory) |
100 GiB (EBS/GP2) |
Amazon EBS volumes are used as the boot volume for each instance. Notice that we use the EBS General Purpose (gp2) volume type. This is an SSD-backed EBS volume that is used as the default boot volume type for all EC2 instances. These gp2 volumes provide a consistent baseline of 3 IOPS/GiB and are burstable up to 3,000 IOPS.
AWS services
-
AWS CloudFormation
https://aws.amazon.com/documentation/cloudformation/ -
Amazon EC2
https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ -
Amazon VPC
https://aws.amazon.com/documentation/vpc/ -
AWS Systems Manager
https://aws.amazon.com/systems-manager/
Microsoft SharePoint Server
-
Configure SQL Server AlwaysOn Availability Groups for SharePoint Server
https://docs.microsoft.com/en-us/sharepoint/administration/configure-an-alwayson-availability-group -
Failover Clustering and Always On Availability Groups (SQL Server)
https://docs.microsoft.com/en-us/sql/database-engine/availability-groups/windows/failover-clustering-and-always-on-availability-groups-sql-server?view=sql-server-2017
Deploying Microsoft software on AWS
-
Microsoft on AWS
https://aws.amazon.com/microsoft/ -
Securing the Microsoft Platform on Amazon Web Services
https://d1.awsstatic.com/whitepapers/aws-microsoft-platform-security.pdf -
Microsoft Licensing Mobility
https://aws.amazon.com/windows/mslicensemobility/ -
MSDN on AWS
https://aws.amazon.com/windows/msdn/ -
Windows and .NET Developer Center on AWS
https://aws.amazon.com/net/
Quick Start reference deployments
-
AWS Quick Start home page
https://aws.amazon.com/quickstart/ -
Microsoft Active Directory on AWS
https://docs.aws.amazon.com/quickstart/latest/active-directory-ds/ -
Microsoft Remote Desktop Gateway on AWS
https://docs.aws.amazon.com/quickstart/latest/rd-gateway/ -
Microsoft SQL Server with WSFC on AWS
https://docs.aws.amazon.com/quickstart/latest/sql/
FAQ
Q. I encountered a CREATE_FAILED error when I launched the Quick Start.
A. If AWS CloudFormation fails to create the stack, we recommend that you relaunch the template with Rollback on failure set to Disabled. (This setting is under Advanced in the AWS CloudFormation console, Options page.) With this setting, the stack’s state is retained and the instance is left running, so you can troubleshoot the issue. (For Windows, look at the log files in %ProgramFiles%\Amazon\EC2ConfigService and C:\cfn\log.)
| When you set Rollback on failure to Disabled, you continue to incur AWS charges for this stack. Delete the stack when you finish troubleshooting. |
The following table lists specific CREATE_FAILED error messages you might encounter while creating the stack in AWS CloudFormation.
| Error message | Possible cause | What to do |
|---|---|---|
API: ec2: RunInstances Not authorized for images: [ami-<ID>] |
The template is referencing an AMI that has expired. |
We refresh AMIs on a regular basis, but our schedule isn’t always synchronized with AWS AMI updates. If you get this error message, notify us, and we’ll update the template with the new AMI ID. If you’d like to fix the template yourself, you can download it and update the Mappings section with the latest AMI ID for your Region. |
We currently do not have sufficient <instance type> capacity in the AZ you requested |
One of the instance types is currently not available. |
Switch to an instance type that supports higher capacity, or complete the Request quota increase form on the Service Quotas console to increase the Amazon EC2 quota for the instance type or Region. Quota increases are tied to the Region they were requested for. |
Instance <ID> did not stabilize |
You have exceeded your IOPS for the Region. |
Request a quota increase by completing the Request quota increase form on Service Quotas console. |
System Administrator password must contain at least 8 characters |
The master password contains $ or other special characters. |
Check the password parameters before you re-launch the Quick Start. The passwords must be at least 8 characters, consisting of uppercase and lowercase letters and numbers. Follow the guidelines for complex passwords, and avoid using special characters such as @ or $. |
Q. I encountered a size limitation error when I deployed the AWS CloudFormation templates.
A. We recommend that you launch the Quick Start templates from the links in this guide or from another Amazon S3 bucket. If you deploy the templates from a local copy on your computer or from a location other than an Amazon S3 bucket, you might encounter template size limitations. For more information, see AWS CloudFormation quotas.
| For additional information, see Troubleshooting AWS CloudFormation on the AWS website. |
Troubleshooting
If wait condition or resource signal times out, or a failure signal displays, review AWS Systems Manager State Manager to identify non-compliant resources.
-
In the navigation pane, choose Compliance. A compliance resources summary will display.
-
In the Compliance type column, for single-server deployments, look for Custom:QSSPSingle. For multiple-server deployments, look for Custom:QSSPFarmFarm, Custom:QSSPFarmApp, and Custom:QSSPFarmWFE.
-
If a number displays in the in the Non-Compliant resources column for one of these items, choose it. Then, scroll down the page to see a list of instances that do not meet the compliance requirement.
| Non-compliant resources occur when the server could not be configured correctly. |
-
Choose the instance you want to investigate. A new browser tab will open.
-
To see which resources on the server were not configured, do the following:
-
Choose the Configuration compliance tab on the instance detail page.
-
Choose Configuration status in the filter box.
-
Choose NonCompliant.
-
-
To find detailed logs, do the following:
-
On the Associations tab, choose the entry with the AWS-ApplyDSCMofs document name.
-
Choose View Output. Take note of the association ID here, which is needed in the next step.
-
-
On the Systems Manager console, choose State Manager.
-
In the list that is displayed, choose the association ID from step 6 to view its execution history.
-
On the Execution History tab, you can see every configuration run that has been attempted by this Automation document. (State Manager configurations run every 30 minutes.) Choose the first item in the list, and then find the instance ID that was failing in configuration.
-
Choose Output.
-
A new browser tab will open. To view the logs, do the following:
-
Choose Amazon S3
-
Choose the RunPowerShell folder
-
Open the file stdout. This file contains full output of the configuration script including errors.
-
| For additional information, see Troubleshooting AWS CloudFormation. |
Send us feedback
To post feedback, submit feature ideas, or report bugs, use the Issues section of the GitHub repository for this Quick Start. To submit code, please review the Quick Start Contributor’s Guide.
Quick Start reference deployments
See the AWS Quick Start home page.
GitHub repository
You can visit our GitHub repository to download the templates and scripts for this Quick Start, to post your comments, and to share your customizations with others.
© 2020, Amazon Web Services Inc., or its affiliates, and {partner-company-name}. All rights reserved.
Notices
This document is provided for informational purposes only. It represents AWS’s current product offerings and practices as of the date of issue of this document, which are subject to change without notice. Customers are responsible for making their own independent assessment of the information in this document and any use of AWS’s products or services, each of which is provided “as is” without warranty of any kind, whether expressed or implied. This document does not create any warranties, representations, contractual commitments, conditions, or assurances from AWS, its affiliates, suppliers, or licensors. The responsibilities and liabilities of AWS to its customers are controlled by AWS agreements, and this document is not part of, nor does it modify, any agreement between AWS and its customers.
The software included with this paper is licensed under the Apache License, version 2.0 (the "License"). You may not use this file except in compliance with the License. A copy of the License is located at http://aws.amazon.com/apache2.0/ or in the accompanying "license" file. This code is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either expressed or implied. See the License for specific language governing permissions and limitations.


Online Book Buyer
Click any of the images below for more details
Beginning Active Server Pages 3
Professional JavaScript


An Application for Assisting Nurse Schedulers in Vacation/Work Requests
Nurse priority for vacations by FTE and then hours worked or hire date depending on type of nurse.
| Name | Dates | Reason |
No Vacation Requests Submitted.
| Name | Date |
No Work Requests Submitted.
Vacation requests when requested dates overlap between nurses. The nurse with higher priority of the pair is listed first.


As an alumnus or friend of Xavier, you are receiving Communitas, the magazine of the College of Professional Sciences.
This issue explores Xavier's new strategic partnership with TriHealth, which will result in construction of the Health United Building—The HUB—where a new rec center, a new health and wellness center, and several health-related academic programs will be housed by the fall of 2019. Plus you'll find stories about a new undergraduate nursing program for people who want to change careers, and the Montessori Dementia Care program that provides training for retirement communities.
Read Communitas online. We welcome your feedback. Please send comments to professionalsciences@xavier.edu.


Do you want to signup for a free account, or did you forget your login details? {% else %}
Did you forget your login details? {% end %}
Do you want to signup for a free account, or did you forget your login details? {% else %}
Did you forget your login details? {% end %}


|
MiniBot
2019/2020
|
Public Member Functions | |
| def | __init__ (self, imgWidth, imgHeight, cameraServer, frame=None, name='stream') |
| def | start (self) |
| def | show (self) |
| def | stop (self) |
| def | notifyError (self, error) |
Public Attributes | |
| outputStream | |
| frame | |
| stopped | |
Class that continuously shows a frame using a dedicated thread.
| def vision.VideoShow.__init__ | ( | self, | |
| imgWidth, | |||
| imgHeight, | |||
| cameraServer, | |||
frame = None , |
|||
name = 'stream' |
|||
| ) |


Edit your account settings
Share icons solution that allows you share and increase your social popularity.